Árvore de páginas

Documento de API

Produto:

Datasul

Ocorrência:

Documentação de API

Nome Físicocpp/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