Documento de API
Produto: | Datasul |
Ocorrência: | Documentação de API |
Nome Físico | docapi/enapi302.p |
Objetivo
Consistir e gravar componentes alternativos na estrutura de um item.
Funcionamento
A sintaxe para a chamada é:
run enp/ enapi302.p (input table tt-versao-integr,
output table tt-erros-geral,
input-output table tt-alternativo,
input-output table tt-alternativo,
input c-return).
Considerações Gerais
- Devem ser passadas 2 temp-tables com informações e parâmetros para a criação de componentes alternativos na estrutura.
- A temp-table TT-ALTERNATIVO é passada como parâmetro através do comando INPUT-OUTPUT, pois além de passar parâmetros, ela retorna informações para o programa chamador.
- A temp-table TT-REF-ESTRUT deve ser alimentada caso se queira trabalhar com itens pais ou alternativos que possuam controle de estoque por referência.
- Caso um dos registros enviados na temp-table TT-ALTERNATIVO não satisfaça todas as validações será alimentado o campo COD-ERRO com o código do erro correspondente.
Parâmetros de Entrada
Temp-table tt-alternativo : Temp-table que vai possuir as informações referentes aos componentes alternativos que se deseja cadastrar.
Definição do Include: enp/enapi202.i:
def temp-table tt-alternativo no-undo like alternativo
field cod-maq-origem as integer format "999" initial 0
field num-processo as integer format ">>>>>>>>9" initial 0
field num-sequencia as integer format ">>>>>9" initial 0
field ind-tipo-movto as integer format "99" initial 1
field cod-erro as integer format "99999" initial ?
field des-erro as char format "x(60)"
INDEX ch-codigo IS PRIMARY cod-maq-origem
num-processo
num-sequencia.
TEMP-TABLE tt-alternativo | |||
Atributo | Tipo | Formato | Valor Inicial |
It-codigo | Char | X(16)n | |
Sequencia | Inte | >>>>9 | 0 |
Es-codigo | Char | X(16) | |
Ordem | Inte | >>>>9 | 0 |
Al-codigo | Char | X(16) | |
Fator-perda | Deci-2 | >9.99 | 0 |
Quant-usada | Deci-10 | >>,>>9.9999999999 | 1 |
Observação | Char | X(40) | |
Conc-max | Deci-4 | >>>9,9999 | |
Conc-min | Deci-4 | >>>9,9999 | |
Concentração | Deci-4 | >>>9,9999 | |
Rendimento | Deci-4 | >>>9,9999 | |
Util-aloca | Logi | Sim/Não | Não |
Cod-depos | Char | X(3) | |
Ind-tipo-movto | Inte | 99 | 1 |
Cod-erro | Inte | 99999 | |
Des-erro | Char | X(60) |
Temp-table tt-ref-estrut: nesta temp-table são armazenadas as informações referentes aos itens controlados por referência fazendo a devida associação de um item com a sua respectiva referência.
Definição do Include: enp/enapi201.i:
def temp-table tt-ref-estrut no-undo like ref-estrut
field cod-maq-origem as integer format "999" initial 0
field num-processo as integer format ">>>>>>>>9" initial 0
field num-sequencia as integer format ">>>>>9" initial 0
field ind-tipo-movto as integer format "99" initial 1
field cod-erro as integer format "99999" initial ?
field des-erro as char format "x(60)"
INDEX ch-codigo IS PRIMARY cod-maq-origem
num-processo
num-sequencia.
TEMP-TABLE TT-REF-ESTRUT | |||
Atributo | Tipo | Formato | Valor Inicial |
It-codigo | Char | X(16) | |
Sequencia | Inte | >>>>>9 | |
Es-codigo | Char | X(16) | |
Cod-ref-it | Char | X(8) | |
Cod-ref-es | Char | X(8) |
Variável lógica “c-return”: se for necessário que um item obsoleto seja incluído como componente alternativo de uma estrutura, basta que o valor da mesma seja “yes” quando da execução da API.
Execução
Execução: O programa enapi302.p irá executar estas validações básicas:
1ª Validação: Versão de Integração
O programa irá verificar se o programa chamador está íntegro com a API, e isto ocorre através da verificação da versão de integração passada como parâmetro. Caso a versão esteja incompatível, a API abortará a execução retornando o código de erro 3941.
Outras Validações:
- Valida o item pai e o componente alternativo;
- Verifica se existe o componente para o qual está se tentando cadastrar um alternativo;
- Nas inclusões de alternativos verifica se já não existe um alternativo igual ao que está se tentando cadastrar.
Parâmetros de Saída
No retorno da execução do enapi302.p, será retornado um dos valores abaixo (via RETURN-VALUE):
NOK: Houveram erros durante o processamento.
OK: Execução com sucesso