Histórico da Página
...
Podemos consultar o exemplo MA920AUTMA910AUT.PRW.
02. Exemplo de Utilização
...
| Bloco de código | ||||||
|---|---|---|---|---|---|---|
| ||||||
#INCLUDE "TBICONN.CH" USER Function MA920AUT() Local aCabec := {} Local aItens := {} Local aLinha := {} Local cDoc := "000058" PRIVATE lMsErroAuto := .F. //ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ //| Abertura do ambiente | //ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "XIFIS26" MODULO "FIS" TABLES "SF2","SD2","SA1","SA2","SB1","SB2","SF4","SED","SE1" //Montagem da capa do documento fiscal aadd(aCabec,{"F2_TIPO" #include 'totvs.ch' #include 'rwmake.ch' /* {Protheus.doc} ExecMta910 ExecAuto Mata910 @type Function */ User Function MA910AUT() Local aCabM910 := {} Local aItemM910 := {} Local aLinha := {} Private lMsErroAuto := .F. aadd(aCabM910,{"F1_TIPO","N"}) aadd(aCabecaCabM910,{"F2F1_FORMULDOC" ,"S000000003"}) aadd(aCabec,{"F2_DOC" ,cDoc}) aadd(aCabecaCabM910,{"F2F1_SERIE" ,"AUT001"}) aadd(aCabecaCabM910,{"F2F1_EMISSAO",dDataBasedDatabase}) aadd(aCabecaCabM910,{"F2F1_CLIENTEFORNECE","SP0001COM003"}) aadd(aCabecaCabM910,{"F2F1_LOJA" ,"01"}) aadd(aCabecaCabM910,{"F2F1_ESPECIE","NF"}) aadd(aCabec,{"F2_COND","001"}) aadd(aCabec,{"F2_DESCONT",0}) aadd(aCabec,{"F2_FRETE",0}) aadd(aCabec,{"F2_SEGURO",0}) aadd(aCabec,{"F2_DESPESA",0}) //Montagem dos itens do documento fiscal aLinha := {} aadd(aLinha,{"D2_COD" ,"PA0000000000000000000000000001SPED"}) aadd(aLinha,{"D1_COD" ,"000000000000000000000000000010",Nil}) aadd(aLinha,{"D2D1_QUANT",1,Nil}) aadd(aLinha,{"D2D1_PRCVENVUNIT",100,Nil}) aadd(aLinha,{"D2D1_TOTAL",100,Nil}) aadd(aLinha,{"D2D1_TES","51510A",Nil}) aadd(aItensaItemM910,aLinha) //ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ //| Teste de Inclusao | //ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ MSExecAuto ({|x,y,z| MATA920mata910(aCabecx,y,aItensz)}, aCabecaCabM910, aItensaItemM910, 3) If if !lMsErroAuto ConOut("Incluido com sucesso! "+cDoc) Else ConOut("Erro na inclusao!") EndIf ConOut("Fim : "+Time()) RESET ENVIRONMENT Return .T. MostraErro() else FwAlertInfo("Nota Incluida Com Sucesso","TOTVS") endif Return |
0202. Manual
Esta forma é muito utilizada nas integrações com outros sistemas onde os cálculos dos tributos já foram efetuados na origem, e na importação para o Protheus eles não devem ser recalculados e alterados. Para que esses valores sejam respeitados na importação, basta fazer o procedimento contrário ao item comentado anteriormente Automático, ou seja, informar as referência dos impostos e enviar, na primeira posição do array do item a referência do TES do respectivo item.
...
| Bloco de código | ||||||
|---|---|---|---|---|---|---|
| ||||||
#INCLUDE "TBICONN.CH"
USER Function MA920AUT()
Local aCabec := {}
Local aItens := {}
Local aLinha := {}
Local cDoc := "000059"
PRIVATE lMsErroAuto := .F.
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//| Abertura do ambiente |
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "XIFIS26" MODULO "FIS" TABLES "SF2","SD2","SA1","SA2","SB1","SB2","SF4","SED","SE1"
//Montagem da capa do documento fiscal
aadd(aCabec,{"F2_TIPO" ,"N"})
aadd(aCabec,{"F2_FORMUL" ,"S"})
aadd(aCabec,{"F2_DOC" ,cDoc})
aadd(aCabec,{"F2_SERIE" ,"AUT"})
aadd(aCabec,{"F2_EMISSAO",dDataBase})
aadd(aCabec,{"F2_CLIENTE","SP0001"})
aadd(aCabec,{"F2_LOJA" ,"01"})
aadd(aCabec,{"F2_ESPECIE","NF"})
aadd(aCabec,{"F2_COND","001"})
aadd(aCabec,{"F2_DESCONT",0})
aadd(aCabec,{"F2_FRETE",0})
aadd(aCabec,{"F2_SEGURO",0})
aadd(aCabec,{"F2_DESPESA",0})
//Os valores de impostos somente devem ser informados caso NAO deva ser efetuado o calculo
// automatico pelas rotinas fiscais do sistema.
//Normalmente as referencias de impostos sao passadas quando a importacao automatica vem
// de uma integracao com outro sistema, onde todos os valores jah foram calculados e
// NAO podem ser alterados.
aAdd(aCabec,{'F2_BASEICM',100,})
//Base
aAdd(aCabec,{'F2_BASEIPI',40,})
//Base
aAdd(aCabec,{'F2_VALICM',10,})
//Valor imposto
aAdd(aCabec,{'F2_VALIPI',4,})
//Valor imposto
//Montagem dos itens do documento fiscal
aLinha := {}
aadd(aLinha,{"D2_COD" ,"PA0000000000000000000000000001",Nil})
aadd(aLinha,{"D2_QUANT",1,Nil})
aadd(aLinha,{"D2_PRCVEN",100,Nil})
aadd(aLinha,{"D2_TOTAL",100,Nil})
aadd(aLinha,{"D2_TES","515",Nil})
//O mesmo tratamento para os impostos comentados acima, vale para os itens tambem. Portanto soh
// deve ser utilizado quando NAO houver necessidade que o sistema calcule automaticamente.
aAdd(aLinha, {'D2_IPI ',2,})
//Aliquota
aAdd(aLinha, {'D2_PICM ',2,})
//Aliquota
aAdd(aLinha, {'D2_BASEIPI',40,})
//Base
aAdd(aLinha, {'D2_BASEICM',100,})
//Base
aAdd(aLinha, {'D2_VALIPI ',4,})
//Valor imposto
aAdd(aLinha, {'D2_VALICM ',10,})
//Valor imposto
aadd(aItens,aLinha)
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//| Teste de Inclusao |
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
MSExecAuto ({|x,y| MATA920(aCabec,aItens)}, aCabec, aItens, 3)
If !lMsErroAuto
ConOut("Incluido com sucesso! "+cDoc)
Else
ConOut("Erro na inclusao!")
EndIf
ConOut("Fim : "+Time())
RESET ENVIRONMENT
Return .T.
|
...
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas