Árvore de páginas

Documento de API

Produto:

Datasul

Ocorrência:

Documentação de API

Nome Físicoprgfin/apb/apb768ze

Objetivo

Efetuar o estorno de movimentos dos títulos do contas a pagar ou o cancelamento dos mesmos.

Funcionamento

A sintaxe para a chamada da API/BO é:

def var v_hdl_api as handle no-undo.

run prgfin/apb/apb768ze.py persistent set v_hdl_api.

run pi_main_code_apb768ze_new_2 in v_hdl_api (input p_num_vers_integr_api,
                                                                        input p_cod_modulo,
                                                                        input p_cod_matriz_trad_org_ext,
                                                                        input p_log_estorn_tit_relacto_comiss,
                                                                        input table tt_cancelamento_estorno_apb_3,
                                                                        input table tt_estornar_agrupados_1,
                                                                        output table tt_log_erros_atualiz,
                                                                        output table tt_log_erros_estorn_cancel_apb,
                                                                        output table tt_estorna_tit_imptos,
                                                                        output p_log_confir_estorn_cancel).

delete procedure v_hdl_api.

Considerações:

Antes das definições das temp-tables é necessário incluir a definição da include abaixo. 

/*-- Filtro RECID x ROWID Aplicado --*/
{include/i_fncrowid.i}  

Os parâmetros de entrada são:

Parâmetro

Descrição

p_num_vers_integr_api

Será utilizado para determinar se o programa que está chamando está íntegro com as definições correntes da API, utilizar o valor "1".

p_cod_moduloConterá o módulo, será utilizado para verificar se o módulo é “rep”.
p_cod_matriz_trad_org_extConterá o código da matriz de tradução da organização externa que tem por finalidade relacionar os códigos externos aos códigos presentes no Datasul-EMS5, caso a matriz de tradução não tiver sido informada, o parâmetro estará em branco.
p_log_estorn_tit_relacto_comissIndica se deve estornar o Título mesmo que ele esteja vinculado a uma comissão no Contas a Receber.
tt_cancelamento_estorno_apb_3Conterá os dados dos Títulos ou Movimentos a serem estornos/cancelamentos.
tt_estornar_agrupados_1Esta temp-table somente deverá ser criada no programa chamador e passada como parâmetro, a mesma é de uso interno e não poderá conter valor no momento da passagem como parâmetro.

Os parâmetros de saída são:

Parâmetro

Descrição

tt_log_erros_atualizConterá os dados dos erros ocorridos durante a execução do programa.
tt_log_erros_estorn_cancel_apbConterá os dados dos erros ocorridos durante a execução do programa.
tt_estorna_tit_imptosConterá os títulos que podem conter impostos vinculados ao fornecedor. A mesma é de uso interno.
p_log_confir_estorn_cancelVariável do tipo lógico, que receberá o valor do retorno do programa, porém está variável não deverá ser utilizada pelo programa que chama a api após o retorno. A mesma é de uso interno.

Tabelas Temporárias


Tabela Temporária

Descrição

Entrada/Saída

tt_cancelamento_estorno_apb_3

Conterá as informações do título e informações gerais.

Entrada


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

(**) Liberado o número de documento com 16 posições e série com 5, a partir de maio/2011.

Atributo

Tipo

Formato

Descrição

Obrig.

Evol.

ttv_ind_niv_operac_apb

character

X(10)

1 = Movimento

2 = Titulo



ttv_ind_tip_operac_apb

character

X(12)

1 = Estorno

2 = Cancelamento



tta_cod_estab

character

x(3) / x(5)*

Estabelecimento



tta_num_id_tit_ap

integer

1E+10

Token Tit AP



tta_num_id_movto_tit_ap

integer

1E+10

Token Movto Tit AP



tta_cod_refer

character

x(10)

Referência



tta_dat_transacao

date

99/99/9999

Data Transação



tta_cod_histor_padr

character

x(8)

Histórico Padrão



ttv_des_histor

character

x(40)

Contém



ttv_ind_tip_estorn

character

X(10)

1 = Parcial

2 = Total



tta_cod_portador

character

x(5)

Portador



ttv_cod_estab_reembol

character

x(8)

Estabelecimento Reembolso



ttv_log_reaber_item

logical

Sim/Não

Reabre Item



ttv_log_reembol

logical

Sim/Não

Reembolso



ttv_log_estorn_impto_retid

logical

Sim/Não

Estorna Imposto



tta_cod_estab_ext

character

x(8)

Estabelecimento Externo



ttv_row_tit_ap

rowid


Rowid Título



tta_cdn_fornecedor

Integer

>>>,>>>,>>9

Fornecedor



tta_cod_espec_docto

character

x(3)

Espécie Documento



tta_cod_ser_docto

character

x(3)/x(5)**

Série Documento



tta_cod_tit_ap

character

x(10)/x(16)**

Título



tta_cod_parcela

character

x(02)

Parcela



ttv_log_estorn_todos_movlogicalSim/NãoEstorna Todos os Movimentos do Título ?


def temp-table tt_cancelamento_estorno_apb_3 no-undo
      field ttv_ind_niv_operac_apb as character format "X(10)"
      field ttv_ind_tip_operac_apb as character format "X(12)"
      field tta_cod_estab as character format "x(5)" label "Estabelecimento" column-label "Estab"
      field tta_num_id_tit_ap as integer format "9999999999" initial 0 label "Token Tit AP" column-label "Token Tit AP"
      field tta_num_id_movto_tit_ap as integer format "9999999999" initial 0 label "Token Movto Tit AP" column-label "Id Tit AP"
      field tta_cod_refer as character format "x(10)" label "Referência" column-label "Referência"
      field tta_dat_transacao as date format "99/99/9999" initial today label "Data Transação" column-label "Dat Transac"
      field tta_cod_histor_padr as character format "x(8)" label "Histórico Padrão" column-label "Histórico Padrão"
      field ttv_des_histor as character format "x(40)" label "Contém" column-label "Histórico"
      field ttv_ind_tip_estorn as character format "X(10)"
      field tta_cod_portador as character format "x(5)" label "Portador" column-label "Portador"
      field ttv_cod_estab_reembol as character format "x(8)"
      field ttv_log_reaber_item as logical format "Sim/Não" initial yes
      field ttv_log_reembol as logical format "Sim/Não" initial yes
      field ttv_log_estorn_impto_retid as logical format "Sim/Não" initial yes
      field tta_cod_estab_ext as character format "x(8)" label "Estabelecimento Exte" column-label "Estabelecimento Ext"
      field ttv_row_tit_ap                   as Rowid
      field tta_cdn_fornecedor as Integer format ">>>,>>>,>>9" initial 0 label "Fornecedor" column-label "Fornecedor"
      field tta_cod_espec_docto as character format "x(3)" label "Espécie Documento" column-label "Espécie"
      field tta_cod_ser_docto as character format "x(5)" label "Série Documento" column-label "Série"
      field tta_cod_tit_ap as character format "x(16)" label "Título" column-label "Título"
      field tta_cod_parcela as character format "x(02)" label "Parcela" column-label "Parc"
      field ttv_log_estorn_todos_mov as logical format "Sim/Não" initial no
      .


Tabela Temporária

Descrição

Entrada/Saída

tt_estornar_agrupados_1

Esta temp-table apenas deverá ser definida, não poderá receber valor, é de uso interno.

Entrada


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

(**) Liberado o número de documento com 16 posições e série com 5, a partir de maio/2011.

Atributo

Tipo

Formato

Descrição

Obrig.

Evol.

ttv_num_seq

integer

>>>,>>9

Seqüência



tta_nom_abrev

character

x(15)

Nome Abreviado



tta_cod_estab_pagto

character

x(3) / x(5)*

Estabelecimento Pagamento



tta_cod_refer

character

x(10)

Referência



tta_dat_pagto

date

99/99/9999

Data Pagamento



tta_cod_estab

character

x(3) / x(5)*

Estabelecimento



tta_cod_espec_docto

character

x(3)

Espécie Documento



tta_cod_ser_docto

character

x(3)/x(5)**

Série Documento



tta_cod_tit_ap

character

x(10)/x(16)**

Título



tta_cod_parcela

character

x(02)

Parcela



tta_val_movto_ap

decimal

->>>,>>>,>>9.99

Valor Movimento



tta_ind_modo_pagto

character

X(10)

Modo Pagamento



tta_cod_empresa

character

x(3)

Empresa



ttv_row_id_tit_ap

Rowid


Rowid Título



ttv_num_seq_abrev

integer

>>>9

Sequência



tta_ind_trans_ap_abrev

character

X(04)

Transação Abreviada



 ttv_row_id_compl_movto_pagto

Rowid


Rowid compl_movto_pagto



ttv_row_id_movto_tit_ap

Rowid


Rowid movto_tit_ap



ttv_row_id_item_cheq_ap

Rowid


Rowid item_cheq_ap



ttv_row_id_item_bord_ap

Rowid


Rowid item_bord_ap



ttv_row_id_item_lote_pagto 

Rowid


Rowid item_lote_pagto




def temp-table tt_estornar_agrupados_1 no-undo
    field ttv_num_seq                      as integer format ">>>,>>9" label "Seqüência" column-label "Seq"
    field tta_nom_abrev                    as character format "x(15)" label "Nome Abreviado" column-label "Nome Abreviado"
    field tta_cod_estab_pagto              as character format "x(5)" label "Estab Pagto" column-label "Estab Pagto"
    field tta_cod_refer                    as character format "x(10)" label "Referência" column-label "Referência"
    field tta_dat_pagto                    as date format "99/99/9999" initial today label "Data Pagamento" column-label "Data Pagto"
    field tta_cod_estab                    as character format "x(5)" label "Estabelecimento" column-label "Estab"
    field tta_cod_espec_docto              as character format "x(3)" label "Espécie Documento" column-label "Espécie"
    field tta_cod_ser_docto                as character format "x(5)" label "Série Documento" column-label "Série"
    field tta_cod_tit_ap                   as character format "x(16)" label "Título" column-label "Título"
    field tta_cod_parcela                  as character format "x(02)" label "Parcela" column-label "Parcela"
    field tta_val_movto_ap                 as decimal format "->>>,>>>,>>9.99" decimals 2 initial 0 label "Valor  Movimento" column-label "Valor Movto"
    field tta_ind_modo_pagto               as character format "X(10)" label "Modo  Pagamento" column-label "Modo Pagto"
    field tta_cod_empresa                  as character format "x(3)" label "Empresa" column-label "Empresa"
    field ttv_row_id_tit_ap                as Rowid
    field ttv_num_seq_abrev                as integer format ">>>9" label "Sq" column-label "Seq"
    field tta_ind_trans_ap_abrev           as character format "X(04)" label "Trans Abrev" column-label "Trans Abrev"
    field ttv_row_id_compl_movto_pagto     as Rowid
    field ttv_row_id_movto_tit_ap          as Rowid
    field ttv_row_id_item_cheq_ap          as Rowid
    field ttv_row_id_item_bord_ap          as Rowid
    field ttv_row_id_item_lote_pagto       as Rowid
    index tt_ind_modo                     
          tta_ind_modo_pagto               ascending
    .


Tabela Temporária

Descrição

Entrada/Saída

tt_log_erros_atualiz

Conterá as informações de erro que poderão ocorrer na execução do programa.

Saída


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

Atributo

Tipo

Formato

Descrição

Obrig.

Evol.

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_log_erros_estorn_cancel_apb

Conterá as informações de erro que poderão ocorrer na execução do programa.

Saída


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

Atributo

Tipo

Formato

Descrição

Obrig.

Evol.

tta_cod_estab

character

x(3) / x(5)*

Estabelecimento



tta_cod_refer

character

x(10)

Referência



tta_num_mensagem

integer

>>,>>>,>>9

Mensagem



ttv_des_msg_erro

character

x(60)

Mensagem Erro



ttv_des_msg_ajudacharacterx(40)Mensagem Ajuda


def temp-table tt_log_erros_estorn_cancel_apb 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_mensagem as integer format ">>,>>>,>>9" initial 0 label "Mensagem" column-label "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"
      .


Tabela Temporária

Descrição

Entrada/Saída

tt_estorna_tit_imptos

Conterá as informações dos títulos que poderão Ter impostos vinculados ao fornecedor, ressaltando que a mesma é de uso interno, e não poderá conter valor, na passagem de parâmetro.

Saída


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

(**) Liberado o número de documento com 16 posições e série com 5, a partir de maio/2011.

Atributo

Tipo

Formato

Descrição

Obrig.

Evol.

ttv_cod_refer_imp

character

x(10)

Referência



ttv_cod_refer

character

x(10)

Referência



ttv_cod_estab_imp

character

x(3) / x(5)*

Estabelecimento Imposto



ttv_cdn_fornecedor_imp

Integer

>>>,>>>,>>9

Fornecedor



ttv_cod_espec_docto_imp

character

x(3)

Espécie Documento



ttv_cod_ser_docto_imp

character

x(3)/x(5)**

Série Documento



ttv_cod_tit_ap_imp

character

x(10)/x(16)**

Título



ttv_cod_parcela_imp

character

x(02)

Parcela



ttv_val_tit_ap_imp

decimal

->>>,>>>,>>9.99

Valor Título



ttv_val_sdo_tit_ap_imp

decimal

->>>,>>>,>>9.99

Valor Saldo



ttv_num_id_tit_ap_imp

integer

9999999999

Token Tit AP



ttv_num_mensagem

integer

>>>>,>>9

Número



ttv_des_mensagem

character

x(50)

Mensagem



ttv_des_ajuda

character

x(50)

Ajuda



ttv_cod_estab_2

character

x(3) / x(5)*

Estabelecimento



ttv_cod_estab

character

x(3) / x(5)*

Estabelecimento



ttv_cdn_fornecedor

Integer

>>>,>>>,>>9

Fornecedor



ttv_cod_espec_docto

character

x(3)

Espécie Documento



ttv_cod_ser_docto

character

x(3)/x(5)**

Série Documento



ttv_cod_tit_ap

character

x(10)/x(16)**

Título Ap



ttv_cod_parcela

character

x(02)

Parcela



ttv_val_tit_ap

decimal

->>,>>>,>>>,>>9.99

Valor Título



ttv_val_sdo_tit_ap

decimal

->>>,>>>,>>9.99

Valor Saldo



ttv_num_id_tit_ap

integer

9999999999

Token Tit AP



ttv_ind_trans_ap_abrev

character

X(04)

Transação



ttv_cod_refer_2

character

x(10)

Referência



ttv_num_order

integer

>>>>,>>9

Ordem



ttv_val_tot_comprtdo

decimal

->>>,>>>,>>9.99

Valor Total Comprometido




def temp-table tt_estorna_tit_imptos no-undo
      field ttv_cod_refer_imp as character format "x(10)" label "Referência" column-label "Referência"
      field ttv_cod_refer as character format "x(10)" label "Referência" column-label "Referência"
      field ttv_cod_estab_imp as character format "x(5)" label "Estabelec. Impto." column-label "Estab. Imp."
      field ttv_cdn_fornecedor_imp as Integer format ">>>,>>>,>>9" label "Fornecedor" column-label "Fornecedor"
      field ttv_cod_espec_docto_imp as character format "x(3)" label "Espécie Documento" column-label "Espécie"
      field ttv_cod_ser_docto_imp as character format "x(5)" label "Série Documento" column-label "Série"
      field ttv_cod_tit_ap_imp as character format "x(16)" label "Título" column-label "Título"
      field ttv_cod_parcela_imp as character format "x(02)" label "Parcela" column-label "Parc"
      field ttv_val_tit_ap_imp as decimal format "->>>,>>>,>>9.99" decimals 2 label "Valor Título" column-label "Valor Título"
      field ttv_val_sdo_tit_ap_imp as decimal format "->>>,>>>,>>9.99" decimals 2 label "Valor Saldo" column-label "Valor Saldo"
      field ttv_num_id_tit_ap_imp as integer format "9999999999" label "Token Tit AP" column-label "Token Tit AP"
      field ttv_num_mensagem as integer format ">>>>,>>9" label "Número" column-label "Número Mensagem"
      field ttv_des_mensagem as character format "x(50)" label "Mensagem" column-label "Mensagem"
      field ttv_des_ajuda as character format "x(50)" label "Ajuda" column-label "Ajuda"
      field ttv_cod_estab_2 as character format "x(5)" label "Estabelecimento" column-label "Estab"
      field ttv_cod_estab as character format "x(5)" label "Estabelecimento" column-label "Estabelecimento"
      field ttv_cdn_fornecedor as Integer format ">>>,>>>,>>9" label "Fornecedor" column-label "Fornecedor"
      field ttv_cod_espec_docto as character format "x(3)" label "Espécie Documento" column-label "Espécie"
      field ttv_cod_ser_docto as character format "x(5)" label "Série Docto" column-label "Série"
      field ttv_cod_tit_ap as character format "x(16)" label "Título Ap" column-label "Título Ap"
      field ttv_cod_parcela as character format "x(02)" label "Parcela" column-label "Parc"
      field ttv_val_tit_ap as decimal format "->>,>>>,>>>,>>9.99" decimals 2 label "Valor Título" column-label "Valor Título"
      field ttv_val_sdo_tit_ap as decimal format "->>>,>>>,>>9.99" decimals 2 label "Valor Saldo" column-label "Valor Saldo"
      field ttv_num_id_tit_ap as integer format "9999999999" label "Token Tit AP" column-label "Token Tit AP"
      field ttv_ind_trans_ap_abrev as character format "X(04)" label "Transação" column-label "Transação"
      field ttv_cod_refer_2 as character format "x(10)" label "Referência" column-label "Referência"
      field ttv_num_order as integer format ">>>>,>>9" label "Ordem" column-label "Ordem"
      field ttv_val_tot_comprtdo as decimal format "->>>,>>>,>>9.99" decimals 2
      index tt_idimpto 
               ttv_cod_estab_imp ascending
               ttv_cdn_fornecedor_imp ascending
               ttv_cod_espec_docto_imp ascending
               ttv_cod_ser_docto_imp ascending
               ttv_cod_tit_ap_imp ascending
               ttv_cod_parcela_imp ascending
      index tt_idimpto_pgef 
              ttv_cod_estab ascending
              ttv_cod_refer ascending
      index tt_idtit_refer 
              ttv_cod_estab_2 ascending
              ttv_cdn_fornecedor ascending
              ttv_cod_espec_docto ascending
              ttv_cod_ser_docto ascending
              ttv_cod_tit_ap ascending
              ttv_cod_parcela ascending
              ttv_cod_refer_2 ascending
      index tt_numsg 
              ttv_num_mensagem ascending
      index tt_order 
              ttv_num_order ascending
      .