Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Documento de API

Produto:

Datasul

Ocorrência:

Documentação de API

Nome Físicocdp/cdapi998.p

Considerações Gerais

 

Objetivo

Manter e fornecer integrações sobre itens do Datasul 12 com soluções externas.

 

Funcionamento

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.

A sintaxe para a chamada da API é:

run xxx/xxapinnn.p (input-output table tt-...,

                    input        table tt-...,

                    ...,

                    ...).

 

A sintaxe para executar a API em modo persistente é:

run xxx/xxapinnn.p persistent set h-handle (input-output table tt-...,

                                            input        table tt-...,

                                            ...,

                                            ...).

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

 

Método Básico

Disponibilizar todos os métodos necessários para validação/criação de Itens.


Funcionamento

1. Executar o programa API da seguinte forma:

DEFINE VARIABLE h_cdapi998 AS HANDLE NO-UNDO.

RUN cdp/cdapi998.p PERSISTENT SET h_cdapi998.

RUN <MÉTODO> IN h_cdapi998 (<PARÂMETROS>,
OUTPUT TABLE RowErrors).

DELETE OBJECT h_cdapiitem


2. Após a execução do método, deve ser testada a temp-table de erro (RowErrors), afim de verificar se ocorreu algum erro. Também pode ser verificado o “return-value” que irá conter “OK”, se tiver tudo correto ou “NOK”, se ocorreu algum erro.

Tabelas Temporárias

Tabela Temporária

Descrição

Entrada/Saída

RowErrors

Erros ocorridos no processo.

Saída

Atributo

Tipo

Formato

Descrição

Obrig.

Evol.


ErrorSequence

int


Sequência do erro




ErrorNumber

int


Código do erro




ErrorDescription

char


Descrição do erro




ErrorParameters

char


Parâmetros do erro




ErrorType

char


Tipo do erro




ErrorHelp

char


Ajuda




ErrorSubType

char


Sub-tipo do erro





Definição:

DEFINE TEMP-TABLE RowErrors NO-UNDO
     FIELD ErrorSequence AS INTEGER 
     FIELD ErrorNumber AS INTEGER 
     FIELD ErrorDescription AS CHARACTER 
     FIELD ErrorParameters AS CHARACTER 
     FIELD ErrorType AS CHARACTER 
     FIELD ErrorHelp AS CHARACTER 
     FIELD ErrorSubType AS CHARACTER.

Tabela Temporária

Descrição

Entrada/Saída

tt-item

Temp-table com informações do Item e seus filhos.

Entrada


Definição:

DEFINE TEMP-TABLE tt-item NO-UNDO LIKE ITEM.


Métodos (Procedures Internas)

...

Quando a API for executada em modo persistente, os seguintes métodos estarão disponíveis para execução:

 

pi-SendUpsert

Requisito

Cria e envia XML de criação/alteração de registros (EAI2)

Sintaxe

run pi-SendUpsert in h-handle (input rRowid,

                                                  input cMode,

                                                  output table RowErrors).

Descrição

Cria e envia XML de criação/alteração de registros

Parâmetros

Descrição

rRowid

cMode

Rowid do item que deve ser integrado.

Criação ou Alteração (1 ou 2 respectivamente)

Retorno

RowErrors – Indica erros ocorridos durante a integração.

pi-SendDirectUpsertItem

Requisito

Cria e envia XML de criação/alteração de registros (MES)

Sintaxe

run pi-SendDirectUpsertItem in h-handle (input rRowid,

                                                                  output pcXML,

                                                                  output cChave,

                                                                  output table RowErrors).

Descrição

Cria e envia XML diretamente para webservice MES indicado nos parâmetros da produção (CP0106) de criação/alteração de registros

Parâmetros

Descrição

rRowid

Rowid do item que deve ser integrado.

Retorno

pcXML – LONGCHAR com XML criado para envio.

cChave – Chave da mensagem de integração.

RowErrors – Indica erros ocorridos durante a integração.

Procedure Interna

Objetivo

pi-SendDirectUpsertItem

Envia mensagens XML do cadastro de Item para TOTVS MES

Parâmetro

Descrição

rRowid [input]

Rowid do item.

pcXML [output]

XML que foi gerado e enviado.

cChave [output]

Chave para criação de pendência em caso de erro.

RowErrors [output]

Erros ocorridos durante a execução do método.

Se estiver tudo OK, ela estará vazia.



Procedure Interna

Objetivo

pi-SendDirectUpsertItemReference

Envia mensagens XML do cadastro de referências do item para TOTVS MES.

Parâmetro

Descrição

rRowid [input]

Rowid da relação item x referência (ref-item).

pcXML [output]

XML que foi gerado e enviado.

cChave [output]

Chave para criação de pendência em caso de erro.

RowErrors [output]

Erros ocorridos durante a execução do método.

Se estiver tudo OK, ela estará vazia.



Procedure Interna

Objetivo

pi-DeleteDirectItemReference

Envia mensagens XML da eliminação da relação entre item x referência para o TOTVS MES.

Parâmetro

Descrição

cItem [input]

Código do item.

cRefer [input]

Código da referência.

RowErrors [output]

Erros ocorridos durante a execução do método.

Se estiver tudo OK, ela estará vazia.

...