Árvore de páginas


Documento de API

Produto:

Datasul

Ocorrência:

Documentação de API

Nome Físico

 cdp/cdapi282.p

 

Objetivo

 

Esta API será executada na Solicitação/Requisição de Compras. Seu objetivo é alterar a boin168man.p, adicionando a chamada da API de Execução Orçamentária, a fim de verificar se o os movimentos de compras em questão ultrapassam o valor do orçamento, e se não ultrapassarem empenhar essas movimentações, recebendo os seguintes parâmetros:

RUN cdp/cdapi282.p (input ?                     ,  /** rowid it-requisicao                           **/                         

                                    INPUT TABLE rowobject       ,  /** registro alterado                             **/                           

                                    INPUT 1                     ,  /** funcao: 1-BeforeCreateRecord Item-Requisicao  **/

                                    INPUT iNrOrdProdu           ,  /** Número da Ordem de Manutenção Industrial      **/

                                    INPUT ?                     ,  /** Rowid do registro antes de alterar            **/

                                    OUTPUT TABLE RowErrors      ). /** tt que retorna erro                           **/ 


Funcionamento

Essa API será executa somente a partir de um ponto específico dentro boin168man.p.

A API irá alimentar informações na tabela tt_xml_input_1 que será envida para api de finanças “prgfin/bgc/bgc700za.py “.

 

Definição dos Parâmetros:

 

Atributo

Tipo

Formato

Descrição

Obrigatório

Evolução

r-rowid-it-requisicao

Rowid

Default

Rowid Tabela Item Requisição

Não

001

rowobject

Temp-Table

 

Tabela Item Requisição

Não

001

i-cod

int

Default

Tipo da Operação

Não

001

i-nr-ord-produ

Int

Default

Número Ordem Manutenção

Não

001

r-rowid-anterior

Rowid

Default

Rowid Registro Anterior

Não

001

rowerrors

Temp-Table

 

Valor Material On-line

Não

001

 

Tabelas Temporárias

Atributos das tabelas temporárias:

 

Tabela Temporária

Descrição

Entrada/Saída

Rowobject

Conterá as informações referente a tabela Item Requisição.

Obs.: Ver definição na boin168.doc

Entrada

Tabela Temporária

Descrição

Entrada/Saída

Rowerrors

Conterá as informações dos erros gerados referente a execução orçamentária.

Saída

 

Definição Atributos da Tabela Temporária Rowerrors:

Atributo

Tipo

Formato

Descrição

ErrorSequence   

Int

Default

Seqüência do Erro

ErrorNumber     

Int

x(40)

Número do Erro

ErrorDescription

Char

x(40)

Descrição do Erro

ErrorParameters 

Char

x(40)

Parâmetros

ErrorType       

Char

x(40)

Tipo do Erro

ErrorHelp       

Char

x(40)

Help do Erro

ErrorSubType    

Char

x(40)

Sub Tipo

 

Considerações Gerais:

 

  • Devem ser passadas os parâmetros listados acima, sendo 1 (uma) temp-table de entrada e 1 (uma) de saída.

 

  • A temp-table de entrada é passada como parâmetro através do comando INPUT PARAM TABLE.

 

  • A temp-table de saída é passada como parâmetro através do comando OUTPUT PARAM TABLE.

 

 

Exemplo: RUN cdp/cdapi282.p (input ?                     ,  /** rowid it-requisicao                           **/                         

                                    INPUT TABLE rowobject       ,  /** registro alterado                             **/                           

                                    INPUT 1                     ,  /** funcao: 1-BeforeCreateRecord Item-Requisicao  **/

                                    INPUT iNrOrdProdu           ,  /** Número da Ordem de Manutenção Industrial      **/

                                    INPUT ?                     ,  /** Rowid do registro antes de alterar            **/

                                    OUTPUT TABLE RowErrors      ). /** tt que retorna erro                           **/ 

 

                RUN cdp/cdapi282.p (input ?                    ,  /** rowid it-requisicao                           **/                         

                                    INPUT TABLE rowobject      ,  /** registro alterado                             **/                           

                                    INPUT 3                    ,  /** funcao: 1-BeforeCreateRecord Item-Requisicao  **/

                                    INPUT iNrOrdProdu          ,  /** Número da Ordem de Manutenção Industrial      **/

                                    INPUT ?                    ,  /** Rowid do registro antes de alterar            **/

                                    OUTPUT TABLE RowErrors     ). /** tt que retorna erro                           **/ 

         

                RUN cdp/cdapi282.p (input ?                    ,  /** rowid it-requisicao                           **/                         

                                    INPUT TABLE rowobject      ,  /** registro alterado                             **/                            

                                    INPUT 2                    ,  /** funcao: 1-BeforeCreateRecord Item-Requisicao  **/

                                    INPUT iNrOrdProdu          ,  /** Número da Ordem de Manutenção Industrial      **/

                                    INPUT r-rowid-anterior     ,  /** Rowid do registro antes de alterar            **/

                                    OUTPUT TABLE RowErrors     ). /** tt que retorna erro                           **/ 

 

  • A API funciona da seguinte forma: Recebe os parâmetros, faz as criticas das mesmas, caso não tenha ocorrido nenhum problema faz o estorno ou a atualização. O primeiro parâmetro passa o rowid da tabela para que seja feita a leitura dentro desta API e gravada a temp-table, normalmente este rowid é referente o registro antes da alteração no caso do modifica. O segundo parâmetro, é o rowobject (rowobject é utilizado em bo é como uma temp-table, com o registro após a alteração) que será utilizado para gravar os dados na temp-table e fazer a Execução Orçamentária. O terceiro parâmetro indica qual a operação que foi feita pela bo, com isso sabemos a função que será criada na temp-table. O quarto parâmetro indica o número da ordem de manutenção. O quinto parâmetro passa o rowid do registro anterior ao que esta sendo alterado. E o sexto parâmetro é uma temp-table para retornar erros se estes ocorrerem durante a Execução Orçamentária.

 

  • Essa API será executa pela boin168man (it-requisição).