ApontarOPs
Movimenta O.P.s.
Se o sistema estiver parametrizado para a geração do Bloco K, algumas consistências e bloqueios podem ser realizadas nessa função, garantindo a correta geração de informações do arquivo, conforme guia prático. Confira estas consistências na tela Parâmetros e consistências da empresa (F070ECN).
Sintaxe: ApontarOPs(vParametros,Retorno)
Tipo do retorno: Variável alfanumérica.
Parâmetros disponíveis
Nome | Tipo | Descrição |
---|---|---|
CodOri | Alfa | Código da Origem da O.P./O.S |
NumOrp | Alfa | Número da O.P./O.S |
CodEtg | Alfa | Código do estágio |
SeqRot | Alfa | Sequência de roteiro |
NumCad | Alfa | Código do operador |
TurTrb | Alfa | Turno de trabalho |
CodCre | Alfa | Centro de Recurso (obrigatório na regra de um apontamento de motivo de parada sem ligação com O.P.) |
QtdRe1 | Alfa | Quantidade de 1ª qualidade |
QtdRe2 | Alfa | Quantidade de 2ª qualidade |
QtdRe3 | Alfa | Quantidade de 3ª qualidade |
QtdRfg | Alfa | Quantidade refugada |
QtdIql | Alfa | Quantidade inspecionada |
CodPro | Alfa | Código do produto |
CodDer | Alfa | Código da derivação |
CodLot | Alfa | Código do lote |
NumSep | Alfa | Número de série |
DatMov | Alfa | Data do movimento (formato dd/mm/aaaa) |
HorMov | Alfa | Hora do movimento (formato hh:mm:ss) |
CodEqp | Alfa | Código do equipamento |
TipOpr | Alfa | Tipo da operação (usado apenas para apontamento de paradas) |
CodMtv | Alfa | Código do motivo de parada |
CodDft | Alfa | Código do defeito |
CodRef | Alfa | Código de referência |
IndDiv | Alfa | Campo para tratamentos diversos (D – n defeitos / O – n O.Ps.) |
CodDiv | Alfa | Código diverso (utilizado em conjunto com o IndDiv para apontar vários defeitos, várias O.Ps.) |
CodCcu | Alfa | Código do Centro de Custo |
Retorno | Alfa | Retorno |
Exemplos de regras
Definir alfa vParametros;
vParametros="CodOri="+vCCodOri+",NumOrp="+vCNumOrp+",CodEtg="+vCCodEtg+",SeqRot="+vCSeqRot+",NumCad="+vCNumCad+",CodEqp="+vCCodEqp+",QtdRe1="+vCQtdRe1;
ApontarOPs(vParametros,Retorno);
ValStr = Retorno;
Se (Retorno <> "OK")
GeraLog(Retorno);
Definir Alfa aParam;
Definir Alfa aRet;
aParam = "CodOri=20,NumOrp=831,CodEtg=211,SeqRot=10,NumCad=21,QtdRe1=1,QtdRe2=2,CodDft=D01";
ApontarOPs(aParam,aRet); /* início */
ApontarOPs(aParam,aRet); /* fim */
Será feito o movimento de uma unidade de 1ª qualidade e de duas unidades de 2ª qualidade, sendo que para esta quantidade de 2ª será apontado o defeito D01.
Definir Alfa aParametros;
Definir Alfa aRetorno;
Definir Alfa aDefeitos;
aParametros = "CodOri=45,NumOrp=388,CodEtg=501,SeqRot=10,NumCad=11,QtdRe2=10,IndDiv=D";
aDefeitos = "20000000000000061234 "; @ primeiro defeito: 6 UN de defeito 1234 e não tem ação corretiva @
aDefeitos = aDefeitos + "2000000000000004 D20 "; @ segundo defeito: 4 UN de defeito D20 e não tem ação corretiva @
aParametros = aParametros + ",\"CodDiv=" + aDefeitos + "\"";
ApontarOPs(aParametros,aRetorno); @ início @
ApontarOPs(aParametros,aRetorno); @ fim @
Nota
É obrigatório inserir quatro caracteres com o código da ação corretiva.
Neste exemplo estão sendo apontadas 10 unidades de 2ª qualidade, sendo que será cadastrado um registro de 6 UN com o defeito 1234 e outro de 4 UN com o defeito D20.
Para utilizar esta funcionalidade, é necessário passar o valor "D" na variável chamada IndDiv (indicativo do código diverso) e em seguida, na variável CodDiv, passar os N defeitos e suas respectivas quantidades:
- 1 caractere identificando o tipo da quantidade onde foi encontrado o defeito (2 - segunda qualidade, 3 - terceira qualidade, R - refugo);
- 15 caracteres com a quantidade;
- 4 caracteres com o código do defeito (se o código do defeito tiver apenas 3 caracteres, um deve ser passado em branco - espaço);
- 4 caracteres com o código da ação corretiva (opcional, mas os 4 bytes precisam ser preenchidos, nem que seja com espaços);
- Voltar ao item "1" acima para cada defeito diferente que for apontado.
Esse ciclo (que contém 24 caracteres) pode se repetir até 10 vezes. Ou seja, por 10 vezes pode ser inserida a linha:aDefeitos = aDefeitos + "2000000000000004 D20 "; @ segundo defeito. 4 UN defeito D20 e não tem ação corretiva @
Definir Alfa aParametros;
Definir Alfa aRetorno;
Definir Alfa aDefeitos;
aParametros = "CodOri=20,CodEtg=211,SeqRot=10,NumCad=21,QtdRe1=1,IndDiv=O,\"CodDiv=832-834,836\"";
ApontarOPs(aParametros,aRetorno); @ início @
ApontarOPs(aParametros,aRetorno); @ fim @
Neste
exemplo serão feitos movimentos de 1 UN de 1ª qualidade no estágio 211 e na
sequência de roteiro 10 das O.Ps./O.Ss 832, 833, 834 e 836. Para utilizar esta funcionalidade, deve-se informar o valor “O” (letra o) na
variável IndDiv e, na variável CodDiv, deve-se informar a abrangência de O.Ps.
que serão apontadas.
Definir Alfa aParametros;
Definir Alfa aRetorno;
aParametros = "CodMtv=M01,TipOpr=2,CodCre=2110,CodEtg=211";
ApontarOPs(aParametros,aRetorno); @ início @
ApontarOPs(aParametros,aRetorno); @ fim @
Quando a empresa estiver configurada com parada por centro de recurso e a variável CodEqp for preenchida, esse campo vai ser atribuído para o campo Identificação do bem (equipamento, máquina, etc.) atingido pela parada (campo Idebem da tabela E930MPR).
Nota
Para este
apontamento informe o valor 2 na variável TipOpr.
Definir Alfa aParametros;
Definir Alfa aRetorno;
aParametros = "CodOri=20,NumOrp=836,CodMtv=M01,TipOpr=2,CodEtg=211,SeqRot=10,NumCad=11";
ApontarOPs(aParametros,aRetorno); @ início @
ApontarOPs(aParametros,aRetorno); @ fim @
Nota
Para este
apontamento informe o valor 2 na variável TipOpr e o código do
superior na variável NumCad.
Definir Alfa aParametros;
Definir Alfa aRetorno;
@ movimento de início @
aParametros = "CodOri=20,NumOrp=858,CodEtg=211,SeqRot=10,NumCad=11,QtdRe1=1,CodLot=12345-000";
ApontarOPs(aParametros,aRetorno);
@ movimento de fim @
aParametros = aParametros + ",ForFim=S"; @ forçar fim @
ApontarOPs(aParametros,aRetorno);
Observação
- Somente é possível fazer a inclusão ou movimentação de um produto diferente na O.P. a partir da tela F909MIF;
- Não é necessário informar valores para as variáveis CodPro e CodDer quando a O.P. possuir apenas um produto e uma derivação ou se a origem estiver parametrizada para realizar a movimentação em grade;
- O sistema realizará o movimento com a data e hora atuais caso não sejam informados valores para as variáveis DatMov e HorMov;
- Se já houver um turno informado no cadastro do operador, não será necessário informar o valor da variável TurTrb (a menos que seja um turno diferente daquele definido no cadastro);
- Caso o usuário queira realizar o movimento de início e de fim, deverá executar a função duas vezes, a menos que o identificador CHA-900GMOIF01 esteja ativo;
- Para poder movimentar uma operação de O.P. que já esteja finalizada, equivalente ao que faz a tela de Inclusão de Movtos na O.P. (F909IOP) quando usuário utilizar função ApontarOPs, é necessário ativar o identificador de regras CHA-900GMOOF01 (Gera Movto Ordem Operação Finalizada);
- Para fazer o apontamento por embalagem através função ApontarOPs, deve-se incluir na variável de parâmetro da regra o texto CodDiv=E e em seguida o número da embalagem. Por exemplo, CodDiv=E00178907630000000001;
- Somente é possível utilizar a função para origens que movimentam por operador/operações, assim como ocorre, por exemplo, na tela F909MIF.
Identificadores de regra
Módulo | Código |
CHA | 900GMOOF01 |
PRD | OOOARFDP01 |