Histórico da Página
Índice
01.
...
Visão Geral
A classe TCIWritten (Tax Configurator Integration Written) foi desenvolvida para viabilizar o acesso aos dados gravados nas tabelas F2D (Tributos Genéricos Calculados)e CJ3 (Tabela Escrituracao por item) do Configurador de Tributos (FISA170) de uma forma dinâmica e intuitiva.
Este documento tem o objetivo de demonstrar o funcionamento da classeTCIWritten
...
e seus os métodos.
02.
...
Introdução
A classe TCIWritten facilita a recuperação de dados específicos das tabelas F2D e CJ3 utilizando métodos que permitem o acesso aos registros por meio de IDs. O retorno dos dados é estruturado no formato JSON, tornando-o fácil de manipular e integrar com outras partes de uma aplicação.
03. Como Usar
Para utilizar a classe, instancie um objeto da classe TCIWritten, utilizando namespace totvs.protheus.backoffice.fiscal.tciclass e utilize os métodos disponíveis para informar o ID (ou IDs) dos registros que deseja obter. Os dados serão retornados no formato JSON.
Dica | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||
Para mais informações sobre o uso de namespaces, consulte o manual Namespace. Classes em TLPP que herdam de classe com namespace precisam utilizar o namespace na declaração da classe ou utilizar o namespace no programa que executa a chamada da classe. Para fontes escritos em TLPP, pode adicionar o namespace no início do arquivo fonte. Por exemplo:
Para fontes escritos em ADVPL deve ser utilizado por extendo o namespace + classe.
|
04. Métodos
New()
Descrição
O construtor da classe. Inicializa um novo objeto da classe TCIWritten.
Exemplo de implementação
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
oDados := TCIWritten():New() |
SetId()
Descrição
Define os IDs dos registros que se deseja obter os dados. Pode ser um único ID ou uma lista de IDs.
Parâmetros
- ids (array): Lista de IDs dos registros.
Exemplo de implementação
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
// Definindo um único ID
aIds := {"369ca132-2b3b-ac96-6b78-3247afcc2219"}
|
...
Utilizando os métodos disponíveis deve-se informar o ID (ou IDs) que se deseja obter os dados, feito isso será retornado o dado em tipo caractere estruturado como Json.
03. MÉTODOS
New()
New() é o método construtor da classe TCIWritten.
Exemplo de implementação
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
Function Exemplo()
oDados := JsonObject():New()
oDados := TCIWritten():New()
return
|
SetId()
O método SetId() serve para informa o Id ou Id's que deseja obter as informações.
Exemplo de implementação
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
Function Exemplo()
oDados := JsonObject():New()
aIds := {"369ca132-2b3b-ac96-6b78-3247afcc2219","a5dcda40-d145-28d1-c57f-1047e15ce1fe"}
oDados := TCIWritten():New()
oDados:SetId(aIds)
return |
GetDataId()
O método GetDataId() serve para retornar os dados obtidos das tabelas F2D e CJ3 do ID(s) solicitado através do método SetId()
Exemplo de implementação
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
Function Exemplo() oDados := JsonObject():New() aIds := {"ec451397-7b97-8114-a231-74a1490e1417"} cResponse := "" oDados := TCIWritten():New() oDados:SetId(aIds) cResponse := oDados:GetDataId() return cResponse |
Informações | ||
---|---|---|
| ||
Para o correto funcionamento do método GetDataId() é imprescindível informar o(s) ID(s) que deseja os dados através do método SetId(), caso contrário será retornado um "erro - Necessita informar Id" |
Exemplo de retorno GetDataId()
// Definindo múltiplos IDs
aIds := {"369ca132-2b3b-ac96-6b78-3247afcc2219","a5dcda40-d145-28d1-c57f-1047e15ce1fe"}
oDados := TCIWritten():New()
oDados:SetId(aIds) |
GetDataId()
Descrição
Recupera os dados dos registros definidos pelos IDs.
Retorno
- json: Dados dos registros no formato JSON.
Exemplo de implementação
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
aIds := {"ec451397-7b97-8114-a231-74a1490e1417"}
cResponse := ""
oDados := TCIWritten():New()
oDados:SetId(aIds)
cResponse := oDados:GetDataId() |
Informações | ||
---|---|---|
| ||
Para o correto funcionamento do método GetDataId() é imprescindível informar o(s) ID(s) que deseja os dados através do método SetId(), caso contrário será retornado uma mensagem: "erro - Necessita informar Id" |
Exemplo de retorno GetDataId()
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"dados_Id" | ||||||
Bloco de código | ||||||
| ||||||
{
"dados_Id": {
"ec451397-7b97-8114-a231-74a1490e1417": {
"TRIB01-XIFIS26": {
"filial": "XIFIS26",
"tributo": "ICMS",
"base_tributo ": 12130.8,
"aliquota_tributo": 18,
"valor_tributo": 2183.54,
"valor_urf": 0,
"mva": 0,
"valor_pauta": 0,
"percentual_majora": 0,
"indice_aux_majora": 0,
"tributo_majora": "",
"aliquota_majora": 0,
"valor_majora": 0,
"ded_dependentes": 0,
"dados_escriturados": {
"filial": "XIFIS26",
"codigo_tributo": "TRIB01",
"valor_tributado": 0,
"cst": "90",
"valor_isento": 0,
"valor_outros": 12130.8,
"valor_nao_tributado": 0,
"valor_diferido": 0,
"valor_majorado": 0,
"perc_majorado": 0,
"perc_diferido": 0,
"perc_reducao": 0,
"valor_pauta": 0,
"mva": 0,
"ind_aux_mva": 0,
"Ind_aux_majora": 0,
"codigo_tab_cst": "000001",
"valor_base_original": 0
}
},
"TRIB02-XIFIS26": {
"filial": "XIFIS26",
"tributo": "IPI",
"base_tributo ": 11028,
"aliquota_tributo": 10,
"valor_tributo": 1102.8,
"valor_urf": 0,
"mva": 0,
"valor_pauta": 0,
"percentual_majora": 0,
"indice_aux_majora": 0,
"tributo_majora": "",
"aliquota_majora": 0,
"valor_majora": 0,
"ded_dependentes": 0,
"dados_escriturados": {
"filial": "XIFIS26",
"codigo_tributo": "TRIB02",
"valor_tributado": 0,
"cst": "49",
"valor_isento": 0,
"valor_outros": 11028,
"valor_nao_tributado": 0,
"valor_diferido": 0,
"valor_majorado": 0,
"perc_majorado": 0,
"perc_diferido": 0,
"perc_reducao": 0,
"valor_pauta": 0,
"mva": 0,
"ind_aux_mva": 0,
"Ind_aux_majora": 0,
"codigo_tab_cst": "000003",
"valor_base_original": 0
}
},
"TRIB03-XIFIS26": {
"filial": "XIFIS26",
"tributo": "PIS",
"base_tributo ": 11028,
"aliquota_tributo": 1.65,
"valor_tributo": 181.96,
"valor_urf": 0,
"mva": 0,
"valor_pauta": 0,
"percentual_majora": 0,
"indice_aux_majora": 0,
"tributo_majora": "",
"aliquota_majora": 0,
"valor_majora": 0,
"ded_dependentes": 0,
"dados_escriturados": {
"filial": "XIFIS26",
"codigo_tributo": "TRIB03",
"valor_tributado": 181.96,
"cst": "70",
"valor_isento": 0,
"valor_outros": 0,
"valor_nao_tributado": 0,
"valor_diferido": 0,
"valor_majorado": 0,
"perc_majorado": 0,
"perc_diferido": 0,
"perc_reducao": 0,
"valor_pauta": 0,
"mva": 0,
"ind_aux_mva": 0,
"Ind_aux_majora": 0,
"codigo_tab_cst": "000005",
"valor_base_original": 0
}
},
"TRIB04-XIFIS26": {
"filial": "XIFIS26",
"tributo": "COF",
"base_tributo ": 11028,
"aliquota_tributo": 7.6,
"valor_tributo": 838.13,
"valor_urf": 0,
"mva": 0,
"valor_pauta": 0,
"percentual_majora": 0,
"indice_aux_majora": 0,
"tributo_majora": "",
"aliquota_majora": 0,
"valor_majora": 0,
"ded_dependentes": 0,
"dados_escriturados": {
"filial": "XIFIS26",
"codigo_tributo": "TRIB04",
"valor_tributado": 838.13,
"cst": "70",
"valor_isento": 0,
"valor_outros": 0,
"valor_nao_tributado": 0,
"valor_diferido": 0,
"valor_majorado": 0,
"perc_majorado": 0,
"perc_diferido": 0,
"perc_reducao": 0,
"valor_pauta": 0,
"mva": 0,
"ind_aux_mva": 0,
"Ind_aux_majora": 0,
"codigo_tab_cst": "000006",
"valor_base_original": 0
}
}
}
}
} |
Descrição das propriedades contidas no tributo
Propriedade | Tipo | Descrição |
---|---|---|
filial | caractere | Filial da operação |
tributo | caractere | Sigla do tributo |
base_tributo | número | Valor da base do tributo |
aliquota_tributo | número | Alíquota do tributo |
valor_tributo | número | Valor do tributo |
valor_urf | número | Valor da URF |
mva | número | Valor do MVA |
valor_pauta | número | Valor pauta |
percentual_majora | número | Percentual majorado |
indice_aux_majora | número | Índice auxiliar majoração |
tributo_majora | caractere | Tributo majorado |
aliquota_majora | número | Alíquota majorada |
valor_majora | número | Valor majorado |
ded_dependentes | número | Dedução por dependentes |
Descrição das propriedades contidas em dados escriturados
Atributo | Tipo | Descrição |
---|---|---|
Filial | caractere | Filial da operação |
valor_tributado | número | Valor tributado |
cst | caractere | CST |
valor_isento | número | Valor isento |
valor_outros | número | Valor outros |
valor_nao_tributado | número | Valor não tributado |
valor_deferido | número | Valor deferido |
valor_majorado | número | Valor majorado |
perc_majorado | número | Percentual majorado |
perc_diferido | número | Percentual diferimento |
perc_redução | número | Percentual redução |
valor_pauta | número | Valor pauta |
mva | número | MVA |
ind_aux_mva | número | Índice auxiliar MVA |
ind_aux_majora | número | Índice auxiliar majorado |
codigo_tab_cst | caractere | Cod. Tabela CST |
valor_base_original | número | Valor base original |
destroy()
O método destroy() vai limpar tudo que estiver em memória da classe TCIWritten
...
_base_original | número | Valor base original |
Destroy()
Descrição
Libera os recursos utilizados pela instância da classe TCIWritten.
Exemplo de implementação
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
aIds := {"369ca132-2b3b-ac96-6b78-3247afcc2219","a5dcda40-d145-28d1-c57f-1047e15ce1fe"}
cResponse := ""
oDados := TCIWritten():New()
oDados:SetId(aIds)
cResponse := oDados:GetDataId()
oDados:destroy() |
Aviso | ||
---|---|---|
| ||
Todos os exemplos demonstrados nesta documentação são fictícios, criados com intuito de orientar, cabendo ao desenvolvedor aplicar os conceitos demonstrados da forma que atenda plenamente as necessidades da operação. |
05. Exemplo Completo de Implementação
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
using totvs.protheus.backoffice.fiscal.tciclass Function Exemplo() Local aIds as array Local cResponse as character Local oDados as object Function Exemplo() oDados := JsonObject():New() aIds := {"369ca132ec451397-2b3b7b97-ac968114-6b78a231-3247afcc2219","a5dcda40-d145-28d1-c57f-1047e15ce1fe"} 74a1490e1417"} cResponse := "" oDados := TCIWritten():New() oDados:SetId(aIds) cResponse := oDados:GetDataId() oDados:destroy() return cResponse | ||||||
Aviso | ||||||
| ||||||
Todos os exemplos demonstrados nesta documentação são fictícios, criados com intuito de orientar, cabendo ao desenvolvedor aplicar os conceitos demonstrados da forma que atenda plenamente as necessidades da operação.
Return cResponse |