× Linguagem de Programação ADVPL

Perguntas PCP - APONTAMENTO MOD 2

Mais
10 anos 4 meses atrás #23740 por rtonline
Bom dia, gostaria e uma ajuda rotina de movimento de produção MOD 2 (MATA681) no ERP Protheus 11 para bloquear a alteração dos campos H6_HORAINI (hora inicial), H6_HORAFIN (hora final) e H6_TEMPO (tempo real). Para que estes valores sejam atualizados e calculados automaticamente pelo sistema.

Desta forma o usuário não poderia incluir manualmente informação nestes campos e o sistema irá calculá-los da seguinte forma:

Campo H6_HORAINI (hora inicial) - será atualizado automaticamente com o horário no momento que o usuário abrir a tela de inclusão. O usuário deverá permanecer com a tela aberta até que seja finalizada a produção.

Campo H6_HORAFIN (hora final) - será atualizado automaticamente com o horário atual no momento que o usuário confirmar a gravação do apontamento. Campo H6_TEMPO (tempo real) - será atualizado automaticamente no momento da gravação com o tempo percorrido do início do apontamento até a sua gravação (hora final – hora inicial).

E em cada local de apontamento haverá um terminal para que o usuário possa abrir o apontamento da OP e quando este for encerrado atualizar os dados conforme descrito nos itens acima.

Será criado um parâmetro que irá conter o código dos usuários que poderão realizar o apontamento manual (neste caso para estes usuários os campos ficarão habilitados para digitação), isso se faz necessário para qualquer problema que venha a ocorrer que impeça que o apontamento seja realizado pelo operador.


Observação, testei bloqueando os campos no configurador e coloquei compatibilizador nos campos H6_HORAINI colocando o inicializador (SUBSTRING(TIME(),1,5), no campo H6_HORAFIN tem um compatibilizador igual, o problema está no H6_TEMPO(TEMPO REAL) esse só preenche se eu digitar H6_HORAINI, SE FOR AUTOMATICO NAO PREENCHE.



Alguém tem uma solução ou pode me ajudar?
Obrigado.

Por favor Acessar ou Registrar para participar da conversa.

Mais
10 anos 4 meses atrás #23755 por kanaamlrr
Respondido por kanaamlrr no tópico PCP - APONTAMENTO MOD 2
Ricardo, para calcular a diferença entre dois tempos você pode usar a função ELAPTIME()

cDif := ELAPTIME(cHoraFim, cHoraInicio)

Ele irá retornar a diferença entre as duas horas.
At.,
Kanaãm.

Por favor Acessar ou Registrar para participar da conversa.

Tempo para a criação da página:0.077 segundos
Joomla templates by a4joomla