Histórico da Página
Documento de API
Produto: | Datasul |
Ocorrência: | Documentação de API |
| Nome Físico | cdp/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>, 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 |
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. |
...