O objetivo da rotina MATA241 - Movimentos Internos Modelo 2 é agilizar a operação de digitação dos movimentos a serem realizados. Na grande maioria dos casos estes movimentos pertencem a um mesmo contexto (ex: baixa de insumos para uma ordem de produção, baixa de material de consumo para uma solicitação ao armazém) e assim estão relacionados ao mesmo centro de custo. Por este motivo esta rotina apresenta este formulário neste modelo, com o centro de custo único para todos os movimentos.
A rotina de movimentações múltiplas permite realizar as operações de inclusão e estorno, conforme exemplos abaixo:
//------------------------------------------------------------------------ /* EXEMPLO DE INCLUSÃO */ //------------------------------------------------------------------------ #INCLUDE "RWMAKE.CH" #INCLUDE "TBICONN.CH" User Function TMATA241() Local _aCab1 := {} Local _aItem := {} Local _atotitem := {} Local cCodigoTM := "503" Local cCodProd := "PRODUTO " Local cUnid := "PC " Private lMsHelpAuto := .T. Private lMsErroAuto := .F. //Private _acod := {"1","MP1"} PREPARE ENVIRONMENT EMPRESA "99" FILIAL "01" MODULO "EST" _aCab1 := {{"D3_DOC" ,NextNumero("SD3",2,"D3_DOC",.T.), NIL},; {"D3_TM" ,cCodigoTM , NIL},; {"D3_CC" ," ", NIL},; {"D3_EMISSAO" ,ddatabase, NIL}} _aItem:={{"D3_COD" ,cCodProd ,NIL},; {"D3_UM" ,cUnid ,NIL},; {"D3_QUANT" ,1 ,NIL},; {"D3_LOCAL" ,"01" ,NIL},; {"D3_LOTECTL" ,"",NIL},; {"D3_LOCALIZ" , "ENDEREÇO ",NIL}} aadd(_atotitem,_aitem) MSExecAuto({|x,y,z| MATA241(x,y,z)},_aCab1,_atotitem,3) If lMsErroAuto Mostraerro() DisarmTransaction() break EndIf Return //------------------------------------------------------------------------ /* EXEMPLO DE ESTORNO */ //------------------------------------------------------------------------ #INCLUDE "RWMAKE.CH" #INCLUDE "TBICONN.CH" User Function TMata241() Local aCab := {} Local aItem := {} Private lMsErroAuto := .F. PREPARE ENVIRONMENT EMPRESA "99" FILIAL "01" MODULO "EST" dbSelectArea("SD3") dbSetOrder(2) If dbSeek(xFilial()+"X00002004") aCab := { {"D3_DOC" ,SD3->D3_DOC,Nil}} aItem := {{"D3_COD", "2", NIL},; {"D3_UM", "UN", NIL},; {"D3_QUANT", 1, NIL},; {"D3_LOCAL", "01", NIL},; {"D3_ESTORNO", "S", NIL}} MSExecAuto({|x,y,z| MATA241(x,y,z)},aCab,{aItem},6) If lMsErroAuto Mostraerro() Endif EndIf Return |
Na página principal da rotina, estão disponíveis as seguintes opções:
Ação | Descrição |
---|---|
Inclua a ação | Inclua a descrição relacionada |
Inclua a ação | Inclua a descrição relacionada |
Inclua a ação | Inclua a descrição relacionada |
Principais Campos e Parâmetros
Campo | Descrição |
---|---|
Inclua o campo | Inclua a descrição relacionada |
Inclua o campo | Inclua a descrição relacionada |
Inclua o campo | Inclua a descrição relacionada |
<!-- esconder o menu --> <style> div.theme-default .ia-splitter #main { margin-left: 0px; } .ia-fixed-sidebar, .ia-splitter-left { display: none; } #main { padding-left: 10px; padding-right: 10px; overflow-x: hidden; } .aui-header-primary .aui-nav, .aui-page-panel { margin-left: 0px !important; } .aui-header-primary .aui-nav { margin-left: 0px !important; } </style> |