Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

01. VISÃO GERAL

A classe TCIProcessing (Tax Configurator Integration Processing) foi desenvolvida para viabilizar o acesso aos dados em processamento do Configurador de Tributos (FISA170) de uma forma dinâmica e intuitiva, desprendendo o fluxo dos dados de condições impostas pela tabela SF4 (TES). 

...

Bloco de código
languagejs
themeMidnight
titleExemplo método New()
using totvs.protheus.backoffice.fiscal.tciclass

Function Exemplo()
	Local oDados := JsonObject():New()
	
as Json
 	oDados := TCIPrecessingTCIProcessing():New()
Return

...

setDataItems()

O método setDataItenssetDataItems() serve para acrescentar ao processamento dos dados retornados pelo método GetDataItensGetDataItems() detalhes das configurações realizadas pelo usuário no Configurador de Tributos (FISA170). As configurações que podem ser obtidas são  "regras_base", "regras_aliquiota", "regras_escrituracao" e "detalhes_livro".O uso correto deste método é antes do consumo do método GetDataItens GetDataItems().

Informações
titleInformação

O uso do método setDataItens setDataItems se faz necessário apenas quando há a necessidade obter dados de cadastros no Configurador de Tributos (FISA170), não sendo obrigatório para a obtenção dos tributos dos itens.

Exemplo de utilização

...

setDataItems()

Bloco de código
languagejserl
themeMidnight
titleExemplo de utilização setDataItenssetDataItems()
using totvs.protheus.backoffice.fiscal.tciclass

Function Exemplo()
	Local oDados := JsonObject():Newas json
	Local cRetorno
	
	oDados := TCIPrecessingTCIProcessing():New()
	oDados:setDataItenssetDataItems({"regras_base", "regras_aliquiotaaliquota", "regras_escrituracao", "detalhesdetalhe_livro"})
	
	cRetorno := oDados:GetDadaItensGetDadaItems()

Return cRetorno

GetDataItems()

...

Bloco de código
languagejs
themeMidnight
titleExemplo de utilização GetDataItensGetDataItems()
using totvs.protheus.backoffice.fiscal.tciclass
Function Exemplo()
	Local oDados := JsonObject():New()as json
	Local cRetorno := ""
	
	oDados := TCIPrecessingTCIProcessing():New()
	cRetorno := oDados:GetDataItems()

Return cRetorno 

...

Bloco de código
languagejs
themeMidnight
titleExemplo de retorno GetDataItensGetDataItems()
{
  "dados_itens": {
    "1": {
      "TRIB01": {
        "cod_regra": "TRIB01",
        "desc_regra": "REGRA ICMS CST 00 TRIBUTADO",
        "base_trib": 100,
        "aliq_trib": 18,
        "val_trib": 18,
        "regr_financ": "",
        "id_cadastro": "a1c7cdbc-d6a3-3f8f-b00c-f95c2b6b8202",
        "config_arred": true,
        "ident_trib": "000021",
        "formula_npi": "BAS:TRIB01 ALQ:TRIB01 *",
        "id_npi": "0e5b3e42-9a2b-5cf1-0f4a-0a17630aa57b",
        "cod_cabec_npi": "VAL:TRIB01",
        "margem_mva": 0,
        "mva": false,
        "mva_aux": 0,
        "val_pauta": 0,
        "pauta": false,
        "perc_majora": 0,
        "majorado": false,
        "ind_aux_majora": 0,
        "cod_trib_majora": "",
        "ded_dependentes": 0,
        "cod_regr_tab_progre": "",
        "cod_regr_ded_depen": "",
        "aliq_servico": 0,
        "aliq_servico_lei_comp": 0,
        "formula_calc_isento": "BAS:TRIB01",
        "formula_calc_outros": "BAS:TRIB01",
        "cod_regra_guia": "",
        "val_zero": false,
        "val_maximo": 0,
        "val_minimo": 0,
        "operador_maximo": "",
        "operador_minimo": ""
      }
	}
}

...

PropriedadeTipoDescrição
cod_regracaractereCódigo da regra fiscal
desc_regracaractereDescrição da regra
base_tribnúmeroBase de cálculo do tributo
aliq_tribnúmeroAlíquota  do tributo
val_tribnúmeroValor do tributo
retencaobooleanIndica se o tributo tem retenção
regr_financcaractereCódigo da regra financeira
id_cadastrocaractereId Cadastro Tributo
conf_arredbooleanConfig. Arredondamento
ident_tribcaractereIdentificador do Tributo
desc_tribcaractereDescrição do tributo 
formula_npicaractereFórmula convertida em NPI
id_npicaractereId cabeçalho
cod_cabec_npicaractereCódigo do Cabeçalho
mvanúmeroMargem de Valor Agregado
mva_auxnúmeroíndice auxiliar MVA
val_pautanúmeroValor da pauta
perc_majoranúmeroPercentual majoração
ind_aux_majoranúmeroÍndice Auxiliar Majoração
cod_trib_majoracaractereCódigo do que majora o tributo atual
ded_dependentesnúmeroDedução por dependentes
cod_regr_tab_progrecaractereCódigo da regra de tabela progressiva
aliq_serviconúmeroAliquota padrão código lei complementar
cod_regr_ded_depencaractereCódigo da regra dedução dependentes
aliq_servico_lei_compnúmeroAlíquota de serviço da lei complemetar
formula_calc_isentocaractereFórmula de cálculo Isento
formula_calc_outroscaractereFórmula de cálculo outros
formula_calculocaractereFórmula do calculo que compõe o valor do Tributo
cod_regra_guiacaractereCódigo da regra de Guia
val_zerobooleanValor Zero na Base ou Alíquota
val_maximonúmeroValor máximo definido para o tributo
val_minimonúmeroValor mínimo definido para o tributo
operador_maximocaractereOperador de limite de valor máximo do tributo
operador_minimocaractereOperador de limite de valor mínimo do tributo

Exemplo de retorno

...

GetDataItems() com

...

setDataItems() contendo "regras_base", "regras_

...

aliquota", "regras_escrituracao"

...

, "

...

detalhe_livro".

Bloco de código
languagejs
themeMidnight
titleExemplo de retorno GetDataItens GetDataItems com setDataItenssetDataItems
{
  "dados_itens": {
    "1": {
      "TRIB01": {
        "cod_regra": "TRIB01",
        "desc_regra": "REGRA ICMS CST 00 TRIBUTADO",
        "base_trib": 100,
        "aliq_trib": 18,
        "val_trib": 18,
        "regr_financ": "",
        "id_cadastro": "b2355baf-baef-8f3c-877a-b0b81890f4f6",
        "config_arred": true,
        "ident_trib": "000021",
        "formula_npi": "BAS:TRIB01 ALQ:TRIB01 *",
        "id_npi": "a720bf23-c24d-3ed8-4822-e78e7d907d8b",
        "cod_cabec_npi": "VAL:TRIB01",
        "margem_mva": 0,
        "mva": false,
        "mva_aux": 0,
        "val_pauta": 0,
        "pauta": false,
        "perc_majora": 0,
        "majorado": false,
        "ind_aux_majora": 0,
        "cod_trib_majora": "",
        "ded_dependentes": 0,
        "cod_regr_tab_progre": "",
        "cod_regr_ded_depen": "",
        "aliq_servico": 0,
        "aliq_servico_lei_comp": 0,
        "formula_calc_isento": "BAS:TRIB01",
        "formula_calc_outros": "BAS:TRIB01",
        "cod_regra_guia": "",
        "val_zero": false,
        "val_maximo": 0,
        "val_minimo": 0,
        "operador_maximo": "",
        "operador_minimo": "",
        "regras_base": {
          "cod_regr_base": "BAS002",
          "origem_valor": "01",
          "acao_desconto": "2",
          "acao_frete": "3",
          "acao_seguro": "3",
          "acao_despesa": "3",
          "acao_icms_deson": "1",
          "acao_icms_ret": "1",
          "perc_reducao": 0,
          "tipo_reducao": "",
          "um_base": "",
          "id_cadastro": "71380195-0f8e-14e1-3620-7c53beb48b03",
          "formula_base": "B:BAS002",
          "id_formula": "6cf6c049-b177-0623-6b76-afc08e78c922",
          "cod_formula": "BAS:TRIB01"
        },
        "regras_aliquota": {
          "cod_regr_aliquota": "ALQ001",
          "origem_aliquota": "04",
          "tipo_aliquota": "1",
          "aliquota": 18,
          "cod_urf": "",
          "perc_urf": 0,
          "valor_urf": 0,
          "id_cadastro": "A:ALQ001",
          "id_aliquota": "47f56799-c5e1-c560-7a06-f228d9edbc5c",
          "cod_formula": "ALQ:TRIB01"
        },
        "detalhe_livro": {
          "cst": "00",
          "valor_tributado": 18,
          "valor_isento": 0,
          "valor_outros": 0,
          "valor_nao_tribut": 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,
          "cod_tab_cst": "000001",
          "val_base_original": 0
        },
        "regras_escrituracao": {
          "id_cadastro": "b20ddabf-ba24-358e-8168-2dc0563721a8",
          "incidencia": "1",
          "acao_tot_nf": "1",
          "perc_diferimento": 0,
          "cst": "00",
          "cod_tab_cst": "000001",
          "inc_parc_redu": ""
        }
      },
	}
}

...

Bloco de código
languagejs
themeMidnight
titleRequisição Itens
using totvs.protheus.backoffice.fiscal.tciclass
Function Exemplo()
	Local oDados := JsonObject():New()as json
	Local cRetorno := ""
	
	oDados := TCIPrecessingTCIProcessing():New()
	cRetorno := oDados:GetHeaderData()

Return cRetorno

...

Bloco de código
languagejs
themeMidnight
titleExemplo de utilização do método GetSpreadSheetData()
using totvs.protheus.backoffice.fiscal.tciclass
Function Exemplo()
	Local oDados := JsonObject():New()as json
	Local cRetorno := ""
	
	oDados := TCIPrecessingTCIProcessing():New()
	cRetorno := oDados:GetSpreadSheetData()

Return cRetorno

...

Bloco de código
languagejs
themeMidnight
titleExemplo de utilização do método GetTaxesSubjectToPayment()()
using totvs.protheus.backoffice.fiscal.tciclass
Function Exemplo()
	Local oDados := JsonObject():New()as json
	Local cRetorno := ""
	
	oDados := TCIPrecessingTCIProcessing():New()
	cRetorno := oDados:GetTaxesSubjectToPayment()

Return cRetorno

...

Bloco de código
languagejs
themeMidnight
titleExemplo de utilização GetTaxesSubjectToWithholding()
using totvs.protheus.backoffice.fiscal.tciclass
Function Exemplo()
	Local oDados := JsonObject():New()as json
 	Local cDate    := "20200101"
	Local cRetorno := ""
	
	oDados := TCIPrecessingTCIProcessing():New()
 	oDados:setDateTaxesToWithholding(cDate)
	cRetorno := oDados:GetTaxesSujectToWithholding()

Return cRetorno

...

Bloco de código
languagejs
themeMidnight
titleExemplo de utilização GetAllData()
using totvs.protheus.backoffice.fiscal.tciclass
Function Exemplo()
	Local oDados := JsonObject():New()as json
 	Local cDate    := "20200101"
	Local cRetorno := ""
	
	oDados := TCIPrecessingTCIProcessing():New()
 	oDados:setDateTaxesToWithholding(cDate)
	oDados:setDataItens({"regras_base", "regras_aliquiota", "regras_escrituracao", "detalhes_livro"})
	cRetorno := oDados:GetAllData()

Return cRetorno

...

Bloco de código
languagejs
themeMidnight
titleExemplo de utilização setItems()
using totvs.protheus.backoffice.fiscal.tciclass
Function Exemplo()
	Local oDados := JsonObject():New()as json
	Local aItems := {1, 3, 5}
 	Local cRetorno := ""
	
	oDados := TCIPrecessingTCIProcessing():New()
 	oDados:setItems(aItems) 
	oDados:setDataItenssetDataItems({"regras_base", "regras_aliquiota", "regras_escrituracao", "detalhes_livro"})
	cRetorno := oDados:GetDataItems()

Return cRetorno

...

Bloco de código
languagejs
themeMidnight
titleExemplo de utilização método destroy()
Function Exemplo()
	Local oDados := JsonObject():New()as json
	Local aItems := {1, 3, 5}
 	Local cRetorno := ""
	
	oDados := TCIPrecessingTCIProcessing():New()
 	oDados:setItems(aItems) 
	oDados:setDataItenssetDataItems({"regras_base", "regras_aliquiota", "regras_escrituracao", "detalhes_livro"})
	cRetorno := oDados:GetDataItems()

	oDados:destroy()

Return cRetorno

...