Documento de API
Produto: | Datasul |
Ocorrência: | Documentação de API |
Nome Físico | docapi/cfapi001.p |
Objetivo: Realizar o cálculo do custo de material, mão-de-obra e ggf para o item configurado e seus componentes.
Considerações Gerais:
- Devem ser passadas 5 (cinco) temp-tables como parâmetro, sendo as duas de entrada e três de saída, e mais um parâmetro lógico (yes/no) que define se os erros já existentes na temp-table de erros serão eliminados no início da execução.
- Exemplo de execução da API:
run cfp/cfapi001.p (input table ttItens,
input table ttParam,
output table ttValItem,
output table ttEstrut,
output table tt-erro,
input yes).
- A API funciona da seguinte forma: Recebe como parâmetros as temp-tables, faz as criticas das mesmas, caso não tenha ocorrido nenhum problema retorna os valores de custo do item pai na temp-table ttValItem, e dos componentes na ttEstrut.
- Se o programa chamador necessita executar a api para vários Itens configurados deve-se lembrar de limpar as temp-tables de entrada e criá-las novamente para o novo item.
Parâmetros de Entrada
Temp-table ttItens: nesta temp-table deverá ser armazenado o item configurado e seu número de configuração a ter os valores de custo calculados.
TEMP-TABLE TTITENS | ||||
Atributo | Tipo | Formato | Valor Inicial | Obrigatório |
nr-estrut | Integer | “>>>>>>9” | ? | Sim |
It-codigo | Caracter | “x(16)” | ? | Sim |
Descrição | Caracter | “x(60)” | ? | Não |
Um | Caracter | “x(02)” | ? | Não |
Cod-refer | Caracter | “x(08)” | ? | Não |
Da-corte-es | Date | “99/99/9999” | Hoje | Sim |
Da-corte-op | Date | “99/99/9999” | Hoje | Sim |
Quantidade | Decimal | “->>,>>9.9999999999" | 1 | Sim |
Fm-codigo | Caracter | “x(08)” | ? | Não |
Ge-codigo | Integer | “>9” | ? | Não |
Temp-table ttParam: nesta temp-table deverão ser armazenados os parâmetros para o cálculo dos valores de custo.
TEMP-TABLE TTPARAM | ||||
Atributo | Tipo | Formato | Valor Inicial | Obrigatório |
cod-versao-integracao | Integer | “>>9” | ? | Sim |
Custo-incomp | Logical | “Sim/Não” | Não | Sim |
Cons-refugo | Logical | “Sim/Não” | ? | Sim |
Num-niveis | Integer | “99” | 19 | Sim |
Correcao | Logical | “Sim/Não” | Não | Sim |
Cus-oper | Integer | “9” | ? | Sim |
Cons-tempo-prep | Logical | “Sim/Não” | Não | Sim |
Cons-custo-prep-tot | Logical | “Sim/Não” | Não | Sim |
Tipo-lote-prep | Integer | “9” | 1 | Sim |
Tipo-preco | Integer | “9” | 1 | Sim |
Moeda-cot | Integer | “9” | 0 | Sim |
Moeda | Integer | “9” | 1 | Sim |
Cod-estabel | Caracter | “x(03)” | ? | Sim |
- cod-versão-integração: Versão de integração da API.
- custo-incomp: Indica se a API deve gerar erro quando algum valor de custo estiver incompleto.
- cons-refugo: Indica se o custo de refugo será considerado no custo total.
- num-niveis: Número de níveis a descer na estrutura configurada.
- correcao: Determina se a API realizará a correção dos valores caso a moeda informada seja diferente da moeda padrão do item.
- cus-oper: Indica o tipo de custo da operação, 1- Total, 2- Previsto, 3- Padrão.
- cons-tempo-prep: Calcula o custo do tempo de preparação.
- cons-custo-prep-tot: Considera o custo de preparação no total.
- tipo-lote-prep: 1- Pelo lote econômico, 2- Pelo lote econômico uma única vez, 3- Preparação total pela quantidade informada, 4- Preparação total uma única vez.
- tipo-preco: 1- Médio Batch, 2- Médio On-line, 3- Custo Padrão, 4- Preço Base, 5- Preço Reposição 6- Preço Última Entrada.
- moeda: Indica a moeda em que será feito o cálculo.
- moeda-cot: Indica a moeda em que serão feitas as correções.
- cod-estabel: Indica o estabelecimento que será utilizado para os cálculos.
Parâmetros de Saída
Temp-table ttValItem: Esta temp-table retornará os valores de custos do item configurado pai.
TEMP-TABLE TTVALITEM | |||
Atributo | Tipo | Formato | Valor Inicial |
nr-estrut | Integer | “>>>>>>9” | ? |
It-codigo | Caracter | “x(16)” | ? |
De-acum-mat | Decimal | “>>>>>,>>>,>>9.9999” | ? |
De-acum-mob | Decimal | “>>>>>,>>>,>>9.9999” | ? |
De-acum-pre | Decimal | “>>>>>,>>>,>>9.9999” | ? |
De-acum-ggf (6) | Decimal | “>>>>>,>>>,>>9.9999” | ? |
De-acum-ext | Decimal | “>>>>>,>>>,>>9.9999” | ? |
De-tot-refugo | Decimal | “>>>>>,>>>,>>9.9999” | ? |
De-acum-total | Decimal | “>>>>>,>>>,>>9.9999” | ? |
- nr-estrut: Numero de configuração do item pai.
- it-codigo: Código do item pai.
- de-acum-mat: Custo de Material.
- de-acum-mob: Custo de Mão-de-Obra.
- de-acum-pre: Custo de Preparação.
- de-acum-ggf: Custo de GGF (guarda o custo dos 6 possíveis tipos de ggf).
- de-acum-ext: Custo das Operações Externas.
- de-tot-refugo: Custo total de Refugo.
- de-acum-total: Custo total do item.
Temp-table ttEstrut: Esta temp-table retornará os valores de custos dos componentes da configuração.
TEMP-TABLE TTESTRUT | |||
Atributo | Tipo | Formato | Valor Inicial |
nr-estrut | Integer | “>>>>>>9” | ? |
It-codigo | Caracter | “x(16)” | ? |
Nr-estrut-filha | Integer | “>>>>>>9” | ? |
Es-codigo | Caracter | “x(16)” | ? |
Fantasma | Logical | “Sim/Não” | ? |
Sequencia | Integer | “>>>>9” | ? |
Quantidade | Decimal | “->>>>,>>9.9999999” | ? |
Quant-usada | Decimal | “->>>>,>>9.9999999” | ? |
Data-inicio | Date | “99/99/9999” | ? |
Data-termino | Date | “99/99/9999” | ? |
Compr-fabr | Logical | “Sim/Não” | ? |
Nivel | Integer | “99” | ? |
Unit-mat | Decimal | “>>>>>,>>>,>>9.9999” | ? |
Tot-mat | Decimal | “>>>>>,>>>,>>9.9999” | ? |
Unit-mob | Decimal | “>>>>>,>>>,>>9.9999” | ? |
Mob-acum | Decimal | “>>>>>,>>>,>>9.9999” | ? |
Ge-codigo | Integer | “>9” | ? |
Fm-codigo | Caracter | “x(08)” | ? |
- nr-estrut: Numero de configuração do pai do componente.
- it-codigo: Código do item pai do componente.
- nr-estrut-filha: Numero de configuração do componente.
- es-codigo: Código do item componente.
- fantasma: Indica se o componente é fantasma.
- sequencia: Seqüência do componente na estrutura.
- quantidade: Indica a quantidade usada na ligação entre o pai e o componente.
- quant-usada: Indica a quantidade usada referente as ligações vindas da explosão das estruturas.
- data-inicio: Data de inicio da estrutura.
- data-termino: Data de término da estrutura.
- compr-fabr: Indica se o componente é comprado ou fabricado.
- nivel: Indica em que nível da estrutura se encontra o componente.
- unit-mat: Indica o custo unitário de material do componente.
- tot-mat: Indica o custo total de material do componente.
- unit-mob: Indica o custo unitário de mão-de-obra do componente.
- mob-acum: Indica o custo total de mão-de-obra do componente.
- ge-codigo: Grupo de estoque do componente.
- fm-codigo: Família do componente.
Temp-table tt-erro: Para cada balanceamento serão executadas validações para consistir os registros, os erros encontrados serão gravados na temp-table tt-erro.
TEMP-TABLE TT-ERRO | |||
Atributo | Tipo | Formato | Valor Inicial |
i-sequen | Integer |
| 0 |
cd-erro | Integer |
| 0 |
Mensagem | Character | “x(255)” | ? |
|
|
|
|
Obs: 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;
Execução
Execução:
- O programa cfp/cfapi001.p irá executar as seguintes validações:
Número do Erro | Mensagem | Ajuda |
4205 | Parâmetros de Estoque não Cadastrados | Os Parâmetros de Estoque devem ser cadastrados |
2075 | Parâmetros de Custos não cadastrados | Os Parâmetros de Custos devem ser cadastrados |
25904 | Relacionamento do item &1 com o estabelecimento &2 inexistente | Deve ser cadastrado o relacionamento entre os itens e os estabelecimentos |
3941 | Versão de integração incorreta | A versão de integração informada através dos parâmetros internos é incompatível com a versão atual da API. Favor contatar suporte técnico. |
18838 | Grupo Máquina &1 não possui relacionamento com o estabelecimento &2 | Deve ser cadastrado o |
27204 | Não existem custos de GGF informados | Devem ser informados os custos de GGF para o período corrente |
27202 | Operação &1 está com os tempos zerados | Devem ser informados os tempos da operação |
27206 | Centro de custo &1 sem horas reportadas | Deve ser executado o cálculo de horas apropriadas por centro de custo. |
4238 | Item &1 possui preço &2 zerado | O valor do preço passado como parâmetro deve ser atualizado. |