Documento de API
Produto: | Datasul |
Ocorrência: | Documentação de API |
Nome Físico | cpp/cpapi018.p |
Considerações Gerais
Objetivo
Realizar a sumarização das requisições de uma ou mais ordens.
Funcionamento
A API funciona da seguinte forma: Recebe como parâmetros as temp-tables, faz as críticas das mesmas, caso não tenha ocorrido nenhum problema realiza a sumarização das requisições informadas;
Se o programa chamador executa a API várias vezes para vários reportes, todas as temp-tables fora a tt-req-sum devem ser eliminas para que não gerarem duplicidade, não há necessidade de eliminar a tt-req-sum pois a mesma apenas retorna as requisições que foram criadas
Devem ser passadas 4 (cinco) temp-tables de entrada/saída.
Todas as temp-tables são passadas como parâmetro através do comando INPUT-OUTPUT PARAMETER TABLE.
Exemplo:
run cpp/cpapi018.p (input table tt-dados, Input table tt-ord-prod-2, Input-output table tt-req-sum, input-output table tt-erro, input yes) |
Tabelas Temporárias
Nos atributos das tabelas temporárias de entrada e saída:
tt-dados | Entrada/Saída | ||||
Nesta temp-table deverão ser armazenadas todos os parâmetros e se necessário pode ser informada uma seleção de ordens a serem sumarizadas. | Entrada | ||||
Atributo | Tipo | Formato | Valor Inicial | Obrigatório | Evolução |
c-estab-ini | Character | “x(3)” | ? | Não |
|
c-estab-fim | Character | “x(3)” | ? | Não |
|
i-linha-ini | Integer | “>>9” | ? | Não |
|
i-linha-fim | Integer | “>>9” | ? | Não |
|
i-ordem-ini | Integer | “>>>,>>>,>>9” | ? | Não |
|
i-ordem-fim | Integer | “>>>,>>>,>>9” | ? | Não |
|
d-data-ini | Date | “99/99/9999” | ? | Não |
|
d-data-fim | Date | “99/99/9999” | ? | Não |
|
Requis-por-ordem | Logical | “Sim/Não” | no | Sim |
|
Estado | Integer | “9” | ? | Sim |
|
Cod-Versão-Integracao | Integer | “999” | 0 | Sim |
|
c-camp-ini[1] | Character |
|
| Não |
|
c-camp-fim | Character |
|
| Não |
|
c-unid-negoc-ini[2] | Character |
| ? | Não |
|
c-unid-negoc-fim | Character |
| ? | Não |
|
Observação: Quando o campo requis-por-ordem tiver SIM como o seu valor, a Sumarização será feita para todas as ordens informadas. O campo estado pode receber dois valores: 1- Realizar a Sumarização, 2- Eliminar a Sumarização. Os campos c-estab-ini, c-estab-fim, i-linha-ini, i-linha-fim, i-ordem-ini, i-ordem-fim, d-data-ini, d-data-fim, representam a seleção de ordens a serem sumarizadas.
tt-ord-prod-2 | Entrada/Saída | ||||
Esta temp-table não é obrigatória se informada uma seleção. Nela são informadas as ordens a serem sumarizadas. Quando esta temp-table possuir alguma ordem informada, a API irá ignorar a seleção, se a mesma for informada. | Entrada | ||||
Atributo | Tipo | Formato | Valor Inicial | Obrigatório | Evolução |
Nr-ord-produ | Integer | “>>>,>>>,>>9” | ? |
| Sim |
It-codigo | Character | “x(8)” | ? |
| Não |
Cod-estabel | Character | “x(3)” | ? |
| Não |
Nr-linha | Integer | “>>9” | ? |
| Não |
Qt-ordem | Decimal | “>>>>>,>>9.9999” | ? |
| Não |
Índice | Atributos | Primário | Único |
|
|
id | Nr-ord-produ | X | X |
|
|
tt-req-sum | Entrada/Saída | ||||
Esta temp-table irá retornar todos os registros de requisição que forem alterados/criados. | Saída | ||||
Atributo | Tipo | Formato | Valor Inicial | Obrigatório | Evolução |
Nr-req-sum | Integer | “>>>,>>>,>>9” | ? | Não |
|
It-codigo | Character | “x(16)” | ? | Não |
|
Cod-refer | Character | “x(8)” | ? | Não |
|
Per-ppm | Decimal | >>>>,>>9.9999 | ? | Não |
|
r-rowid | Rowid |
| ? | Não |
|
Observação: O campo cod-refer só é válido a partir da release 2.02 do EMS.
tt-erro | Entrada/Saída | ||||
Para cada sumarização serão executadas validações para consistir os registros. Os erros encontrados na contabilização serão gravados na temp-table tt-erro. | Saída | ||||
Atributo | Tipo | Formato | Valor Inicial | Obrigatório | Evolução |
i-sequen | Integer |
| 0 |
|
|
cd-erro | Integer |
| 0 |
|
|
Mensagem | Character | x(255) | ? |
|
|
Observação: O campo cd-erro possui o número do erro do cadastro de mensagem. O campo mensagem possui a descrição da mensagem do cadastro de mensagem; O campo i-sequen possui o número sequencial do erro.
[1] C-camp-ini e c-camp-fim: Permite filtrar as ordens por Campanha. Conceito utilizado a partir da release 2.04.
[2] c-unid-negoc-ini e c-unid-negoc-fim: Estes campos somente precisam ser utilizados a partir da release 2.06B, onde será possível a utilização da funcionalidade de Unidade de Negócio.