Documento de API

Produto:

Datasul

Ocorrência:

Documentação de API

Nome Físicoprgfin/acr/acr779zc


Objetivo

Atualmente existe a possibilidade de Integração entre Faturamento x ACR onde, ao criar e atualizar uma Nota Fiscal, é possível informar as Duplicatas que serão geradas no ACR. O objetivo da Integração dos Módulos Recebimento x ACR é justamente movimentar esses títulos que foram gerados quando ocorrer uma devolução de Mercadoria, através de um Acerto de Valor a Crédito, uma alteração da Situação do Título para Devolvido ou a geração de uma Antecipação. A API tem como objetivo receber os títulos (duplicatas) que serão movimentados a partir da(s) Nota(s) de Crédito(s) gerada(s).


Funcionamento

A execução na forma persistente padrão para essa API é a execução persistente.

A sintaxe para executar a API/BO em modo persistente é:

def var v_hdl_aux as Handle no-undo.


run prgfin/acr/acr779zc.py persistent set v_hdl_aux.

run pi_main_code_api_integracao_recebimento_acr_6(input  table tt-tot-tit,
                                                      input  table tt-titulo,
                                                      input  table tt-un-devol,
                                                      output table tt_log_erros_atualiz,
                                                      input  table tt-impto-retid-fat,
                                                      input  table tt-devol-trib-rtc).

delete procedure v_hdl_aux.

A variável denominada h-handle irá receber o “handle” do programa, permitindo o acesso aos “métodos” internos da API.

Na forma padrão, realiza-se a chamada através de um comando RUN normal, passando-se as temp-tables carregadas com as informações necessárias.

Os Parâmetros utilizados pelo programa  estão listados abaixo, na ordem que se segue:

Tabelas Temporárias

Nos atributos das tabelas temporárias de entrada e saída:


Tabela Temporária

Descrição

Entrada/Saída

tt-tot-tit

Contém as duplicatas a serem devolvidas.

Entrada


(*) A partir da 5.07A o estabelecimento passa a ter cinco dígitos.

Atributo

Tipo

Formato

Descrição

REC

Obrigatório

Evolução

referencia

character

x(10)

Utilizado para Referencia na criação da Nota de Crédito

X



ep-codigo

character

x(3)

Código da Empresa Externa

X



cod-empresa

character

x(3)

Código da Empresa EMS 5




cod-estabel

character

x(3) / x(5)*

Código do Estabelecimento Externo

X



cod-estab-ems5

character

x(3) / x(5)*

Código do Estabelecimento EMS 5




cod-esp

character

!!

Código da Espécie Externa

X



serie

character

x(5)

Código da Série Externa

X



nr-docto

character

x(16)

Número do Documento Externo

X



cod-emitente

integer

>>>>>9

Código do Emitente

X



tot-saldo

decimal

>>>>>>>,>>9.99

Valor do Saldo em Aberto dos Títulos (Somatório dos tt-titulo.vl-saldo)




tot-baixa

decimal

>>>>>>>,>>9.99

Total a ser baixado (que deve ser rateado entre as várias parcelas)

X



mo-codigo

integer

>9

Código da Moeda Externa da Nota de Crédito que será gerada

X



cotacao-dia

decimal

>>>,>9.99999999

Cotação do Dia utilizada para Nota de Crédito que será gerada

X



dt-trans

date

99/99/9999

Data de Transação utilizada para indicar a Data de Transação e a Data de Emissão da Nota de Crédito que será gerada

X



nr-docto-cr

character

x(16)

Número do Documento Externo da Nota de Crédito que será gerada

X



serie-cr

character

x(5)

Código da Série Externa da Nota de Crédito que será gerada

X



cod-esp-cr

character

!!

Código da Espécie Externa da Nota de Crédito que será gerada

X



tp-codigo

integer

>>9

Código do Tipo Fluxo Financeiro

X



estorn-comis

logical

Sim/Não

Indica se estorna ou não comissão

X



sequencia

integer


Atributo que indica ocorrência única na tabela temporária

X



conta-devol

character

x(17)

Código da Conta de Débito

X



erro

logical

Sim/Não

Indica se ocorreu erro na tradução




serie-nota

character

x(5)

Série da Nota de Devolução

X



nr-docto-nota 

character

x(16)

Número da Nota de Devolução

X



nat-operacao

character

X(6)

Natureza de Operação

X



cod-plano-ccusto

character

X(8)

Plano Centro de Custo




cod-ccusto        

character

X(20)

Centro de Custo




cod-plano-cta-ctbl

character

X(8)

Plano Conta Contábil





def temp-table tt-tot-tit

    field referencia     as character format "x(10)"

    field ep-codigo      as char      format 'x(3)'

    field cod-empresa    as character format "x(3)"

    field cod-estabel    as character format "x(5)"

    field cod-estab-ems5 as character format "x(5)"

    field cod-esp        as character format "!!"

    field serie          as character format "x(5)"

    field nr-docto       as character format "x(16)"

    field cod-emitente   as integer   format ">>>>>9"

    field tot-saldo      as decimal   format ">>>>>>>,>>9.99"

    field tot-baixa      as decimal   format ">>>>>>>,>>9.99"

    field mo-codigo      as integer   format ">9"

    field cotacao-dia    as decimal   format ">>>,>9.99999999"

    field dt-trans       as date      format "99/99/9999"

    field nr-docto-cr    as character format "x(16)"

    field serie-cr       as character format "x(5)"

    field cod-esp-cr     as character format "!!"

    field tp-codigo      as integer   format ">>9"

    field estorn-comis   as logical   format "Sim/Não" /*l_sim_nao*/

    field sequencia      as integer

    field conta-devol    as character format "x(17)"

    field erro           as logical   format "Sim/Não" /*l_sim_nao*/

    field serie-nota     as character format "x(5)"

    field nr-docto-nota  as character format "x(16)"

    field nat-operacao   as character format "x(6)"

    field cod-plano-ccusto   as character format ”x(8)”

    field cod-ccusto         as character format “x(20)”

    field cod-plano-cta-ctbl as character format “x(8)”

    index seq            is primary unique

          sequencia

    index titulo

          serie

          nr-docto

          conta-devol.


Tabela Temporária

Descrição

Entrada/Saída

tt-titulo

Contém as várias parcelas envolvidas da(s) duplicata(s).

Entrada

Atributo

Tipo

Formato

Descrição

REC

Obrigatório

Evolução

sequencia

integer


Atributo que indica de qual duplicata é a parcela em questão

X



parcela

character

x(02)

Código da Parcela Externa da Duplicata

X



vl-saldo

decimal

>>>>>>>,>>9.99

Valor do Saldo em Aberto da parcela em questão




vl-baixa

decimal

>>>>>>>,>>9.99

Valor a ser baixado da parcela em questão




ind-baixa

logical


Indicador para informar se a parcela será baixada ou não





def temp-table tt-titulo

    field sequencia     as  integer

    field parcela       as character format "x(02)"

    field vl-saldo      as decimal   format ">>>>>>>,>>9.99"

    field vl-baixa      as decimal   format ">>>>>>>,>>9.99"

    field ind-baixa     as logical

    index titulo        is primary

          sequencia

          ind-baixa.


Tabela Temporária

Descrição

Entrada/Saída

tt_un_devol


Entrada

Atributo

Tipo

Formato

Descrição

Obrigatório

Evolução

sequencia    

integer

integer

Atributo que indica de qual duplicata é a parcela em questão



parcela      

character

x(02)

Código da Parcela Externa da Duplicata



cod-un       

character

x(03)

Código da unidade de negócio do rateio



vl-aprop-un  

decimal  

>>>>>>>,>>9.99

Valor do rateio na unidade de negócio




def temp-table tt-un-devol

    field sequencia     as  integer

    field parcela       as character format 'x(02)'

    field cod-un        as character format 'x(03)'

    field vl-aprop-un   as decimal   format '>>>>>>>,>>9.99'

    index codigo        is primary

          sequencia

          parcela

          cod-un.


Tabela Temporária

Descrição

Entrada/Saída

tt_log_erros_atualiz

Contém os erros existentes no processo.

Saída


(*) A partir da 5.07A o estabelecimento passa a ter cinco dígitos.

Atributo

Tipo

Formato

Descrição

Obrigatório

Evolução

tta_cod_estab

character

x(3) / x(5)*

Estabelecimento



tta_cod_refer

character

x(10)

Referência



tta_num_seq_refer

integer

>>>9

Sequência



ttv_num_mensagem

integer

>>>>,>>9

Número



ttv_des_msg_erro

character

x(60)

Mensagem Erro



ttv_des_msg_ajuda

character

x(40)

Mensagem Ajuda



ttv_ind_tip_relacto

character

X(15)

Tipo Relacionamento



ttv_num_relacto

integer

>>>>,>>9

Relacionamento




def temp-table tt_log_erros_atualiz no-undo

    field tta_cod_estab                    as character format "x(5)" label "Estabelecimento" column-label "Estab"

    field tta_cod_refer                    as character format "x(10)" label "Referência" column-label "Referˆncia"

    field tta_num_seq_refer                as integer format ">>>9" initial 0 label "Sequência" column-label "Seq"

    field ttv_num_mensagem                 as integer format ">>>>,>>9" label "Número" column-label "Número Mensagem"

    field ttv_des_msg_erro                 as character format "x(60)" label "Mensagem Erro" column-label "Inconsistência"

    field ttv_des_msg_ajuda                as character format "x(40)" label "Mensagem Ajuda" column-label "Mensagem Ajuda"

    field ttv_ind_tip_relacto              as character format "X(15)" label "Tipo Relacionamento" column-label "Tipo Relac"

    field ttv_num_relacto                  as integer format ">>>>,>>9" label "Relacionamento" column-label "Relacionamento".



Tabela Temporária

Descrição

Entrada/Saída

tt-impto-retid-fat

Contém os impostos retidos no faturamento

Entrada

(*) A partir da 5.07A o estabelecimento passa a ter cinco dígitos.

Atributo

Tipo

Formato

Descrição

REC

Obrigatório

Evolução

cod-estabel 

 character

 'x(3)'

Código do Estabelecimento EMS2

X



cod-estab-ems5

 character

 'x(3)' / 'x(3)' *

Código do Estabelecimento EMS5




cod-esp       

 character

 '!!'

Código da Espécie

X



serie         

 character

 'x(5)'

Série

X



nr-docto      

 character

 'x(16)'

Código do Título

X



parcela       

 character

 'x(02)'

Número da Parcela

X



cod-emitente  

 integer  

 '>>>>>'

Código do Cliente

X



idi-tip-impto 

 integer  


Tipo de Imposto (1-PIS,2-COFINS,3-CSLL)

X



vl-impto      

 decimal  

 '>>>>>>>,>>9.99'

Valor Imposto

X




def temp-table tt-impto-retid-fat

    field cod-estabel    as character format 'x(3)'

    field cod-estab-ems5 as character format 'x(5)'

    field cod-esp        as character format '!!'

    field serie          as character format 'x(5)'

    field nr-docto       as character format 'x(16)'

    field parcela        as character format 'x(02)'

    field cod-emitente   as integer   format '>>>>>'

    field idi-tip-impto  as integer

    field vl-impto       as decimal   format '>>>>>>>,>>9.99'

    index documento is primary

          cod-estab-ems5

          serie

          nr-docto

          cod-emitente

          parcela

          cod-esp

          idi-tip-impto.


Tabela Temporária

Descrição

Entrada/Saída

tt-devol-trib-rtc

Contém receber informações dos tributos da reforma tributária (IBS UF, IBS Mun e CBS) oriundos das devoluções rateados por título de origem no contas a receber

Entrada


(*) A partir da 5.07A o estabelecimento passa a ter cinco dígitos.

Atributo

Tipo

Formato

Descrição

REC

Obrigatório

Evolução

cod-estabel

character

x(3) / x(5)*

Código do Estabelecimento Externo

X



cod-estab-ems5

character

x(3) / x(5)*

Código do Estabelecimento EMS 5




cod-esp

character

!!

Código da Espécie Externa

X



serie

character

x(5)

Código da Série Externa

X



nr-docto

character

x(16)

Número do Documento Externo

X



cod-emitente

integer

>>>>>9

Código do Emitente

X



cod-dfecharacterx(60)



ind-tip-tribcharacterx(12)



ind-tip-campo-tribcharacterx(20)



cod-contdo-campocharacterx(50)



cod-chave-aces-docto-fisccharacterx(60)



cod_estab_extcharacterx(8)



cod-ser-docto   characterx(5)



cod-docto-fisccharacterx(16)



val-tot-docto-fiscdecimal>>>,>>>,>>>,>>9.99



val-tot-sem-tribdecimal>>>,>>>,>>>,>>9.99



ind-natur-doctocharacterx(20)



log-cr-presmdologicalSim/Não




def temp-table tt-devol-trib-rtc
    field cod-estabel               as character format 'x(3)'
    field cod-estab-ems5            as character format 'x(5)'
    field cod-esp                   as character format '!!'
    field serie                     as character format 'x(5)'
    field nr-docto                  as character format 'x(16)'
    field parcela                   as character format 'x(02)'
    field cod-emitente              as integer   format '>>>>>'
    field cod-dfe                   as character format 'x(60)'
    field ind-tip-trib              as character format 'x(12)'
    field ind-tip-campo-trib        as character format 'x(20)'
    field cod-contdo-campo          as character format 'x(50)'
    field cod-chave-aces-docto-fisc as character format 'x(60)'
    field cod_estab_ext             as character format 'x(8)'
    field cod-ser-docto             as character format 'x(5)'
    field cod-docto-fisc            as character format 'x(16)'
    field val-tot-docto-fisc        as decimal format '>>>,>>>,>>>,>>9.99' decimals 2
    field val-tot-sem-trib          as decimal format '>>>,>>>,>>>,>>9.99' decimals 2
    field ind-natur-docto           as character format 'x(20)'
    field log-cr-presmdo            as logical format 'Sim/Nao' initial no
    index documento is primary 
          cod-estab-ems5
          cod-esp
          serie
          nr-docto
          parcela
          cod-emitente                    
          cod-dfe
          ind-tip-trib
          ind-tip-campo-trib. 


Observações