Histórico da Página
...
A rotina de movimentações múltiplas permite realizar as operações de inclusão e estorno, conforme exemplos abaixo:
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
//------------------------------------------------------------------------ /* 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 Obs: O estorno será realizado por documento ou item conforme pergunte MTA240 configurado para o usuário que executar a rotina automática */ //------------------------------------------------------------------------ #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},;MSExecAuto({|x,y,z| MATA241(x,y,z)},aCab,Nil,6) If lMsErroAuto {"D3_UM",Mostraerro() Endif EndIf "UN", NIL},; {"D3_QUANT", 1, NIL},; {"D3_LOCAL", "01", NIL Return //------------------------------------------------------------------------ /* EXEMPLO DE ESTORNO POR DOCUMENTO */ //------------------------------------------------------------------------ #INCLUDE "RWMAKE.CH" #INCLUDE "TBICONN.CH" User Function TMata241() Local aCab := {} Private lMsErroAuto := .F. PREPARE ENVIRONMENT EMPRESA "99" FILIAL "01" MODULO "EST" dbSelectArea("SD3") dbSetOrder(2) //D3_FILIAL+D3_DOC+D3_COD If dbSeek(xFilial()+"X00002004") aCab := { {"D3_DOC", SD3->D3_DOC, Nil},; {"AUTOESTORN", "DOC", Nil}} MSExecAuto({|x,y,z| MATA241(x,y,z)},aCab,Nil,6) If lMsErroAuto Mostraerro() Endif EndIf Return //------------------------------------------------------------------------ /* EXEMPLO DE ESTORNO POR ITEM */ //------------------------------------------------------------------------ #INCLUDE "RWMAKE.CH" #INCLUDE "TBICONN.CH" User Function TMata241() Local aCab := {} Private lMsErroAuto := .F. PREPARE ENVIRONMENT EMPRESA "99" FILIAL "01" MODULO "EST" dbSelectArea("SD3") dbSetOrder(4) //D3_FILIAL+D3_NUMSEQ+D3_CHAVE+D3_COD If dbSeek(xFilial()+"144908") aCab := { {"D3_DOC", SD3->D3_DOC, Nil},; {"D3_ESTORNOAUTOESTORN", "SITEM", NILNil}} MSExecAuto({|x,y,z| MATA241(x,y,z)},aCab,{aItem}Nil,6) If lMsErroAuto Mostraerro() Endif EndIf Return |
...
Visão Geral
Import HTML Content
Conteúdo das Ferramentas