Passo a passo: | //DOCUMENTO TIPO NORMAL #Include "Protheus.ch" #Include "RwMake.ch" #Include "TbiConn.ch" User Function EXEC103() Local aCab := {} Local aItem := {} Local aItens := {} Local aAutoImp := {} Local aItensRat := {} Local aCodRet := {} Local aParamAux := {} Local nOpc := 3 Local cNum := "" Local nI := 0 Local nX := 0 Local nReg := 1 Conout("Inicio: " + Time()) Private lMsErroAuto := .F. Private lMsHelpAuto := .T. PREPARE ENVIRONMENT EMPRESA "32" FILIAL "6597" MODULO "COM" FUNNAME "MATA103" cNum := GetSxeNum("SF1","F1_DOC") SF1->(dbSetOrder(1)) While SF1->(dbSeek(xFilial("SF1")+cNum)) ConfirmSX8() cNum := GetSxeNum("SF1","F1_DOC") EndDo //Cabeçalho aadd(aCab,{"F1_TIPO" ,"N" ,NIL}) aadd(aCab,{"F1_FORMUL" ,"N" ,NIL}) aadd(aCab,{"F1_DOC" ,cNum ,NIL}) aadd(aCab,{"F1_SERIE" ,"1 " ,NIL}) aadd(aCab,{"F1_EMISSAO" ,DDATABASE ,NIL}) aadd(aCab,{"F1_DTDIGIT" ,DDATABASE ,NIL}) aadd(aCab,{"F1_FORNECE" ,"001 " ,NIL}) aadd(aCab,{"F1_LOJA" ,"01" ,NIL}) aadd(aCab,{"F1_ESPECIE" ,"CTE" ,NIL}) aadd(aCab,{"F1_COND" ,"001" ,NIL}) aadd(aCab,{"F1_DESPESA" ,10 ,NIL}) aadd(aCab,{"F1_DESCONT" , 0 ,Nil}) aadd(aCab,{"F1_SEGURO" , 0 ,Nil}) aadd(aCab,{"F1_FRETE" , 0 ,Nil}) aadd(aCab,{"F1_MOEDA" , 1 ,Nil}) aadd(aCab,{"F1_TXMOEDA" , 1 ,Nil}) aadd(aCab,{"F1_STATUS" , "A" ,Nil}) //Itens For nX := 1 To 1 aItem := {} aadd(aItem,{"D1_ITEM" ,StrZero(nX,4) ,NIL}) aadd(aItem,{"D1_COD" ,PadR("0001",TamSx3("D1_COD")[1]) ,NIL}) aadd(aItem,{"D1_UM" ,"UN" ,NIL}) aadd(aItem,{"D1_LOCAL" ,"01" ,NIL}) aadd(aItem,{"D1_QUANT" ,1 ,NIL}) aadd(aItem,{"D1_VUNIT" ,7508.33 ,NIL}) aadd(aItem,{"D1_TOTAL" ,7508.33 ,NIL}) aadd(aItem,{"D1_TES" ,"001" ,NIL}) aadd(aItem,{"D1_RATEIO" ,"1" ,NIL}) if(nOpc == 4)//Se for classificação deve informar a variável LINPOS aAdd(aItem, {"LINPOS" , "D1_ITEM", StrZero(nX,4)}) //ou SD1->D1_ITEM se estiver posicionado. endIf aAdd(aItens,aItem) Next nX
//Rateio de Centro de Custo aItem := {} aAdd(aItensRat, Array(2)) aItensRat[Len(aItensRat)][1] := "0001" aItensRat[Len(aItensRat)][2] := {} aAdd(aItem, {"DE_FILIAL" , xFilial("SDE") , Nil}) aAdd(aItem, {"DE_ITEM" , StrZero(1,TamSx3("DE_ITEM")[1]) , Nil}) aAdd(aItem, {"DE_DOC" , cNum , Nil}) aAdd(aItem, {"DE_SERIE" , "1" , Nil}) aAdd(aItem, {"DE_FORNECE" , "001 " , Nil}) aAdd(aItem, {"DE_LOJA" , "01" , Nil}) aAdd(aItem, {"DE_ITEMNF" , "0001" , Nil}) aAdd(aItem, {"DE_PERC" , 100 , Nil}) aAdd(aItem, {"DE_CC" , "01" , Nil}) aAdd(aItensRat[Len(aItensRat)][2], aClone(aItem)) //Array contendo a informação se gera DIRF e os códigos de retenção por imposto aAdd( aCodRet, {01, "0297", 1, "..."} ) aAdd( aCodRet, {02, "0297", 1, "IRR"} ) aAdd( aCodRet, {03, "5979", 1, "PIS"} ) aAdd( aCodRet, {04, "5960", 1, "COF"} ) aAdd( aCodRet, {05, "5987", 1, "CSL"} )
// Exemplo para manipular o pergunte MTA103 aAdd(aParamAux, {"MV_PAR01", 2}) //-- Mostra Lanc. Contabil? 1 = Sim, 2 = Não aAdd(aParamAux, {"MV_PAR06", 1}) //-- Contabilizacao Online? 1 = Sim, 2 = Não
//3-Inclusão / 4-Classificação / 5-Exclusão MSExecAuto({|x,y,z,k,a,b| MATA103(x,y,z,,,,k,a,,,b)},aCab,aItens,nOpc,aParamAux,aItensRat,aCodRet) If !lMsErroAuto ConOut(" Incluido NF: " + cNum) Else MostraErro() ConOut("Erro na inclusao!") EndIf ConOut("Fim: " + Time()) RESET ENVIRONMENT Return Por favor consultar a seção observações.
//DOCUMENTO TIPO COMPLEMENTO #Include "Protheus.ch" #Include "RwMake.ch" #Include "TbiConn.ch" User Function EXEC103() Local aCab := {} Local aItem := {} Local aItens := {} Local nOpc := 3 Local cNum := "" Local nI := 0 Local nX := 0 Conout("Inicio: " + Time()) Private lMsErroAuto := .F. Private lMsHelpAuto := .T. PREPARE ENVIRONMENT EMPRESA "32" FILIAL "6597" MODULO "COM" FUNNAME "MATA103" cNum := GetSxeNum("SF1","F1_DOC") SF1->(dbSetOrder(1)) While SF1->(dbSeek(xFilial("SF1")+cNum)) ConfirmSX8() cNum := GetSxeNum("SF1","F1_DOC") EndDo //Cabeçalho aadd(aCab,{"F1_TIPO" ,"C" ,NIL}) aadd(aCab,{"F1_TPCOMPL" ,"3" ,NIL}) aadd(aCab,{"F1_DOC" ,cNum ,NIL}) aadd(aCab,{"F1_SERIE" ,"1 " ,NIL}) aadd(aCab,{"F1_FORNECE" ,"001 " ,NIL}) aadd(aCab,{"F1_LOJA" ,"01" ,NIL}) aadd(aCab,{"F1_EMISSAO" ,DDATABASE ,NIL}) aadd(aCab,{"F1_DTDIGIT" ,DDATABASE ,NIL}) aadd(aCab,{"F1_FORMUL" ,"N" ,NIL}) aadd(aCab,{"F1_ESPECIE" ,"CTE" ,NIL}) aadd(aCab,{"F1_COND" ,"001" ,NIL}) aadd(aCab,{"F1_MODAL" ,"01" ,NIL}) aadd(aCab,{"F1_TPFRETE" ,"C" ,NIL}) aadd(aCab,{"F1_TPCTE" ,"N" ,NIL}) aadd(aCab,{"F1_EST" ,"SP" ,NIL}) aadd(aCab,{"F1_DESCONT" , 0 , Nil}) aadd(aCab,{"F1_SEGURO" , 0 , Nil}) aadd(aCab,{"F1_FRETE" , 0 , Nil}) aadd(aCab,{"F1_MOEDA" , 1 , Nil}) aadd(aCab,{"F1_TXMOEDA" , 1 , Nil}) aadd(aCab,{"F1_STATUS" , "A" , Nil}) //Itens For nX := 1 To 1 aItem := {} aadd(aItem,{"D1_ITEM" ,StrZero(nX,4) ,NIL}) aadd(aItem,{"D1_COD" ,PadR("0001",TamSx3("D1_COD")[1]) ,NIL}) aadd(aItem,{"D1_UM" ,"UN" ,NIL}) aadd(aItem,{"D1_LOCAL" ,"01" ,NIL}) aadd(aItem,{"D1_VUNIT" ,1000 ,NIL}) aadd(aItem,{"D1_TOTAL" ,1000 ,NIL}) aadd(aItem,{"D1_TES" ,"001" ,NIL}) aadd(aItem,{"D1_NFORI" ,"000009015" ,NIL}) aadd(aItem,{"D1_SERIORI" ,"1 " ,NIL}) aadd(aItem,{"D1_ITEMORI" ,"0001" ,NIL}) aAdd(aItens,aItem) Next nX
//Impostos (Informar a referência do imposto, que consta no valid do campo) //Para impostos de cabeçalho informar: referência, valor aAutoImp := { {"NF_FRETE" , 10},; {"NF_VALIPI", 15},; {"NF_VALICM",7}} //Para impostos de Itens informar: referência, valor, número da linha aAdd(aAutoImp, {'IT_BASEICM', 100, 1}) //Base aAdd(aAutoImp, {'IT_ALIQICM',12, 1}) //Porcentagem Imposto aAdd(aAutoImp, {'IT_VALICM', 12, 1}) //Valor imposto
//3-Inclusão / 4-Classificação / 5-Exclusão MSExecAuto({|x,y,z,a,b| MATA103(x,y,z,,a,,,,,)},aCabec,aItens,3,aAutoImp) If !lMsErroAuto ConOut(" Incluido NF: " + cNum) Else MostraErro() ConOut("Erro na inclusao!") EndIf ConOut("Fim: " + Time()) RESET ENVIRONMENT Return Por favor consultar a seção observações.
//DOCUMENTO TIPO NORMAL VINCULADO AO PEDIDO DE COMPRAS #Include "Protheus.ch" #Include "RwMake.ch" #Include "TbiConn.ch" User Function EXEC103() Local aCab := {} Local aItem := {} Local aItens := {} Local aAutoImp := {} Local aItensRat := {} Local aCodRet := {} Local aParamAux := {} Local nOpc := 3 Local cNum := "" Local nI := 0 Local nX := 0 Local nReg := 1 Conout("Inicio: " + Time()) Private lMsErroAuto := .F. Private lMsHelpAuto := .T. PREPARE ENVIRONMENT EMPRESA "32" FILIAL "6597" MODULO "COM" FUNNAME "MATA103" cNum := GetSxeNum("SF1","F1_DOC") SF1->(dbSetOrder(1)) While SF1->(dbSeek(xFilial("SF1")+cNum)) ConfirmSX8() cNum := GetSxeNum("SF1","F1_DOC") EndDo //Cabeçalho aadd(aCab,{"F1_TIPO" ,"N" ,NIL}) aadd(aCab,{"F1_FORMUL" ,"N" ,NIL}) aadd(aCab,{"F1_DOC" ,cNum ,NIL}) aadd(aCab,{"F1_SERIE" ,"1 " ,NIL}) aadd(aCab,{"F1_EMISSAO" ,DDATABASE ,NIL}) aadd(aCab,{"F1_DTDIGIT" ,DDATABASE ,NIL}) aadd(aCab,{"F1_FORNECE" ,"001 " ,NIL}) aadd(aCab,{"F1_LOJA" ,"01" ,NIL}) aadd(aCab,{"F1_ESPECIE" ,"CTE" ,NIL}) aadd(aCab,{"F1_COND" ,"001" ,NIL}) aadd(aCab,{"F1_DESPESA" ,10 ,NIL}) aadd(aCab,{"F1_DESCONT" , 0 ,Nil}) aadd(aCab,{"F1_SEGURO" , 0 ,Nil}) aadd(aCab,{"F1_FRETE" , 0 ,Nil}) aadd(aCab,{"F1_MOEDA" , 1 ,Nil}) aadd(aCab,{"F1_TXMOEDA" , 1 ,Nil}) aadd(aCab,{"F1_STATUS" , "A" ,Nil}) //Itens For nX := 1 To 1 aItem := {} aadd(aItem,{"D1_ITEM" ,StrZero(nX,4) ,NIL}) aadd(aItem,{"D1_COD" ,PadR("0001",TamSx3("D1_COD")[1]) ,NIL}) aadd(aItem,{"D1_UM" ,"UN" ,NIL}) aadd(aItem,{"D1_LOCAL" ,"01" ,NIL}) aadd(aItem,{"D1_QUANT" ,1 ,NIL}) aadd(aItem,{"D1_VUNIT" ,7508.33 ,NIL}) aadd(aItem,{"D1_TOTAL" ,7508.33 ,NIL}) aadd(aItem,{"D1_TES" ,"001" ,NIL}) aadd(aItens,aItem) aadd(aItens[Len(aItens)], {'D1_PEDIDO ', '000034' ,}) // Número do Pedido de Compras aadd(aItens[Len(aItens)], {'D1_ITEMPC ', '0001' ,}) // Item do Pedido de Compras if(nOpc == 4)//Se for classificação deve informar a variável LINPOS aAdd(aItem, {"LINPOS" , "D1_ITEM", StrZero(nX,4)}) //ou SD1->D1_ITEM se estiver posicionado. endIf Next nX //3-Inclusão / 4-Classificação / 5-Exclusão MSExecAuto({|x,y,z,k,a,b| MATA103(x,y,z,,,,k,a,,,b)},aCab,aItens,nOpc,aParamAux,aItensRat,aCodRet) If !lMsErroAuto ConOut(" Incluido NF: " + cNum) Else MostraErro() ConOut("Erro na inclusao!") EndIf ConOut("Fim: " + Time()) RESET ENVIRONMENT Return Por favor consultar a seção observações.
//DOCUMENTO TIPO DEVOLUÇÃO #Include "Protheus.ch" #Include "RwMake.ch" #Include "TbiConn.ch" User Function EXEC103() Local aCab := {} Local aItem := {} Local aItens := {} Local nOpc := 3 Local cNum := "" Local nI := 0 Local nX := 0 Conout("Inicio: " + Time()) Private lMsErroAuto := .F. Private lMsHelpAuto := .T. PREPARE ENVIRONMENT EMPRESA "32" FILIAL "6597" MODULO "COM" FUNNAME "MATA103" cNum := GetSxeNum("SF1","F1_DOC") SF1->(dbSetOrder(1)) While SF1->(dbSeek(xFilial("SF1")+cNum)) ConfirmSX8() cNum := GetSxeNum("SF1","F1_DOC") EndDo //Cabeçalho aadd(aCab,{"F1_TIPO" ,"D" ,NIL}) aadd(aCab,{"F1_DOC" ,cNum ,NIL}) aadd(aCab,{"F1_SERIE" ,"1 " ,NIL}) aadd(aCab,{"F1_FORNECE" ,"001 " ,NIL}) aadd(aCab,{"F1_LOJA" ,"01" ,NIL}) aadd(aCab,{"F1_EMISSAO" ,DDATABASE ,NIL}) aadd(aCab,{"F1_DTDIGIT" ,DDATABASE ,NIL}) aadd(aCab,{"F1_FORMUL" ,"N" ,NIL}) aadd(aCab,{"F1_ESPECIE" ,"NFE" ,NIL}) aadd(aCab,{"F1_COND" ,"001" ,NIL}) aadd(aCab,{"F1_EST" ,"SP" ,NIL}) aadd(aCab,{"F1_DESCONT" , 0 , Nil}) aadd(aCab,{"F1_SEGURO" , 0 , Nil}) aadd(aCab,{"F1_FRETE" , 0 , Nil}) aadd(aCab,{"F1_MOEDA" , 1 , Nil}) aadd(aCab,{"F1_TXMOEDA" , 1 , Nil}) aadd(aCab,{"F1_STATUS" , "A" , Nil}) //Itens For nX := 1 To 1 aItem := {} aadd(aItem,{"D1_ITEM" ,StrZero(nX,4) ,NIL}) aadd(aItem,{"D1_COD" ,PadR("0001",TamSx3("D1_COD")[1]) ,NIL}) aadd(aItem,{"D1_UM" ,"UN" ,NIL}) aadd(aItem,{"D1_LOCAL" ,"01" ,NIL}) aadd(aItem,{"D1_LOTECTL" ,"123456" ,NIL}) //Caso produto possua lote, informar o numero. aadd(aItem,{"D1_QUANT" ,1 ,NIL}) aadd(aItem,{"D1_VUNIT" ,1000 ,NIL}) aadd(aItem,{"D1_TOTAL" ,1000 ,NIL}) aadd(aItem,{"D1_TES" ,"001" ,NIL}) aadd(aItem,{"D1_NFORI" ,"000009015" ,NIL}) aadd(aItem,{"D1_SERIORI" ,"1 " ,NIL}) aadd(aItem,{"D1_ITEMORI" ,"0001" ,NIL}) aAdd(aItens,aItem) Next nX
//3-Inclusão / 4-Classificação / 5-Exclusão MSExecAuto({|x,y,z| MATA103(x,y,z)},aCab,aItens,nOpc) If !lMsErroAuto ConOut(" Incluido NF: " + cNum) Else MostraErro() ConOut("Erro na inclusao!") EndIf ConOut("Fim: " + Time()) RESET ENVIRONMENT Return Por favor consultar a seção observações.
//DOCUMENTO VINCULAR (SDH) #Include "Protheus.ch" #Include "RwMake.ch" #Include "TbiConn.ch" User Function EXECSDH() Local aDadosVin := {} Local cDocOri := "000130 " Local cSerOri := "1 " Local cForn := "001 " Local cLoja := "01" Local cProduto := "0001" Local cSeqOri := "" Local cNumSeq := "" Local cDocDef := "200001 " Local cSerDef := "1 " Local cDHOper := "1" Local cCodCli := "" Local cLojaCli := "" Local cTES := "001" Local nQuantidad:= 2 Local nOpcX := 2 //2-Inclui / 3-Exclui Local nRecno := 0
Private lMsErroAuto := .F.
PREPARE ENVIRONMENT EMPRESA "01" FILIAL "1001" MODULO "COM" FUNNAME "MATA103"
cDocOri := Padr(cDocOri,TamSX3("DH_DOC")[1]) cSerOri := Padr(cSerOri,TamSX3("DH_SERIE")[1]) cForn := Padr(cForn,TamSX3("DH_FORNECE")[1]) cLoja := Padr(cLoja,TamSX3("DH_LOJAFOR")[1]) cProduto := Padr(cProduto,TamSX3("DH_PRODUTO")[1]) cSeqOri := Padr("0001",TamSX3("DH_ITEM")[1]) cDocDef := Padr(cDocDef,TamSX3("DH_DOC")[1]) cSerDef := Padr(cSerDef,TamSX3("DH_SERIE")[1])
DbSelectArea("SD1") SD1->(DbSetOrder(1)) If SD1->(DbSeek(xFilial("SD1") + cDocOri + cSerOri + cForn + cLoja + cProduto + cSeqOri)) cNumSeq := SD1->D1_NUMSEQ
If nOpcx == 3 //Exclusao DbSelectArea("SDH") SDH->(DbSetOrder(1)) If SDH->(DbSeek(xFilial("SDH") + cNumSeq)) nRecno := SDH->(Recno()) Endif Endif
aAdd(aDadosVin,{'DH_DOC' , cDocDef , Nil}) aAdd(aDadosVin,{'DH_SERIE' , cSerDef , Nil}) aAdd(aDadosVin,{'DH_TES' , cTES , Nil}) aAdd(aDadosVin,{'DH_FORNECE' , Padr(cForn,TamSX3("DH_FORNECE")[1]) , Nil}) aAdd(aDadosVin,{'DH_LOJAFOR' , Padr(cLoja,TamSX3("DH_LOJAFOR")[1]) , Nil}) aAdd(aDadosVin,{'DH_PRODUTO' , Padr(cProduto,TamSX3("DH_PRODUTO")[1]) , Nil}) aAdd(aDadosVin,{'DH_ITEM' , cSeqOri , Nil}) aAdd(aDadosVin,{'DH_IDENTNF' , Padr(cNumSeq,TamSX3("DH_IDENTNF")[1]) , Nil}) aAdd(aDadosVin,{'DH_TPMOV' , Padr('1',TamSX3("DH_TPMOV")[1]) , Nil}) aadd(aDadosVin,{'DH_OPER' , Padr( cDHOper, TamSX3("DH_OPER")[1] ) , Nil}) aAdd(aDadosVin,{'DH_CLIENTE' , cCodCli , Nil}) aAdd(aDadosVin,{'DH_LOJACLI' , cLojaCli , Nil}) aAdd(aDadosVin,{'DH_QUANT' , nQuantidad , Nil}) aAdd(aDadosVin,{'DH_ITEMCOB' , StrZero(1,TamSX3("DH_ITEMCOB")[1]), Nil}) If nOpcx == 3 //Exclusão aAdd(aDadosVin,{'DH_REC_WT' , nRecno, Nil}) Endif
MSExecAuto({|a,b,c,d,e| NfeDocVin(a,b,c,d,e)},,,nOpcx,,aDadosVin)
If lMsErroAuto MostraErro() Else Conout("Inserido Vinculo: " + cDocDef) Endif Endif
RESET ENVIRONMENT
Return Por favor consultar a seção observações.
//DOCUMENTO COBERTURA #Include "Protheus.ch" #Include "RwMake.ch" #Include "TbiConn.ch" #Include "Coverege.ch"
User Function EXECCOB() Local cDocDef := "200001 " Local cSerDef := "1 " Local cForn := "001 " Local cLoja := "01" Local cProduto := "0001" Local nQuantidad:= 2 Local cDocOri := "000130 " Local cSerOri := "1 " Local cSeqOri := "" Local cTpMov := "1" Local cCodCli := "" Local cLojCli := "" Local cDHOper := "1" Local aCab103 := {} Local aDadosCob := {} Local cTes := "001" Local nOpcX := 3 //3-Inclui / 5-Exclui
Private lMsErroAuto := .F.
PREPARE ENVIRONMENT EMPRESA "01" FILIAL "1001" MODULO "COM" FUNNAME "MATA103"
cDocDef := Padr(cDocDef,TamSX3("DH_DOC")[1]) cSerDef := Padr(cSerDef,TamSX3("DH_SERIE")[1]) cForn := Padr(cForn,TamSX3("DH_FORNECE")[1]) cLoja := Padr(cLoja,TamSX3("DH_LOJAFOR")[1]) cProduto := Padr(cProduto,TamSX3("DH_PRODUTO")[1])
cDocOri := Padr(cDocOri,TamSX3("DH_DOC")[1]) cSerOri := Padr(cSerOri,TamSX3("DH_SERIE")[1]) cSeqOri := Padr("0001",TamSX3("DH_ITEM")[1]) cCodCli := Padr(cCodCli,TamSX3("DH_CLIENTE")[1]) cLojCli := Padr(cLojCli,TamSX3("DH_LOJACLI")[1]) cTpMov := Padr('1',TamSX3("DH_TPMOV")[1]) cDHOper := Padr( cDHOper, TamSX3("DH_OPER")[1] )
DbSelectArea("SDH") SDH->(DbSetOrder(2)) If SDH->(DbSeek(xFilial('SDH')+cTpMov+cSerDef+cDocDef+cSeqOri+cCodCli+cLojCli+cForn+cLoja+cDHOper)) aAdd(aCab103,{"F1_DOC" , cDocDef , Nil}) aAdd(aCab103,{"F1_SERIE" , cSerDef , Nil}) aAdd(aCab103,{"F1_TIPO" , "N" , Nil}) aAdd(aCab103,{"F1_FORNECE", cForn , Nil}) aAdd(aCab103,{"F1_LOJA" , cLoja , Nil}) aAdd(aCab103,{"F1_EMISSAO", dDataBase, Nil}) aAdd(aCab103,{"F1_DTDIGIT", dDataBase, Nil}) aAdd(aCab103,{"F1_FORMUL" , "N" , Nil}) aAdd(aCab103,{"F1_ESPECIE", "NFE" , Nil}) aAdd(aCab103,{"F1_COND" , "001" , Nil})
aAdd(aDadosCob,Array(CB_MAXCOL)) aTail(aDadosCob)[CB_DOC] := cDocOri aTail(aDadosCob)[CB_SERIE] := cSerOri aTail(aDadosCob)[CB_SEQ] := cSeqOri aTail(aDadosCob)[CB_VLRUNIT] := 1000 aTail(aDadosCob)[CB_TES] := cTes aTail(aDadosCob)[CB_REGSDH] := SDH->(Recno()) aTail(aDadosCob)[CB_PRODUTO] := cProduto aTail(aDadosCob)[CB_QUANT] := nQuantidad aTail(aDadosCob)[CB_BASIPI] := 0 aTail(aDadosCob)[CB_TAXIPI] := 0 aTail(aDadosCob)[CB_VALIPI] := 0 aTail(aDadosCob)[CB_BASICM] := 0 aTail(aDadosCob)[CB_TAXICM] := 0 aTail(aDadosCob)[CB_VALICM] := 0 aTail(aDadosCob)[CB_VALDES] := 0 aTail(aDadosCob)[CB_CFOP] := GetAdvFVal("SF4","F4_CF",xFilial("SF4") + cTes) aTail(aDadosCob)[CB_LOCAL] := GetAdvFVal("SB1","B1_LOCPAD",xFilial("SB1") + cProduto)
MSExecAuto({|a,b,c,d,e,f,g| NfeNfeCob(a,b,c,d,e,f,g)},,,nOpcX,,aCab103,aDadosCob) If lMsErroAuto MostraErro() Else Conout("Inserido Cobertura: " + cDocDef) Endif Endif
RESET ENVIRONMENT
Return Por favor consultar a seção observações.
//DOCUMENTO TIPO NORMAL COM APOSENTADORIA ESPECIAL #Include "Protheus.ch" #Include "RwMake.ch" #Include "TbiConn.ch" User Function EXEC103() Local aCab := {} Local aItem := {} Local aItens := {} Local aItensApo := {} Local nOpc := 3 Local cNum := "" Local nI := 0 Local nX := 0 Local nReg := 1 Private lMsErroAuto := .F. Private lMsHelpAuto := .T.
PREPARE ENVIRONMENT EMPRESA "01" FILIAL "1001" MODULO "COM" FUNNAME "MATA103" If nOpc == 3 cNum := GetSxeNum("SF1","F1_DOC") SF1->(dbSetOrder(1)) While SF1->(dbSeek(xFilial("SF1")+cNum)) ConfirmSX8() cNum := GetSxeNum("SF1","F1_DOC") EndDo Elseif nOpc == 5 cNum := "000000004" Endif
aadd(aCab,{"F1_DOC" ,cNum ,NIL}) aadd(aCab,{"F1_SERIE" ,"1 " ,NIL}) aadd(aCab,{"F1_FORNECE" ,"001 " ,NIL}) aadd(aCab,{"F1_LOJA" ,"01" ,NIL}) aadd(aCab,{"F1_EMISSAO" ,DDATABASE ,NIL}) aadd(aCab,{"F1_DTDIGIT" ,DDATABASE ,NIL}) aadd(aCab,{"F1_TIPO" ,"N" ,NIL}) aadd(aCab,{"F1_FORMUL" ,"N" ,NIL}) aadd(aCab,{"F1_ESPECIE" ,"NFE" ,NIL}) aadd(aCab,{"F1_COND" ,"001" ,NIL}) aadd(aCab,{"F1_EST" ,"SP" ,NIL}) aadd(aCab,{"F1_DESPESA" , 0 , Nil}) aadd(aCab,{"F1_DESCONT" , 0 , Nil}) aadd(aCab,{"F1_SEGURO" , 0 , Nil}) aadd(aCab,{"F1_FRETE" , 0 , Nil}) aadd(aCab,{"F1_MOEDA" , 1 , Nil}) aadd(aCab,{"F1_TXMOEDA" , 1 , Nil}) aadd(aCab,{"F1_STATUS" , "A" , Nil}) aadd(aCab,{"F1_VOLUME1",0, Nil}) aadd(aCab,{"F1_PLIQUI",0, Nil}) aadd(aCab,{"F1_PBRUTO",0, Nil}) For nX := 1 To 1 cProd1 :="0001 " aItem := {} aadd(aItem,{"D1_ITEM" ,StrZero(nX,4) ,NIL}) aadd(aItem,{"D1_COD" ,PadR(cProd1,TamSx3("D1_COD")[1]) ,NIL}) aadd(aItem,{"D1_UM" ,"UN" ,NIL}) aadd(aItem,{"D1_LOCAL" ,"01" ,NIL}) aadd(aItem,{"D1_QUANT" ,1 ,NIL}) aadd(aItem,{"D1_VUNIT" ,1000 ,NIL}) aadd(aItem,{"D1_TOTAL" ,1000 ,NIL}) aadd(aItem,{"D1_TES" ,"001" ,NIL}) aAdd(aItens,aItem) Next nX If nOpc == 3 aItem := {} aAdd(aItensApo, Array(2)) aItensApo[Len(aItensApo)][1] := "0001" aItensApo[Len(aItensApo)][2] := {} aAdd(aItem, {"DHP_FILIAL" , xFilial("DHP") , Nil}) aAdd(aItem, {"DHP_DOC" , cNum , Nil}) aAdd(aItem, {"DHP_SERIE" , "1" , Nil}) aAdd(aItem, {"DHP_FORNECE" , "001 " , Nil}) aAdd(aItem, {"DHP_LOJA" , "01" , Nil}) aAdd(aItem, {"DHP_FAIXA1" , 10 , Nil}) aAdd(aItem, {"DHP_FAIXA2" , 20 , Nil}) aAdd(aItem, {"DHP_FAIXA3" , 30 , Nil}) aAdd(aItensApo[Len(aItensApo)][2], aClone(aItem)) Endif MSExecAuto({|x,y,z,a| MATA103(x,y,z,,,,,,,,,a)},aCab,aItens,nOpc,aItensApo) If !lMsErroAuto ConOut(" Incluido NF: " + cNum) Else MostraErro() ConOut("Erro na inclusao!") Exit EndIf Next nI
RESET ENVIRONMENT Return Por favor consultar a seção observações.
//DOCUMENTO DEVOLUÇÃO - Terceiros ADV0050_EXECAUTO MATA103 DEVOLUÇÂO #Include "Protheus.ch" #Include "RwMake.ch" #Include "TbiConn.ch" User Function EXEC103() Local aCabec := {} Local aItens := {} Local aLinha := {} Local cDoc := "" PRIVATE lMsErroAuto := .F. ConOut(PadC(OemToAnsi("Teste de Inclusao de NFE DEVOLUCAO COM NOTA DE ORIGEM NFS"),80)) PREPARE ENVIRONMENT EMPRESA "99" FILIAL "01" MODULO "COM" FUNNAME "MATA103" cDoc := "DEV000002" aCabec := {} aItens := {} aadd(aCabec,{"F1_TIPO" ,"D" }) aadd(aCabec,{"F1_FORMUL" ,"N" }) aadd(aCabec,{"F1_DOC" ,cDoc }) aadd(aCabec,{"F1_SERIE" ,"000" }) aadd(aCabec,{"F1_EMISSAO" ,dDataBase }) aadd(aCabec,{"F1_FORNECE" ,"2 " }) aadd(aCabec,{"F1_LOJA" ,"1 " }) aadd(aCabec,{"F1_ESPECIE" ,"NFE" }) aLinha := {} aadd(aLinha,{"D1_ITEM" ,"001" ,Nil}) aadd(aLinha,{"D1_COD" ,"2 " ,Nil}) aadd(aLinha,{"D1_QUANT" ,1 ,Nil}) aadd(aLinha,{"D1_VUNIT" ,10 ,Nil}) aadd(aLinha,{"D1_TOTAL" ,10 ,Nil}) aadd(aLinha,{"D1_TES" ,"101" ,Nil})//TES DEVOLUÇÃO aAdd(aLinha,{"D1_CF" ,"000 " ,Nil}) aAdd(aLinha,{"D1_DOC" ,cDoc ,Nil}) // * aAdd(aLinha,{"D1_SERIE" ,"000" ,Nil}) // * aAdd(aLinha,{"D1_EMISSAO",dDataBase ,Nil}) // ADICIONEI aadd(aLinha,{"D1_NFORI" ,"000005 " ,Nil}) // nota de origem aadd(aLinha,{"D1_SERIORI","1 " ,Nil}) aadd(aLinha,{"D1_ITEMORI","01" ,Nil}) AAdd(aLinha,{"D1_IDENTB6","000334" ,Nil}) // d2_nunseq aadd(aLinha,{"AUTDELETA" ,"N" ,Nil}) aadd(aItens,aLinha)
MSExecAuto({|x,y,z| mata103(x,y,z)},aCabec,aItens,3) If !lMsErroAuto ConOut("Incluido com sucesso! "+cDoc) Else ConOut("Erro na inclusao!") mostraerro() EndIf ConOut(OemToAnsi("Fim : ")+Time()) RESET ENVIRONMENT Return(.T.) Por favor consultar a seção observações.
//DOCUMENTO BENEFICIAMENTO - Terceiros #Include "Protheus.ch" #Include "RwMake.ch" #Include "TbiConn.ch" User Function EXEC103() Local aCab := {} Local aItem := {} Local aItens := {} Local nOpc := 3 Local cNum := "" Local nI := 0 Local nX := 0 Local nReg := 1 Local cInicio := Time() Private lMsErroAuto := .F. Private lMsHelpAuto := .T.
PREPARE ENVIRONMENT EMPRESA "01" FILIAL "1001" MODULO "COM" FUNNAME "MATA103"
For nI := 1 To nReg lMsErroAuto := .F. aCab := {} aItem := {} aItens := {} If nOpc == 3 cNum := GetSxeNum("SF1","F1_DOC") SF1->(dbSetOrder(1)) While SF1->(dbSeek(xFilial("SF1")+cNum)) ConfirmSX8() cNum := GetSxeNum("SF1","F1_DOC") EndDo Endif
aadd(aCab,{"F1_DOC" ,cNum ,NIL}) aadd(aCab,{"F1_SERIE" ,"1 " ,NIL}) aadd(aCab,{"F1_FORNECE" ,"001 " ,NIL}) aadd(aCab,{"F1_LOJA" ,"01" ,NIL}) aadd(aCab,{"F1_EMISSAO" ,DDATABASE ,NIL}) aadd(aCab,{"F1_DTDIGIT" ,DDATABASE ,NIL}) aadd(aCab,{"F1_TIPO" ,"B" ,NIL}) aadd(aCab,{"F1_FORMUL" ,"N" ,NIL}) aadd(aCab,{"F1_ESPECIE" ,"NFE" ,NIL}) aadd(aCab,{"F1_COND" ,"001" ,NIL}) aadd(aCab,{"F1_DESPESA" , 0 , Nil}) aadd(aCab,{"F1_DESCONT" , 0 , Nil}) aadd(aCab,{"F1_SEGURO" , 0 , Nil}) aadd(aCab,{"F1_FRETE" , 0 , Nil}) aadd(aCab,{"F1_MOEDA" , 1 , Nil}) aadd(aCab,{"F1_TXMOEDA" , 1 , Nil}) aadd(aCab,{"F1_STATUS" , "A" , Nil}) aadd(aCab,{"F1_VOLUME1",0, Nil}) aadd(aCab,{"F1_PLIQUI",0, Nil}) aadd(aCab,{"F1_PBRUTO",0, Nil}) For nX := 1 To 1 cProd1 := "0001 " aItem := {} aadd(aItem,{"D1_ITEM" ,"0001" ,NIL}) aadd(aItem,{"D1_COD" ,PadR(cProd1,TamSx3("D1_COD")[1]) ,NIL}) aadd(aItem,{"D1_UM" ,"UN" ,NIL}) aadd(aItem,{"D1_LOCAL" ,"01" ,NIL}) aadd(aItem,{"D1_QUANT" ,10 ,NIL}) aadd(aItem,{"D1_VUNIT" ,10 ,NIL}) aadd(aItem,{"D1_TOTAL" ,100 ,NIL}) aadd(aItem,{"D1_NFORI" ,"000132 ",NIL}) aadd(aItem,{"D1_SERIORI" ,"1 " ,NIL}) aadd(aItem,{"D1_ITEMORI" ,"01" ,NIL}) aadd(aItem,{"D1_IDENTB6" ,"000755" ,NIL}) aadd(aItem,{"D1_TES" ,"022" ,NIL}) //TES DEVOLUCAO - Poder3 aAdd(aItens,aItem) Next nX /*If nOpc == 3 aItem := {} aAdd(aItensRat, Array(2)) aItensRat[Len(aItensRat)][1] := "0001" aItensRat[Len(aItensRat)][2] := {} aAdd(aItem, {"DE_FILIAL" , xFilial("SDE") , Nil}) aAdd(aItem, {"DE_ITEM" , StrZero(1,TamSx3("DE_ITEM")[1]) , Nil}) aAdd(aItem, {"DE_DOC" , cNum , Nil}) aAdd(aItem, {"DE_SERIE" , "1" , Nil}) aAdd(aItem, {"DE_FORNECE" , "001 " , Nil}) aAdd(aItem, {"DE_LOJA" , "01" , Nil}) aAdd(aItem, {"DE_ITEMNF" , "0001" , Nil}) aAdd(aItem, {"DE_PERC" , 100 , Nil}) aAdd(aItem, {"DE_CC" , "01" , Nil}) aAdd(aItensRat[Len(aItensRat)][2], aClone(aItem)) Endif */
MSExecAuto({|x,y,z,a| MATA103(x,y,z)},aCab,aItens,nOpc) If !lMsErroAuto ConOut(" Incluido NF: " + cNum) Else MostraErro() ConOut("Erro na inclusao!") Exit EndIf Next nI
Conout("Inicio: " + cInicio) ConOut("Fim: " + Time())
RESET ENVIRONMENT
Return Por favor consultar a seção observações.
//DOCUMENTO COMPLEMENTO ICMS ou IPI #Include "Protheus.ch" #Include "RwMake.ch" #Include "TbiConn.ch" User Function EXEC103() Local aCab := {} Local aItem := {} Local aItens := {} Local nOpc := 3 Local nI := 0 Local nX := 0 Local nReg := 1 Local cInicio := Time() Private lMsErroAuto := .F. Private lMsHelpAuto := .T.
PREPARE ENVIRONMENT EMPRESA "01" FILIAL "1001" MODULO "COM" FUNNAME "MATA103"
For nI := 1 To nReg lMsErroAuto := .F. aCab := {} aItem := {} aItens := {} If nOpc == 3 aadd(aCab,{"F1_SERIE" ,"1 " ,NIL}) aadd(aCab,{"F1_FORNECE" ,"001 " ,NIL}) aadd(aCab,{"F1_LOJA" ,"01" ,NIL}) aadd(aCab,{"F1_EMISSAO" ,DDATABASE ,NIL}) aadd(aCab,{"F1_DTDIGIT" ,DDATABASE ,NIL}) aadd(aCab,{"F1_TIPO" ,"I" ,NIL}) // I - Complemento ICMS / P - Complemento IPI aadd(aCab,{"F1_FORMUL" ,"S" ,NIL}) aadd(aCab,{"F1_ESPECIE" ,"NFE" ,NIL}) aadd(aCab,{"F1_COND" ,"001" ,NIL}) aadd(aCab,{"F1_DESPESA" , 0 , Nil}) aadd(aCab,{"F1_DESCONT" , 0 , Nil}) aadd(aCab,{"F1_SEGURO" , 0 , Nil}) aadd(aCab,{"F1_FRETE" , 0 , Nil}) aadd(aCab,{"F1_MOEDA" , 1 , Nil}) aadd(aCab,{"F1_TXMOEDA" , 1 , Nil}) aadd(aCab,{"F1_STATUS" , "A" , Nil}) aadd(aCab,{"F1_VOLUME1",0, Nil}) aadd(aCab,{"F1_PLIQUI",0, Nil}) aadd(aCab,{"F1_PBRUTO",0, Nil}) For nX := 1 To 1 cProd1 := "0001 " aItem := {} aadd(aItem,{"D1_ITEM" ,"0001" ,NIL}) aadd(aItem,{"D1_COD" ,PadR(cProd1,TamSx3("D1_COD")[1]) ,NIL}) aadd(aItem,{"D1_UM" ,"UN" ,NIL}) aadd(aItem,{"D1_LOCAL" ,"01" ,NIL}) aadd(aItem,{"D1_VUNIT" ,10 ,NIL}) aadd(aItem,{"D1_TOTAL" ,100 ,NIL}) aadd(aItem,{"D1_NFORI" ,"000132 ",NIL}) aadd(aItem,{"D1_SERIORI" ,"1 " ,NIL}) aadd(aItem,{"D1_ITEMORI" ,"01" ,NIL}) aadd(aItem,{"D1_TES" ,"066" ,NIL}) aAdd(aItens,aItem) Next nX MSExecAuto({|x,y,z,a| MATA103(x,y,z)},aCab,aItens,nOpc)
If !lMsErroAuto ConOut(" NF_incluída) Else MostraErro() ConOut("Erro na inclusao!") Exit EndIf Next nI
Conout("Inicio: " + cInicio) ConOut("Fim: " + Time())
RESET ENVIRONMENT
Return Por favor consultar a seção observações.
//DOCUMENTO COM COMPLEMENTO DE ITENS DA NF (DKD) #Include "Protheus.ch" #Include "RwMake.ch" #Include "TbiConn.ch" User Function EXEC103() Local aCab := {} Local aItem := {} Local aItens := {} Local aAutoImp := {} Local aItensRat := {} Local aCodRet := {} Local aParamAux := {} Local nOpc := 3 Local cNum := "" Local nI := 0 Local nX := 0 Local nReg := 1 Local aAuxItDKD := {} Local aAuxDKD := {} Conout("Inicio: " + Time()) Private lMsErroAuto := .F. Private lMsHelpAuto := .T. PREPARE ENVIRONMENT EMPRESA "32" FILIAL "6597" MODULO "COM" FUNNAME "MATA103" cNum := GetSxeNum("SF1","F1_DOC") SF1->(dbSetOrder(1)) While SF1->(dbSeek(xFilial("SF1")+cNum)) ConfirmSX8() cNum := GetSxeNum("SF1","F1_DOC") EndDo //Cabeçalho aadd(aCab,{"F1_TIPO" ,"N" ,NIL}) aadd(aCab,{"F1_FORMUL" ,"N" ,NIL}) aadd(aCab,{"F1_DOC" ,cNum ,NIL}) aadd(aCab,{"F1_SERIE" ,"1 " ,NIL}) aadd(aCab,{"F1_EMISSAO" ,DDATABASE ,NIL}) aadd(aCab,{"F1_DTDIGIT" ,DDATABASE ,NIL}) aadd(aCab,{"F1_FORNECE" ,"001 " ,NIL}) aadd(aCab,{"F1_LOJA" ,"01" ,NIL}) aadd(aCab,{"F1_ESPECIE" ,"NFE" ,NIL}) aadd(aCab,{"F1_COND" ,"001" ,NIL}) aadd(aCab,{"F1_MOEDA" , 1 ,Nil}) aadd(aCab,{"F1_TXMOEDA" , 1 ,Nil}) aadd(aCab,{"F1_STATUS" , "A" ,Nil}) //Itens For nX := 1 To 1 aItem := {} aadd(aItem,{"D1_ITEM" ,StrZero(nX,4) ,NIL}) aadd(aItem,{"D1_COD" ,PadR("0001",TamSx3("D1_COD")[1]) ,NIL}) aadd(aItem,{"D1_UM" ,"UN" ,NIL}) aadd(aItem,{"D1_LOCAL" ,"01" ,NIL}) aadd(aItem,{"D1_QUANT" ,1 ,NIL}) aadd(aItem,{"D1_VUNIT" ,7508.33 ,NIL}) aadd(aItem,{"D1_TOTAL" ,7508.33 ,NIL}) aadd(aItem,{"D1_TES" ,"001" ,NIL}) aAdd(aItens,aItem) aAuxItDKD := {} aadd(aAuxItDKD,{"DKD_ITEM" ,StrZero(nX,TamSx3("D1_ITEM")[1]) ,NIL}) aadd(aAuxItDKD,{"DKD_TSTNUM" ,150 ,NIL}) //Campo customizado criado na nova tabela complementar DKD aAdd(aAuxDKD,aAuxItDKD) Next nX
//3-Inclusão / 4-Classificação / 5-Exclusão MSExecAuto({|x,y,z,b,a| MATA103(x,y,z,b,,,,,,,,,,,a)},aCab,aItens,nOpc,.F.,aAuxDKD) If !lMsErroAuto ConOut(" Incluido NF: " + cNum) Else MostraErro() ConOut("Erro na inclusao!") EndIf ConOut("Fim: " + Time()) RESET ENVIRONMENT Return Por favor consultar a seção observações.
//DOCUMENTO ENTREGA FUTURA (DHQ) #Include "Protheus.ch" #Include "RwMake.ch" #Include "TbiConn.ch" User Function EXECFUT() Local aCab := {} Local cNum := "COM000" Local cNum1 := "COM001" Local aItem := {} Local aItens := {} Local cSerie := "100" Local cFornec := "000005" Local cLoja := "01" Local cEspecie := "NFE " Local cProd1 := "001 " Local nX := 0 Local cTes := "043" Local cPedido := "TIR469" Local nOpc := 3 //3-Inclui / 5-Exclui Private lMsErroAuto := .F.
PREPARE ENVIRONMENT EMPRESA "99" FILIAL "01" MODULO "COM" FUNNAME "MATA103" If nOpc == 3 // Compra com Entrega Futura (simples faturamento) aadd(aCab,{"F1_DOC" ,cNum ,NIL}) aadd(aCab,{"F1_SERIE" ,cSerie ,NIL}) aadd(aCab,{"F1_FORNECE" ,cFornec ,NIL}) aadd(aCab,{"F1_LOJA" ,cLoja ,NIL}) aadd(aCab,{"F1_EMISSAO" ,DDATABASE ,NIL}) aadd(aCab,{"F1_DTDIGIT" ,DDATABASE ,NIL}) aadd(aCab,{"F1_TIPO" ,"N" ,NIL}) aadd(aCab,{"F1_FORMUL" ,"N" ,NIL}) aadd(aCab,{"F1_ESPECIE" ,cEspecie ,NIL}) aadd(aCab,{"F1_COND" ,"001" ,NIL}) aadd(aCab,{"F1_EST" ,"SP" ,NIL}) aadd(aCab,{"F1_DESPESA" , 0 ,NIL}) aadd(aCab,{"F1_DESCONT" , 0 ,NIL}) aadd(aCab,{"F1_SEGURO" , 0 ,NIL}) aadd(aCab,{"F1_FRETE" , 0 ,NIL}) aadd(aCab,{"F1_MOEDA" , 1 ,NIL}) aadd(aCab,{"F1_TXMOEDA" , 1 ,NIL}) aadd(aCab,{"F1_STATUS" , "A" ,NIL}) aadd(aCab,{"F1_VOLUME1",0 ,NIL}) aadd(aCab,{"F1_PLIQUI",0 ,NIL}) aadd(aCab,{"F1_PBRUTO",0 ,NIL})
For nX := 1 To 1 cProd1 :="001 " aItem := {} aadd(aItem,{"D1_ITEM" ,StrZero(nX,4) ,NIL}) aadd(aItem,{"D1_COD" ,PadR(cProd1,TamSx3("D1_COD")[1]) ,NIL}) aadd(aItem,{"D1_UM" ,"UN" ,NIL}) aadd(aItem,{"D1_LOCAL" ,"01" ,NIL}) aAdd(aItem, {"D1_PEDIDO" ,cPedido,Nil}) aAdd(aItem, {"D1_ITEMPC", "0001",Nil}) aadd(aItem,{"D1_QUANT" ,100 ,NIL}) aadd(aItem,{"D1_VUNIT" ,100 ,NIL}) aadd(aItem,{"D1_TOTAL" ,10000 ,NIL}) aadd(aItem,{"D1_TES" ,cTes ,NIL}) aAdd(aItens,aItem) Next nX MSExecAuto({|x,y,z| MATA103(x,y,z)},aCab,aItens,nOpc) If lMsErroAuto MostraErro() Else Conout("Entrega Futura incluída: " + cNum) Endif Endif
/***********************************************************************/ // Documento de Entrada representando a remessa da mercadoria aCab := {} aItem := {} aItens := {} nX := 0 If nOpc == 3
aadd(aCab,{"F1_DOC" ,cNum1 ,NIL}) aadd(aCab,{"F1_SERIE" ,cSerie ,NIL}) aadd(aCab,{"F1_FORNECE" ,cFornec ,NIL}) aadd(aCab,{"F1_LOJA" ,cLoja ,NIL}) aadd(aCab,{"F1_EMISSAO" ,DDATABASE ,NIL}) aadd(aCab,{"F1_DTDIGIT" ,DDATABASE ,NIL}) aadd(aCab,{"F1_TIPO" ,"N" ,NIL}) aadd(aCab,{"F1_FORMUL" ,"N" ,NIL}) aadd(aCab,{"F1_ESPECIE" ,cEspecie ,NIL}) aadd(aCab,{"F1_COND" ,"001" ,NIL}) aadd(aCab,{"F1_EST" ,"SP" ,NIL}) aadd(aCab,{"F1_DESPESA" , 0 , Nil}) aadd(aCab,{"F1_DESCONT" , 0 , Nil}) aadd(aCab,{"F1_SEGURO" , 0 , Nil}) aadd(aCab,{"F1_FRETE" , 0 , Nil}) aadd(aCab,{"F1_MOEDA" , 1 , Nil}) aadd(aCab,{"F1_TXMOEDA" , 1 , Nil}) aadd(aCab,{"F1_STATUS" , "A" , Nil}) aadd(aCab,{"F1_VOLUME1",0, Nil}) aadd(aCab,{"F1_PLIQUI",0, Nil}) aadd(aCab,{"F1_PBRUTO",0, Nil}) For nX := 1 To 1 cProd1 :="001 " aItem := {} aadd(aItem,{"D1_ITEM" ,StrZero(nX,4) ,NIL}) aadd(aItem,{"D1_COD" ,PadR(cProd1,TamSx3("D1_COD")[1]) ,NIL}) aadd(aItem,{"D1_UM" ,"UN" ,NIL}) aadd(aItem,{"D1_LOCAL" ,"01" ,NIL}) aadd(aItem,{"D1_QUANT" ,50 ,NIL}) aadd(aItem,{"D1_VUNIT" ,100 ,NIL}) aadd(aItem,{"D1_TOTAL" ,5000 ,NIL}) aadd(aItem,{"D1_TES" ,"496" ,NIL}) aadd(aItem,{"AUT_ENTFUT", {cNum,"100","0001",0,"0001",cFornec,cLoja},Nil})//Dados para nota fiscal de origem aAdd(aItens,aItem) Next nX MSExecAuto({|x,y,z| MATA103(x,y,z)},aCab,aItens,nOpc) If lMsErroAuto MostraErro() Else Conout("Remessa Entrega Futura incluida: " + cNum1) Endif
Endif RESET ENVIRONMENT Return Por favor consultar a seção observações.
//GUARDA FISCAL - GRAVAR DADOS DA CLASSIFICAÇÃO DO DOCUMENTO PARA FUTURA FINALIZAÇÃO DA CLASSIFICAÇÃO #Include "Protheus.ch" #Include "RwMake.ch" #Include "TbiConn.ch" User Function EXEC103() Local aCab := {} Local aItem := {} Local aItens := {} Local nOpc := 3 Local cNum := "" Local nI := 0 Local nX := 0 Local nReg := 1 Local cInicio := Time() Private lMsErroAuto := .F. Private lMsHelpAuto := .T. Private lTemF1GFE := .F. PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01 " MODULO "COM" FUNNAME "MATA103" Conout( Replicate( '=', 30 )) Conout("Inicio: " + cInicio) For nI := 1 To nReg lMsErroAuto := .F. aCab := {} aItem := {} aItens := {} nOpc := 3 If nOpc == 3 cNum := GetSxeNum("SF1","F1_DOC") SF1->(dbSetOrder(1)) While SF1->(dbSeek(xFilial("SF1")+cNum)) ConfirmSX8() cNum := GetSxeNum("SF1","F1_DOC") EndDo ElseIf nOpc == 4 .Or. nOpc == 5 cNum := "COMSP137 " EndIf Conout("Documento: " + cNum) aadd( aCab, { "F1_FORMUL" , "N" ,NIL } ) aadd( aCab, { "F1_DOC" , cNum ,NIL } ) aadd( aCab, { "F1_SERIE" , "1 " ,NIL } ) aadd( aCab, { "F1_FORNECE" , "000001" ,NIL } ) aadd( aCab, { "F1_LOJA" , "01" ,NIL } ) aadd( aCab, { "F1_EMISSAO" , DDATABASE ,NIL } ) aadd( aCab, { "F1_DTDIGIT" , DDATABASE ,NIL } ) aadd( aCab, { "F1_TIPO" , "N" ,NIL } ) aadd( aCab, { "F1_ESPECIE" , "NFE" ,NIL } ) aadd( aCab, { "F1_COND" , "000" ,NIL } )
cProd1 := "000001" cItem := StrZero(nX,TamSx3("D1_ITEM")[1]) aItem := {} aadd( aItem, { "D1_ITEM" , cItem , NIL } ) aadd( aItem, { "D1_COD" , PadR(cProd1,TamSx3("D1_COD")[1]) , NIL } ) aadd( aItem, { "D1_UM" , "UN" , NIL } ) aadd( aItem, { "D1_LOCAL" , "01" , NIL } ) aadd( aItem, { "D1_QUANT" , 10 , NIL } ) aadd( aItem, { "D1_VUNIT" , 1000 , NIL } ) aadd( aItem, { "D1_TOTAL" , 10000 , NIL } ) aAdd(aItens,aItem) MSExecAuto( { |x,y,z| MATA140( x, y, z ) }, aCab, aItens, nOpc ) // Inclusão Pré Nota If !lMsErroAuto ConOut( "Incluido Pre Nota: " + cNum ) aItens := {} aItem := {} aadd( aItem, { "D1_ITEM" , cItem , NIL } ) aadd( aItem, { "D1_COD" , PadR(cProd1,TamSx3("D1_COD")[1]) , NIL } ) aadd( aItem, { "D1_UM" , "UN" , NIL } ) aadd( aItem, { "D1_LOCAL" , "01" , NIL } ) aadd( aItem, { "D1_QUANT" , 10 , NIL } ) aadd( aItem, { "D1_VUNIT" , 1500 , NIL } ) aadd( aItem, { "D1_TOTAL" , 15000 , NIL } ) aadd( aItem, { "D1_TES" , "001" , NIL } ) aAdd(aItens,aItem) nOpc := 4 //Classificação lGrvGF := .T. MSExecAuto( { |a, b, c, d| MATA103( a, b, c, , , , , , , , , , , , , d ) }, aCab, aItens, nOpc, lGrvGF ) // Realiza a gravação dos dados alterados sem finalizar a Classificação If !lMsErroAuto ConOut( "Classificado Documento Fiscal: " + cNum ) Else MostraErro() ConOut( "Erro na inclusao!" ) Exit EndIf Else MostraErro() ConOut( "Erro na inclusao!" ) Exit EndIf Next nI ConOut("Fim: " + Time()) Conout( Replicate( '=', 30 ))
RESET ENVIRONMENT Return .T. Por favor consultar a seção observações. //ENTREGA POR TERCEIROS #Include "Protheus.ch" #Include "RwMake.ch" #Include "TbiConn.ch" User Function EXEC103() Local aCab := {} Local aItem := {} Local aItens := {} Local nOpc := 3 Local cNum := "" Local nI := 0 Local nX := 0 Local nReg := 1 Local cInicio := Time() Private lMsErroAuto := .F. Private lMsHelpAuto := .T. Private lTemF1GFE := .F. PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01 " MODULO "COM" FUNNAME "MATA103" Conout( Replicate( '=', 30 )) Conout("Inicio: " + cInicio) For nI := 1 To nReg lMsErroAuto := .F. aCab := {} aItem := {} aItens := {} nOpc := 3 If nOpc == 3 cNum := GetSxeNum("SF1","F1_DOC") SF1->(dbSetOrder(1)) While SF1->(dbSeek(xFilial("SF1")+cNum)) ConfirmSX8() cNum := GetSxeNum("SF1","F1_DOC") EndDo ElseIf nOpc == 4 .Or. nOpc == 5 cNum := "COMSP137 " EndIf Conout("Documento: " + cNum) aadd( aCab, { "F1_FORMUL" , "N" ,NIL } ) aadd( aCab, { "F1_DOC" , cNum ,NIL } ) aadd( aCab, { "F1_SERIE" , "1 " ,NIL } ) aadd( aCab, { "F1_FORNECE" , "000001" ,NIL } ) aadd( aCab, { "F1_LOJA" , "01" ,NIL } ) aadd( aCab, { "F1_EMISSAO" , DDATABASE ,NIL } ) aadd( aCab, { "F1_DTDIGIT" , DDATABASE ,NIL } ) aadd( aCab, { "F1_TIPO" , "N" ,NIL } ) aadd( aCab, { "F1_ESPECIE" , "NFE" ,NIL } ) aadd( aCab, { "F1_COND" , "000" ,NIL } )
cProd1 := "000001" cItem := StrZero(nX,TamSx3("D1_ITEM")[1]) aItem := {} aadd( aItem, { "D1_ITEM" , cItem , NIL } ) aadd( aItem, { "D1_COD" , PadR(cProd1,TamSx3("D1_COD")[1]) , NIL } ) aadd( aItem, { "D1_UM" , "UN" , NIL } ) aadd( aItem, { "D1_LOCAL" , "01" , NIL } ) aadd( aItem, { "D1_QUANT" , 10 , NIL } ) aadd( aItem, { "D1_VUNIT" , 1000 , NIL } ) aadd( aItem, { "D1_TOTAL" , 10000 , NIL } ) aAdd(aItens,aItem) MSExecAuto( { |x,y,z| MATA140( x, y, z ) }, aCab, aItens, nOpc ) // Inclusão Pré Nota If !lMsErroAuto ConOut( "Incluido Pre Nota: " + cNum ) aItens := {} aItem := {} aadd( aItem, { "D1_ITEM" , cItem , NIL } ) aadd( aItem, { "D1_COD" , PadR(cProd1,TamSx3("D1_COD")[1]) , NIL } ) aadd( aItem, { "D1_UM" , "UN" , NIL } ) aadd( aItem, { "D1_LOCAL" , "01" , NIL } ) aadd( aItem, { "D1_QUANT" , 10 , NIL } ) aadd( aItem, { "D1_VUNIT" , 1500 , NIL } ) aadd( aItem, { "D1_TOTAL" , 15000 , NIL } ) aadd( aItem, { "D1_TES" , "001" , NIL } ) aAdd(aItens,aItem) nOpc := 4 //Classificação lGrvGF := .T. MSExecAuto( { |a, b, c, d| MATA103( a, b, c, , , , , , , , , , , , , d ) }, aCab, aItens, nOpc, lGrvGF ) // Realiza a gravação dos dados alterados sem finalizar a Classificação If !lMsErroAuto ConOut( "Classificado Documento Fiscal: " + cNum ) Else MostraErro() ConOut( "Erro na inclusao!" ) Exit EndIf Else MostraErro() ConOut( "Erro na inclusao!" ) Exit EndIf Next nI ConOut("Fim: " + Time()) Conout( Replicate( '=', 30 ))
RESET ENVIRONMENT Return .T. Por favor consultar a seção observações. //EXCLUSÃO DE DOCUMENTO DE ENTRADA (SEM ABERTURA DE TELA) #INCLUDE "RWMAKE.CH" #INCLUDE "TBICONN.CH" User Function EXEC103() Local nOpc := 5 Local aCab := {} Local aItens := {} Local aLinha := {} Local aAuxDKD := {} Private lMsErroAuto := .F. PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01" MODULO "COM" FUNNAME "MATA103" aadd(aCab,{"F1_TIPO" ,"N" ,NIL}) aadd(aCab,{"F1_FORMUL" ,"N" ,NIL}) aadd(aCab,{"F1_DOC" ,"M103STELA",NIL}) aadd(aCab,{"F1_SERIE" ,"001" ,NIL}) aadd(aCab,{"F1_EMISSAO" ,dDataBase,NIL}) aadd(aCab,{"F1_DTDIGIT" ,dDataBase,NIL}) aadd(aCab,{"F1_FORNECE" ,"000001" ,NIL}) aadd(aCab,{"F1_LOJA" ,"01" ,NIL}) aadd(aCab,{"F1_ESPECIE" ,"NFE" ,NIL}) aadd(aCab,{"F1_COND" ,"000" ,NIL}) aAdd(aCab,{"F1_STATUS","A",NIL}) aItens := {} aAdd(aItens,{'D1_DOC',"M103STELA",NIL}) aAdd(aItens,{'D1_SERIE',"0001",NIL}) aAdd(aItens,{'D1_FORNECE',"000001",NIL}) aAdd(aItens,{'D1_LOJA',"01",NIL}) aAdd(aLinha,aItens) MSExecAuto({|x,y,z,b,a| MATA103(x,y,z,b,,,,,,,,,,,a)},aCab,aLinha,nOpc,.F.,aAuxDKD) If lMsErroAuto MostraErro() Else Alert("Execauto MATA103 de exclusão sem tela executado com sucesso!") EndIf RESET ENVIRONMENT Return Por favor consultar a seção observações. //EXCLUSÃO DE DOCUMENTO DE ENTRADA (COM ABERTURA DE TELA) #INCLUDE "RWMAKE.CH" #INCLUDE "TBICONN.CH" User Function EXEC103() Local cNumDoc := "M103CTELA" Local cSerie := "001" Local cForn := "000001" Local cLoja := "01" Local nOpc := 5 Local aCab := {} Local aItens := {} Local aLinha := {} Private lMsErroAuto := .F. DbSelectArea("SF1") SF1->(DbSetOrder(1)) SF1->(DbSeek(xFilial("SF1") + cNumDoc + cSerie + cForn + cLoja )) aadd(aCab,{"F1_TIPO" , "N" ,NIL}) aadd(aCab,{"F1_FORMUL" , "N" ,NIL}) aadd(aCab,{"F1_DOC" , SF1->F1_DOC,NIL}) aadd(aCab,{"F1_SERIE" , SF1->F1_SERIE ,NIL}) aadd(aCab,{"F1_EMISSAO" , dDataBase,NIL}) aadd(aCab,{"F1_DTDIGIT" , dDataBase,NIL}) aadd(aCab,{"F1_FORNECE" , SF1->F1_FORNECE ,NIL}) aadd(aCab,{"F1_LOJA" , SF1->F1_LOJA ,NIL}) aadd(aCab,{"F1_ESPECIE" , SF1->F1_ESPECIE ,NIL}) dbSelectArea("SD1") SD1->(dbSetOrder(1)) SD1->(DbSeek(xFilial("SD1")+SF1->F1_DOC+SF1->F1_SERIE+SF1->F1_FORNECE+SF1->F1_LOJA)) While !Eof() .And. SD1->D1_FILIAL+SD1->D1_DOC+SD1->D1_SERIE+SD1->D1_FORNECE+SD1->D1_LOJA == ; SF1->F1_FILIAL+SF1->F1_DOC+SF1->F1_SERIE+SF1->F1_FORNECE+SF1->F1_LOJA aItens := {} aAdd(aItens,{'D1_DOC',SD1->D1_DOC ,NIL}) aAdd(aItens,{'D1_SERIE',SD1->D1_SERIE ,NIL}) aAdd(aItens,{'D1_FORNECE',SD1->D1_FORNECE,NIL}) aAdd(aItens,{'D1_LOJA',SD1->D1_LOJA ,NIL}) aadd(aItens,{"D1_ITEM",SD1->D1_ITEM ,NIL}) aadd(aItens,{"D1_COD" ,SD1->D1_COD ,NIL}) aadd(aItens,{"D1_UM" ,SD1->D1_UM ,NIL}) aadd(aItens,{"D1_LOCAL",SD1->D1_LOCAL ,NIL}) aadd(aItens,{"D1_QUANT",SD1->D1_QUANT ,NIL}) aadd(aItens,{"D1_VUNIT",SD1->D1_VUNIT ,NIL}) aadd(aItens,{"D1_TOTAL",SD1->D1_TOTAL ,NIL}) aadd(aItens,{"D1_TES" ,SD1->D1_TES ,NIL}) aAdd(aLinha,aItens) SD1->(dbSkip()) EndDo MSExecAuto({|x,y,z,b,a| MATA103(x,y,z,b,,,,,,,,,,,a)},aCab,aLinha,nOpc,.T.,) If lMsErroAuto MostraErro() EndIf Return Por favor consultar a seção observações. |