Histórico da Página
...
| Bloco de código | ||||
|---|---|---|---|---|
| ||||
User Function ExecM910()
Local aCabec := {}
Local aItens := {}
Local aLinha := {}
Local jId := jsonObject():New()
Local jPropri := jsonObject():New()
//Local nX := 0
//Local nY := 0
Local cDoc := " 900001"
PRIVATE lMsErroAuto := .F.
//--Abertura do ambiente --//
PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "XIFIS26" MODULO "FIS" TABLES "SF1","SD1","SA1","SA2","SB1","SB2","SF4","SED","SE1"
//--Monta a capa do documento fiscal--//
aadd(aCabec, {"F1_TIPO" , "N"})
aadd(aCabec, {"F1_DOC" , cDoc})
aadd(aCabec, {"F1_SERIE" , "001"})
aadd(aCabec, {"F1_EMISSAO", dDataBase})
aadd(aCabec, {"F1_FORNECE", "SP0002"})
aadd(aCabec, {"F1_LOJA" , "01"})
aadd(aCabec, {"F1_ESPECIE", "SPED"})
aadd(aCabec, {"F1_COND" , "001"})
aadd(aCabec, {"F1_DESCONT", 0})
aadd(aCabec, {"F1_FRETE" , 0})
aadd(aCabec, {"F1_SEGURO" , 0})
aadd(aCabec, {"F1_DESPESA", 0})
//--Montagem dos itens do documento fiscal--//
aadd(aLinha,{"D1_ITEM" ,"0001",Nil})
aadd(aLinha,{"D1_COD" ,"PA0000000000000000000000000002",Nil})
aadd(aLinha,{"D1_QUANT",1,Nil})
aadd(aLinha,{"D1_VUNIT",1000,Nil})
aadd(aLinha,{"D1_TOTAL",1000,Nil})
aadd(aLinha,{"D1_TES","00C",Nil})
//--Montagem do Json de Tributos
jPropri["base_valor"] := 1000
jPropri["base_quantidade"] := 0
jPropri["base_um"] := ""
jPropri["aliquota"] := 18
jPropri["valor"] := 180
jPropri["CST"] := "000"
jPropri["CCT"] := "003"
jPropri["vl_tributado"] := 6.55
jPropri["vl_isento"] := 0.00
jPropri["vl_outros"] := 0.00
jPropri["vl_diferido"] := 0.00
jPropri["pc_diferido"] := 0
jPropri["pc_reducao_base"] := 0
jPropri["base_original"] := 0
jPropri["pc_reducao_aliq"] := 0
jPropri["aliquota_original"] := 0.00
jId["000062000060"] := jPropri
jPropri := jsonObject():New()
jPropri["base_valor"] := 1000
jPropri["base_quantidade"] := 0
jPropri["base_um"] := ""
jPropri["aliquota"] := 18
jPropri["valor"] := 180
jId["000021"] := jPropri
//--Inclusão do JSON dos tributos junto com a propriedade TRIBUTOS (obrigatória)
aadd(aLinha, {"TRIBUTOS", jId})
aadd(aItens,aLinha)
//--Teste de inclusao do documento fiscal--//
MSExecAuto({|x,y,z| mata910(x,y,z)}, aCabec, aItens, 3)
If !lMsErroAuto
Conout("Incluido com sucesso! "+cDoc)
Else
Conout("Erro na inclusao do documento!")
EndIf
ConOut("Fim do processamento!"+ Time())
RESET ENVIRONMENT
return |
No exemplo demonstrado acima estão sendo utilizados os Id's 000060 e 000021, ou seja, o produto PA0000000000000000000000000002 terá os tributos IBS ESTADUAL e ICMS gravados. Para mais informações sobre os ID's Totvs consulte aqui.
Estrutura do JSON
Novos Tributos
...
| Bloco de código | ||||
|---|---|---|---|---|
| ||||
{
"000062000060": {
"base_valor": 0,
"base_quantidade": 10000,
"base_um": "UM",
"aliquota": 10,
"valor": 500,
"CST": "000",
"CCT": "003",
"vl_tributado": 6.55,
"vl_isento": 0.00,
"vl_outros": 0.00,
"vl_diferido": 0.00,
"pc_diferido": 0,
"pc_reducao_base": 0,
"base_original": 0,
"pc_reducao_aliq": 0,
"aliquota_original": 0.00
}
} |
...
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas