API para Geração de Gráficos


Nome Físico: prgfin/lco/lco728za.py

Versão de Integração: 001

Objetivo: 

Criar o objeto de negócio que será utilizado para gerar visão de dados na qual disponibilizará uma conciliação automática, dos saldos contábeis distribuídos por terceiros, com os saldos
contábeis gerados para as mesmas contas, sem a distribuição por terceiros.

Pré-requisitos: 

Não se aplica.


Considerações Gerais


  • São passados como parâmetros de input e output para a API,  como Input são: Plano de Contas, Cenário Contábil, Finalidade Econômica, Exercício, Período, Faixa de Estabelecimentos, Faixa de Unidades de Negócio e 
    Flag para indicar se deve retornar somente os saldos não conciliados, como Output são: tt_concilia_sdos_terceiros, tt_lanctos_ctbl_concil e tt_erros_api.
  • A exibição das informações da API é feita através da execução da API prgfin/lco/lco728za.py.
    .

Parâmetros de Entrada 


Temp-table tt_concilia_sdos_terceiros: Na Temp-Table tt_concilia_sdos_terceiros, são definidas as características gerais e dados a serem devolvidos.

Descrição dos campos 

TEMP-TABLE tt_concilia_sdos_terceiros

Atributo

Tipo

Formato

Valor Inicial

Índice

tta_cod_finalid_econ

Character

x(10)


X

tta_cod_cenar_ctbl

Character

x(8)


X

tta_cod_plano_cta_ctbl

Character

x(8)


X

tta_cod_cta_ctbl

Character

x(20)


X

tta_des_tit_ctbl

Character

x(40)



ttv_val_sdo_terc_inic

Decimal

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

0


ttv_val_mov_terc_db

Decimal

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

0


ttv_val_mov_terc_cr

Decimal

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

0


ttv_val_sdo_terc_fim

Decimal

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

0


ttv_val_sdo_ctbl_inic

Decimal

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

0


ttv_val_mov_ctbl_db

Decimal

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

0


ttv_val_mov_ctbl_cr

Decimal

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

0


ttv_val_sdo_ctbl_fim

Decimal

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

0


ttv_log_dif_sdo

Logical

Sim/Não

No


ttv_log_dif_mov

Logical

Sim/Não

No


Atributo

Descrição

tta_cod_finalid_econ

Finalidade

tta_cod_cenar_ctbl

Cenário Contábil

tta_cod_plano_cta_ctbl

Plano Contas

tta_cod_cta_ctbl

Conta Contábil

tta_des_tit_ctbl

Título Contábil

ttv_val_sdo_ctbl_inic

Saldo Inicia

ttv_val_sdo_ctbl_fim

Saldo Final

Temp-table tt_lanctos_ctbl_concil: Na Temp-Table tt_lanctos_ctbl_concil, são definidas as características gerais e dados a serem devolvidos.

Descrição dos campos 

TEMP-TABLE tt_lanctos_ctbl_concil
AtributoTipoFormatoValor Inicial Índice
tta_cod_cta_ctblCharacterx(20)

tta_des_tit_ctblCharacterx(40)

tta_val_lancto_ctblDecimal>>>,>>>,>>>,>>9.990
tta_ind_natur_lanctoCharacterX(5)

tta_dat_lancto_ctblDate99/99/9999?
tta_num_lote_ctblInteger>>>,>>>,>>91
tta_num_lancto_ctblInteger>>,>>>,>>910
tta_num_seq_lancto_ctblInteger>>>>90
AtributoDescrição
tta_cod_cta_ctblConta Contábil
tta_des_tit_ctblTítulo Contábil
tta_val_lancto_ctblValor Lançamento
tta_ind_natur_lanctoNatureza Lançamento
tta_dat_lancto_ctblData Lançto
tta_num_lote_ctblLote Contábil
tta_num_lancto_ctblLançamento Contábil
tta_num_seq_lancto_ctblSequência Lançto

Temp-table tt_retorna_sdo_ctbl: Na Temp-Table tt_retorna_sdo_ctbl, são definidas as características gerais e dados a serem devolvidos.

Descrição dos campos 

TEMP-TABLE tt_retorna_sdo_ctbl
AtributoTipoFormatoValor InicialÍndice
tta_num_seqInteger>>>,>>90
tta_cod_empresaCharacterx(3)

tta_cod_finalid_econCharacterx(10)

tta_cod_plano_cta_ctblCharacterx(8)

tta_cod_cta_ctblCharacterx(20)

tta_cod_plano_ccustoCharacterx(8)

tta_cod_ccustoCharacterx(20)

tta_cod_proj_financCharacterx(20)

tta_cod_cenar_ctblCharacterx(8)

tta_cod_estab Characterx(5)

tta_cod_unid_negocCharacterx(3)

tta_dat_sdo_ctblDate99/99/9999?
tta_val_sdo_ctbl_dbDecimal->>>,>>>,>>>,>>9.990
tta_val_sdo_ctbl_crDecimal->>>,>>>,>>>,>>9.990
tta_val_sdo_ctbl_fimDecimal->>,>>>,>>>,>>9.990
tta_val_apurac_restdoDecimal->>,>>>,>>>,>>9.990
tta_val_apurac_restdo_dbDecimal->>,>>>,>>>,>>9.990
tta_val_apurac_restdo_crDecimal->>,>>>,>>>,>>9.990
tta_val_apurac_restdo_acum Decimal->>>>,>>>,>>>,>>9.990
tta_val_sdo_ctbl_db_sintDecimal->>,>>>,>>>,>>9.990
tta_val_sdo_ctbl_cr_sintDecimal->>,>>>,>>>,>>9.990
tta_val_sdo_ctbl_fim_sintDecimal->>>>,>>>,>>>,>>9.990
tta_val_apurac_restdo_sintDecimal->>,>>>,>>>,>>9.990
tta_val_apurac_restdo_sint_dbDecimal->>,>>>,>>>,>>9.990
tta_val_apurac_restdo_sint_crDecimal->>,>>>,>>>,>>9.990
tta_val_apurac_restdo_sint_acumDecimal->>>>,>>>,>>>,>>9.990
tta_val_movto_empenhDecimal->>,>>>,>>>,>>9.990
tta_qtd_sdo_ctbl_dbDecimal>>>,>>>,>>9.990
tta_qtd_sdo_ctbl_crDecimal>>>,>>>,>>9.990
tta_qtd_sdo_ctbl_fimDecimal->>>,>>>,>>9.990
ttv_val_movto_ctblDecimal>>>,>>>,>>>,>>9.990
tta_qtd_movto_empenhDecimal->>>>,>>9.99990



AtributoDescrição
tta_num_seqNum Seq
tta_cod_empresaEmpresa
tta_cod_finalid_econFinalidade
tta_cod_plano_cta_ctblPlano Contas
tta_cod_cta_ctblConta Contábil
tta_cod_plano_ccustoPlano Centros Custo
tta_cod_ccustoCentro Custo
tta_cod_proj_financProjeto
tta_cod_cenar_ctblCenário Contábil
tta_cod_estab Estab
tta_cod_unid_negocUn Neg
tta_dat_sdo_ctblData Saldo Cont bil
tta_val_sdo_ctbl_dbMovto Débito
tta_val_sdo_ctbl_crMovto Crédito
tta_val_sdo_ctbl_fimSaldo Contábil Final
tta_val_apurac_restdoApuração Resultado
tta_val_apurac_restdo_dbApuração Restdo DB
tta_val_apurac_restdo_crApuração Restdo CR
tta_val_apurac_restdo_acum Apuracao Final
tta_val_sdo_ctbl_db_sintMovto Débito Sint
tta_val_sdo_ctbl_cr_sintMovto Crédito Sint
tta_val_sdo_ctbl_fim_sintSaldo Sintético
tta_val_apurac_restdo_sintApuracao Resultado
tta_val_apurac_restdo_sint_dbApur Restdo Sint DB
tta_val_apurac_restdo_sint_crApur Restdo Sint CR
tta_val_apurac_restdo_sint_acumApur Result Sint
tta_val_movto_empenhMovto Empenhado
tta_qtd_sdo_ctbl_dbQuantidade DB
tta_qtd_sdo_ctbl_crQuantidade CR
tta_qtd_sdo_ctbl_fimQuantidade Final
ttv_val_movto_ctbl
tta_qtd_movto_empenhQtde Movto Empenhado




Execução


Sintaxe:

IF NOT VALID-HANDLE(v_hdl_api) THEN
    RUN prgfin/lco/lco728za.r PERSISTENT SET v_hdl_api.

/* Busca Saldo Inicial */
    run pi_busca_sdo_ctbl in v_hdl_api (input v_cod_empres_usuar,
                           				input p_cod_estab_ini,
                          				input p_cod_estab_fim,
                           				input p_cod_finalid_econ,
                           				input colext_cta_ctbl.cod_plano_cta_ctbl,
                           				input colext_cta_ctbl.cod_cta_ctbl,
                           				input colext_cta_ctbl.cod_cta_ctbl,
                           				input "",
                           				input "",
                           				input "ZZZZZZZZZZZ" /*l_zzzzzzzzzzz*/ ,
                           				input p_cod_un_inicial,
                           				input p_cod_un_final,
                           				input p_cod_cenar_ctbl,
                           				input "",
                          				input "ZZZZZZZZZZZZZZZZZZZZ" /*l_zzzzzzzzzzzzzzzzzzzz*/ ,
                           				input v_dat_sdo_inic,
                           				input v_dat_sdo_inic,
                           				input no,
                           				input "Maior ou Igual e Menor ou Igual" /*l_maior_igual_menor_igual*/ ,
                           				input "for each" /*l_for_each*/ ,
                           				output table tt_retorna_sdo_ctbl).

Em caso de erro nas validações acima, o erro será retornado por meio da temp-table tt_erros_api.

Se os dados forem aceitos, a API devolverá as informações para geração da conciliação de saldos por terceiros compras quando for chamada a procedure pi_busca_sdo_ctbl.


def var v_hdl_api as Handle format ">>>>>>9":U no-undo.

run prgfin\lco\lco728za.r persistent set v_hdl_api.

if  valid-handle(v_hdl_api)
then do:
     /* Busca plano de contas */
		run prgfin\lco\lco728za.r (input "GRIFFE1",       /* Plano de Contas */
                    	       	   input "Fiscal",        /* Cen rio Cont bil */
                        		   input "PESO COL",      /* Finalidade Econ“mica */
		                           input v_cod_exercicio, /* Exerc¡cio */
		                           input v_num_periodo,   /* Per¡odo */
		                           input "IGN",           /* Estab Inicial */
		                           input "IGV",           /* Estab Final */
		                           input "008",           /* UN Inicial */
		                           input "VEN",           /* UN Final */
		                           input no,              /* Retorna Somente NÆo Conciliados */
		                           output table tt_concilia_sdos_terceiros,
		                           output table tt_lanctos_ctbl_concil,
DELETE PROCEDURE v_hdl_api.
xxxxx




Parâmetros de Saída


No caso do retorno ser NOK, todos os erros encontrados serão retornados na tabela Temp-Table tt_erros_api:

A tt-erros é uma tabela de retorno de dados referentes aos erros encontrados na manipulação  dos dados das tabelas de entrada. A tt-erros retorna dados por meio de um registro contendo o código do erro e a sua descrição.

Obs.: Depois da chamada feita à API é imprescindível tratar os erros retornados caso existam.

TEMP-TABLE tt_erros_api

Atributo

Tipo

Formato

Valor Inicial

ttv_num_erro

Integer

>>>,>>9

0

ttv_des_mensagem

Character

x(50)


ttv_des_ajuda

Character

x(50)


ttv_row_id

Rowid

Rowid

?

Atributo

Descrição

ttv_num_erro

Número do erro. Sequencial dentro da temp-table.

ttv_des_mensagem

Descrição do erro.

ttv_des_ajuda

Descrição ajuda.

ttv_row_id

Rowid.

Documento Traduzido

  • Xxxxxx