Versões comparadas

Chave

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


...

ÍNDICE

Índice
excludeCONTEÚDO


01. 

...

VISIÓN GENERAL

Aviso
titleAtenção

Esta atualização será disponibilizada na Expedição contínua de DEZEMBRO/2025 e o pacote poderá ser acessado através dos links disponibilizados na documentação Pacotes de Atualização actualización se pondrá a disposición en la Expedición continua de DICIEMBRE/2025 y al paquete podrá accederse por medio de los enlaces puestos a disposición en la documentación Paquetes de actualización- Fiscal.

Informações sobre a Expedição contínua acessarPara informaciones sobre Expedición continua, acceda a: http://tdn.totvs.com/x/H4uCEw.

Informações Para más información sobre o el compatibilizador UPDDISTR acessaracceda a: Atualizador Actualizador de dicionário e diccionario y base de dados datos - UPDDISTR.

Esta documentação tem o objetivo de demonstrar a Função Esta documentación tiene el objetivo de mostrar la Función TaxOpJson, encapsulando a classe la clase TaxOperandIntegrator, que recepciona recibe tributos calculados por outras rotinasotras rutinas, que não o no es el motor de calculo do del Protheus, Matxfis.

A Função TaxOpJson foi desenvolvida facilitar a implementação da classe TaxOperandIntegrator em rotinas que permitam a utilização de ExecAuto. Rotinas essas que fazem a recepção de dados de itensLa Función TaxOpJson fue desarrollada para facilitar la implementación de la clase TaxOperandIntegrator en rutinas que permitan la utilización de ExecAuto. Estas rutinas realizan la recepción de datos de ítems.

Informações
titleInformaçãoInformación

A função La función TaxOpJson encapsula a classe la clase TaxOperandIntegrator, sendo assim, segue todos os princípios da classe para o funcionamento correto, para mais informações consulte a documentação da classe aquide esta manera, sigue todos los principios de la clase para el funcionamiento correcto, para más informaciones consulte la documentación de la clase aquí.

02. 

...

CÓMO UTILIZAR

A La Function recepciona um recibe un json, em um en un array multidimensional com a propriedade con la propiedad TRIBUTOS:

Bloco de código
languagejs
themeMidnight
titleExemplo Ejemplo de funcionamentofuncionamiento
User Function teste() 
    Local cIdTrib1   := "000060"
    Local cIdTrib2   := "000021"
    Local jId        := jsonObject():New()
    Local jPropri 	 := jsonObject():New()
    Local aItens     := {}
    Local aLinha     := {}
    Local lRet       := .F.
                
    //--MontagemElaboración dodel JSON de tributos
    jTributo["base_valor"]        := 1000
    jTributo["base_quantidade"]   := 0
    jTributo["base_um"]           := ""
    jTributo["aliquota"]          := 10
    jTributo["valor"]             := 500

    jTributo["CST"]               := "000"
    jTributo["CCT"]               := "003"
    jTributo["vl_tributado"]      := 6.55
    jTributo["vl_isento"]         := 0.00
    jTributo["vl_outros"]         := 0.00
    jTributo["vl_diferido"]       := 0.00
    jTributo["pc_diferido"]       := 0
    jTributo["pc_reducao_base"]   := 0
    jTributo["base_original"]     := 0
    jTributo["pc_reducao_aliq"]   := 0
    jTributo["aliquota_original"] := 0.00
    
    jIdTrib[cIdTrib1] := jTributo
    
    FreeObj(jTributo)
    
    jTributo := JsonObject():New()

    jTributo["base_valor"]        := 20000
    jTributo["base_quantidade"]   := 0
    jTributo["base_um"]           := ""
    jTributo["aliquota"]          := 18
    jTributo["valor"]             := 500

    jIdTrib[cIdTrib2] := jTributo

    aadd(aLinha, {'TRIBUTOS', jIdTrib}) //--AdicionaIncluye ala propriedadepropiedad TRIBUTOS ey oel JSON comcon oslos IDS de doslos tributos
    aadd(aItens, aLinha)

    lRet := TaxOpJson(aItens) //-- PassaRepasa oel array bidimensional para ala funçãofunción

return

No exemplo demonstrado acima serve apenas para entendimento da estrutura que precisa ser enviada para a função. 

PARAMETROS

En el ejemplo mostrado anteriormente sirve solamente para entendimiento de la estructura que debe enviarse a la función. 

PARÁMETROS

Descrição

Orden 

Parámetro

Tipo

Descripción

Ordem ParâmetroTipo

01

ArrayItens

Array

Array bidimensional

com a propriedade TRIBUTOS e o Json contendo os ID's e as propriedades obrigatórias dos tributos cadastrados no Configurador de Tributos, com Operando de Integração.

RETORNO

con la propiedad TRIBUTOS y el Json con los ID y las propiedades obligatorias de los tributos registrados en el Configurador de tributos, con Operando de integración.

DEVOLUCIÓN

La Función devuelve A Função retorna .T. para informar que houve a recepção pela hubo la recepción por TaxOperandIntegrator, e um y un .F. para caso haja alguma problema, mas o status de detalhado do que ocorreu no processamento dos dados dos tributos será apresentado via si hubiera algún problema, pero el estatus de detalle de lo que ocurrió en el procesamiento de los datos de los tributos se mostrará vía Log.

     

...

MENSAJES DE LOG

Todas as respostas sobre o processamento dos dados dos tributos serão apresentados via Log, sendolas respuestas sobre el procesamiento de los datos de los tributos se mostrarán vía Log, siendo:

WARN - Mensagens Mensajes de erros errores de estrutura do estructura del JSON, propriedades incorretas na estrutura, propriedades obrigatórias propiedades incorrectas en la estructura, propiedades obligatorias faltantes, falta de Operando de Integração no cadastro do integración en el registro del tributo, tributo não cadastrado no registrado en el Configurador de Tributos, ou utilização fora do contexto da tributos, o utilización fuera del contexto de Matxfis.

Image Modified

INFO - Mensagem de sucesso de recepção dos tributos.

Image Modified

...

EJEMPLO DE

...

IMPLEMENTACIÓN PARA

...

RUTINAS QUE

...

TIENEN EXECAUTO

Abaixo é apresentado um exemplo de implementação na rotina MATA910 para possibilitar que o ExecAuto do MATA910 recepcione os tributos já calculados por outras rotinas.

A continuación se muestra un ejemplo de implementación en la rutina MATA910 para permitir que el ExecAuto del MATA910 cobre los tributos calculados por otras rutinas.

En este caso, el trecho presentado está en la Función No caso, o trecho apresentado esta na Função a910NFiscal:

Bloco de código
languagejs
themeMidnight
...
 		If !MsGetDAuto(aAutoItens,"A910LinOk",{|| A910TudOk()},aAutoCab,aRotina[nOpcx][4])
			nOpc := 0
		ElseIf fisFindFunc("TaxOpJson")
			//AvaliaEvalúa sesi Trata tributos comcon Operando de integración Integraçãoen noel Configurador de tributos Tributospor medio atravésde dala classeclase TaxOperandIntegrator
	   ---> TaxOpJson(aAutoItens)
		EndIf
...

Note Observe que a Função TaxOpJson recebe o la Función TaxOpJson recibe el array aAutoItens, sem a necessidade de tratamentos prévios, pois no próprio aAutoItens está contido a propriedade TRIBUTOS e o JSON com os IDS dos tributos contendo as propriedades obrigatórias, pode-se consultar também a montagem do aAutoItens na própria documentação do ExecAuto do sin la necesidad de tratamientos previos, pues en el propio aAutoItens está contenida la propiedad TRIBUTOS y el JSON con los IDS de los tributos conteniendo las propiedades obligatorias, se puede consultar también la elaboración del aAutoItens en la propia documentación del ExecAuto del Mata910. 

03. DOCUMENTOS

...

RELACIONADOS

...

...

...

...

...

...

...

...

...

...