Árvore de páginas

Documento de API

Produto:

Datasul

Ocorrência:

Documentação de API

Nome Físicoprgfin/acr/acr779zb

 

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_5 in v_hdl_aux

                                                      (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).

 

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:

 

  • tt-tot-tit: tabela temporária que contém as duplicatas a serem devolvidas
  • tt-titulo: tabela temporária que contém as várias parcelas envolvidas da(s) duplicata(s)
  • tt-log-erros-atualiz: retorna os erros que aconteceram ao integrar Recebimento x ACR
  • tt-un-devol: tabela temporária que contém o rateio de unidade de negócio da devolução
  • tt-impto-retid-fat: tabela temporária que contém os impostos retidos no faturamento

 

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_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_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-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.

 

Observações

  • Os atributos setados com “X” na Coluna “REC” indica quais os atributos que serão enviados pelo REC.
  • Devido a regras aplicadas no Recebimento, a organização da temp-table é da seguinte forma: uma duplicata que possui várias parcelas tem uma ocorrência no tt-tot-tit (ou seja, cada duplicata é uma ocorrência no tt-tot-tit) e as suas várias parcelas são indicadas em N ocorrências na tt-titulo (ou seja, cada parcela é uma ocorrência no tt-titulo). A ligação entre tt-tot-tit e tt-titulo é feita através do atributo sequencia.
  • Qualquer alteração que ainda se faça necessária nos atributos da tabela-temporária, seja na ordem, inclusão, alteração ou exclusão deverá ser informado a Sra. Elisabete Oliveira (mailto:  [email protected]) para que a mesma possa alterar os programas do Recebimento e de Integração com o EMS 2.