Documento de API
Produto: | Datasul |
Ocorrência: | Documentação de API |
Nome Físico | cpp/cpapi002.p |
Considerações Gerais
Objetivo
Importar para o EMS 2.0 dados das tabelas de ordens de produção, reservas de materiais e operações da ordem.
Funcionamento
A geração das informações referentes a ordens de produção, reservas de materiais e operações será feita baseada somente nas temp-tables passadas como parâmetro para o programa. A princípio não serão buscadas informações da estrutura cadastrada na engenharia para geração das reservas e operações de um item.
Parâmetros de Entrada:
run cpp/cpapi002.p(input table tt-ord, input table tt-res, input table tt-ope, input table tt-lixo, input-output table tt-erros) |
Tabelas Temporárias
Nos atributos das tabelas temporárias de entrada e saída:
tt-ord | Entrada/Saída | ||||
Temp-table que vai possuir as informações referentes à ordem de produção. | Entrada | ||||
Atributo | Tipo | Formato | Valor Inicial | Obrigatório | Evolução |
Nr-ord-prod | Integer | >>>,>>>,>>9 | 0 |
|
|
C-arquivo1 | Char | X(10) |
|
|
|
It-codigo | Char | X(16) |
|
|
|
Qt-ordem | Decimal | >>>>>,>>9.9999 | 0 |
|
|
Un | Char | XX |
|
|
|
Tipo | Integer | >9 | 1 |
|
|
Estado | Integer | >9 | 1 |
|
|
Nr-linha | Integer | >>9 | 0 |
|
|
Mês-inicio | Integer | 99 |
|
|
|
Dia-inicio | Integer | 99 | 0 |
|
|
Ano-inicio | Integer | >>>9 | 0 |
|
|
Mês-termino | Integer | 99 |
|
|
|
Dia-termino | Integer | 99 | 0 |
|
|
Ano-termino | Integer | >>>9 | 0 |
|
|
Mes-emissao | Integer | 99 | 0 |
|
|
Dia-emissao | Integer | 99 | 0 |
|
|
Ano-emissao | Integer | >>>9 | 0 |
|
|
Cd-planejado | Char | X(12) |
|
|
|
Ct-codigo | Char | X(20) |
|
|
|
Sc-codigo | Char | X(20) |
|
|
|
Rep-prod | Integer | >9 | 1 |
|
|
Cod-estabel | Char | X(3) |
|
|
|
Cod-depos | Char | X(3) |
|
|
|
Nome-abrev | Char | X(12) |
|
|
|
Cod-gr-cli | Integer | >9 |
|
|
|
Nr-pedido | Char | X(12) |
|
|
|
Nr-sequencia | Integer | >>,>>9 |
|
|
|
Cod-refer | Char | X(8) |
|
|
|
Lote-serie | Char | X(10) |
|
|
|
Emite-requis | Logi | Sim/Não | Sim |
|
|
Emite-ordem | Logi | Sim/Não | Sim |
|
|
Prioridade | Integer | 999 | 0 |
|
|
Sit-aloc | Integer | >9 | 1 |
|
|
Narrativa | Char | X(2000) |
|
|
|
log-control-estoq-refugo | Logi | Sim/Não |
|
|
|
log-refugo-preco-fisc | Logi | Sim/Não |
|
|
|
cod-item-refugo | Char | X(16) |
|
|
|
val-relac-refugo-item | Decimal | >,>>9.99999 |
|
|
|
tt-res | Entrada/Saída | ||||
Temp-table que vai possuir as reservas de matéria-prima. | Entrada | ||||
Atributo | Tipo | Formato | Valor Inicial | Obrigatório | Evolução |
Nr-ord-prod | Integer | >>>,>>>,>>9 | 0 |
|
|
C-arquivo1 | Char | X(10) |
|
|
|
It-codigo | Char | X(16) |
|
|
|
Item-pai | Char | X(16) |
|
|
|
Cod-roteiro | Char | X(16) |
|
|
|
Op-codigo | Integer | >>>>9 | 0 |
|
|
Quant-orig | Decimal | ->>>>>,>>9.9999 | 0 |
|
|
Un | Char | XX |
|
|
|
Tipo-sobra | Integer | >9 | 1 |
|
|
Mês-reserva | Integer | 99 |
|
|
|
Dia-reserva | Integer | 99 |
|
|
|
Ano-reserva | Integer | >>>9 |
|
|
|
Lote-serie | Char | X(10) |
|
|
|
Localizacao | Char | X(10) |
|
|
|
Cod-depos | Char | X(3) |
|
|
|
Estado | Integer | >9 | 1 |
|
|
linha | Integer | >>>>9 |
|
|
|
Veiculo | Logical | Sim/Não | No |
|
|
Per-ppm | Decimal | >>>>,>>9.9999 |
|
|
|
Cod-refer | Char | x(8) |
|
|
|
Observação: Os campos Veículo e Per-ppm somente são usados a partir da release 206 do EMS, caso o cliente possua implantada a função Controle Concentração/PPM. Assim, caso o item da reserva seja do tipo Veículo, e esta reserva deva ser tratada como veículo para efeito de Balanceamento, o campo Veículo deverá ser passado com o valor Yes. Neste caso, no campo Per-ppm deverá ser informado o Percentual de distribuição que será aplicado para o veículo em questão no momento do processo de balanceamento da ordem.
tt-ope | Entrada/Saída | ||||
Temp-table que vai possuir as operações da ordem. | Entrada | ||||
Atributo | Tipo | Formato | Valor Inicial | Obrigatório | Evolução |
Nr-ord-prod | Integer | >>>,>>>,>>9 | 0 |
|
|
C-arquivo1 | Char | X(10) |
|
|
|
It-codigo | Char | X(16) |
|
|
|
Cod-roteiro | Char | X(16) |
|
|
|
Op-codigo | Integer | >>>>9 | 0 |
|
|
Descrição-oper | Char | X(34) |
|
|
|
Tipo-oper | Integer | >9 | 1 |
|
|
Gm-codigo | Char | X(9) |
|
|
|
Revisao-oper | Char | X(8) |
|
|
|
Fi-codigo | Integer | >>>>9 | 0 |
|
|
Ferramenta | Char | X(16) |
|
|
|
Pto-controle | Integer | >>9 | 0 |
|
|
Fator-sobrep | Integer | >>9 | 0 |
|
|
Proporção | Deci | >>9.99 | 100 |
|
|
Un-med-tempo | Integer | >9 | 1 |
|
|
Nr-unidades | Integer | >>>>9 | 100 |
|
|
Tempo-prepar | Deci | >>>9.999 | 0 |
|
|
Tempo-homem | Deci | >>>9.999 | 0 |
|
|
Tempo-maquin | Deci | >>>9.999 | 0 |
|
|
Numero-homem | Integer | >>9 | 1 |
|
|
Emite-ficha | Logical | Sim/Não | Sim |
|
|
Oper-cq | Logical | Sim/Não | Não |
|
|
Cd-mob-dir | Char | X(5) |
|
|
|
Linha | Integer | >>>>9 |
|
|
|
Cod-item-refugo | Char | X(16) |
|
|
|
Val-relac-refugo-item | Decimal | >,>>9.99999 |
|
|
|
Índice | Atributos | Primário | Único |
|
|
operacao | Op-codigo |
|
|
|
|
tt-lixo | Entrada/Saída | ||||
Utilização da temp-table tt-lixo. | Entrada | ||||
Atributo | Tipo | Formato | Valor Inicial | Obrigatório | Evolução |
Nr-ord-produ | Integer | >>>,>>>,>>9 | 0 |
|
|
c-arquivo-1 | Char | X(4) | Lixo |
|
|
Linha | Integer | >>>>9 | 0 |
|
|
Utilização da temp-table tt-lixo
No caso do campo c-arquivo seja diferente de “res”, “ope” ou “”
Exemplo :
if c-arquivo <> "ord":U and
c-arquivo <> "res":U and
c-arquivo <> "ope":U and
c-arquivo <> "" then do:
create tt-lixo.
assign tt-lixo.nr-ord-produ = 0
tt-lixo.c-arquivo1 = "lixo":U
tt-lixo.linha = i-linha.
end.
Execução
Execução: O programa cpapi002.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 por meio 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:
- Verifica se existe numeração disponível para a inclusão de mais ordens;
- Consiste a existência do item da ordem;
- Verifica se tal item não está obsoleto;
- Consiste a unidade de medida do item de acordo com seu cadastro;
- Consiste se as datas de início e término da ordem coincidem com os períodos de produção cadastrados;
- Valida a conta contábil de acordo com o cadastro.
- Observação:
- Se a cpapi002.p for utilizada em programa específico e o cliente deseja ver a tela de acompanhamento, deve-se declarar no mesmo a variável h-acomp como new shared variable e setar o handle por meio do comando
- run utp/ut-acomp.p persistent set h-acomp.
- Desta forma se o usuáro setar esta variável com um handle válido, o programa emitirá a caixa de acompanhamento.
Parâmetros de Saída
No retorno da execução do cpapi002.p, será retornado um dos valores abaixo (via RETURN-VALUE):
NOK: houveram erros durante o processamento
OK: execução com sucesso