Passo a passo: | Bloco de código |
---|
language | delphi |
---|
theme | Midnight |
---|
title | Documento Tipo Normal |
---|
collapse | true |
---|
| #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 |
Bloco de código |
---|
language | delphi |
---|
theme | Midnight |
---|
title | Documento Tipo Complemento |
---|
collapse | true |
---|
| #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 |
Bloco de código |
---|
language | delphi |
---|
theme | Midnight |
---|
title | Documento Tipo Normal Vinculado ao Pedido de Compras |
---|
collapse | true |
---|
| #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 |
Bloco de código |
---|
language | delphi |
---|
theme | Midnight |
---|
title | Documento Tipo Devolução |
---|
collapse | true |
---|
| #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 |
Bloco de código |
---|
language | delphi |
---|
theme | Midnight |
---|
title | Documento Vincular (SDH) |
---|
collapse | true |
---|
| #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 |
Bloco de código |
---|
language | delphi |
---|
theme | Midnight |
---|
title | Documento Cobertura |
---|
collapse | true |
---|
| #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 |
Bloco de código |
---|
language | delphi |
---|
theme | Midnight |
---|
title | Documento Tipo Normal com Aposentadoria Especial |
---|
collapse | true |
---|
| #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 |
Bloco de código |
---|
language | delphi |
---|
theme | Midnight |
---|
title | Documento Devolução - Terceiros |
---|
collapse | true |
---|
| 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.) |
Bloco de código |
---|
language | delphi |
---|
theme | Midnight |
---|
title | Documento Beneficiamento - Terceiros |
---|
collapse | true |
---|
| #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 |
Bloco de código |
---|
language | delphi |
---|
theme | Midnight |
---|
title | Documento Complementar ICMS ou IPI |
---|
collapse | true |
---|
| #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 |
Bloco de código |
---|
language | delphi |
---|
theme | Midnight |
---|
title | Documento com Complemento de Itens da NF (DKD) |
---|
collapse | true |
---|
| #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 |
Bloco de código |
---|
language | delphi |
---|
theme | Midnight |
---|
title | Documento Entrega Futura (DHQ) |
---|
collapse | true |
---|
| #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 |
Bloco de código |
---|
language | delphi |
---|
theme | Midnight |
---|
title | Guarda Fiscal - Gravar Dados da Classificação do Documento para Futura finalização da Classificação |
---|
collapse | true |
---|
| #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. |
Bloco de código |
---|
language | delphi |
---|
theme | Midnight |
---|
title | Inclusão - Entrega por Terceiros |
---|
collapse | true |
---|
| #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. |
Bloco de código |
---|
language | delphi |
---|
theme | Midnight |
---|
title | Exclusão de Doc de Entrada (com Abertura de Tela) |
---|
collapse | true |
---|
| #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 |
Bloco de código |
---|
language | delphi |
---|
theme | Midnight |
---|
title | Inclusão com alíquota ISS sendo calculado através do FISA052 |
---|
collapse | true |
---|
| #Include "RwMake.ch"
#Include "TbiConn.ch"
User Function INC103IMP()
Local nX As Numeric
Local cTipo As Character
Local cFormul As Character
Local cNum As Character
Local cSerie As Character
Local cFornec As Character
Local cLoja As Character
Local cEspecie As Character
Local cCondPgt As Character
Local cStatus As Character
Local cNaturez As Character
Local cProd As Character
Local cUnid As Character
Local cArmz As Character
Local cTes As Character
Local nQuant As Numeric
Local nPrcUnit As Numeric
Local nVlTot As Numeric
Local aCab As Array
Local aItem As Array
Local aItens As Array
Local aAutoImp As Array
Local aItensRat As Array
Local aCodRet As Array
Local aParamAux As Array
Local nOpc As Numeric
Private lMsErroAuto As Logical
Private lMsHelpAuto As Logical
nX := 1
cTipo := "N"
cFormul := "N"
cSerie := "001"
cFornec := "FGFISS"
cLoja := "01"
cEspecie := "NFS"
cCondPgt := "000"
cStatus := "A"
cNaturez := "014"
cProd := "COMSP0000000000000000000000004"
cUnid := "UN"
cArmz := "01"
cTes := "015"
nQuant := 10
nPrcUnit := 100
nVlTot := 1000
aCab := {}
aItem := {}
aItens := {}
aAutoImp := {}
nOpc := 3
lMsErroAuto := .F.
lMsHelpAuto := .T.
Conout("Inicio: " + Time())
PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01" 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
aCab := {}
aadd(aCab,{"F1_TIPO" ,cTipo ,NIL})
aadd(aCab,{"F1_FORMUL" ,cFormul ,NIL})
aadd(aCab,{"F1_DOC" ,cNum ,NIL})
aadd(aCab,{"F1_SERIE" ,cSerie ,NIL})
aadd(aCab,{"F1_EMISSAO" ,dDataBase ,NIL})
aadd(aCab,{"F1_DTDIGIT" ,dDataBase ,NIL})
aadd(aCab,{"F1_FORNECE" ,cFornec ,NIL})
aadd(aCab,{"F1_LOJA" ,cLoja ,NIL})
aadd(aCab,{"F1_ESPECIE" ,cEspecie ,NIL})
aadd(aCab,{"F1_COND" ,cCondPgt ,NIL})
aadd(aCab,{"F1_MOEDA" ,1 ,Nil})
aadd(aCab,{"F1_TXMOEDA" ,1 ,Nil})
aadd(aCab,{"F1_STATUS" ,cStatus ,Nil})
aadd(aCab,{"E2_NATUREZ",PadR(cNaturez,TamSx3("ED_CODIGO")[1]) ,Nil})
//Itens
aItem := {}
aadd(aItem,{"D1_ITEM" ,StrZero(nX,4) ,NIL})
aadd(aItem,{"D1_COD" ,PadR(cProd,TamSx3("D1_COD")[1]) ,NIL})
aadd(aItem,{"D1_UM" ,cUnid ,NIL})
aadd(aItem,{"D1_LOCAL" ,cArmz ,NIL})
aadd(aItem,{"D1_QUANT" ,nQuant ,NIL})
aadd(aItem,{"D1_VUNIT" ,nPrcUnit ,NIL})
aadd(aItem,{"D1_TOTAL" ,nVlTot ,NIL})
aadd(aItem,{"D1_TES" ,cTes ,NIL})
aAdd(aItens,aItem)
//Impostos (Informar a referência do imposto, que consta no valid do campo)
//Para impostos de cabeçalho informar: referência, valor
aAutoImp := { {"NF_UFPREISS" , "SP"},;
{"NF_CODMUN", "18800"}}
//3-Inclusão
MSExecAuto({|x,y,z,a,b| MATA103(x,y,z,a,b,,,,,)},aCab,aItens,nOpc,.F.,aAutoImp)
aItens := {}
If !lMsErroAuto
ConOut(" Incluido NF: " + cNum)
Else
MostraErro()
ConOut("Erro na inclusao!")
EndIf
ConOut("Fim: " + Time())
RESET ENVIRONMENT
FwFreeArray(aCab)
FwFreeArray(aItem)
FwFreeArray(aAutoImp)
FwFreeArray(aItens)
Return |
Informações |
---|
| Não se esqueça de conferir as observações! |
|