Alteração do Campo Calandário Semanal e Calendário Diário
Alteração dos os campos 'H7_ALOC' e 'H9_ALOC', referentes aos comandos "Calendário Semanal" e "Calendário Diário".
Por que é necessário alterar o tamanho dos campos 'H7_ALOC' (Calendário Semanal) e 'H9_ALOC' (Calendário Diário), sempre que se altera o parâmetro ‘MV_PRECISA’?
Quando se executa a rotina “Carga Máquina” do ambiente Planejamento e Controle de Produção (SIGAPC), a tabela 'SH7' (Calendário) grava os dados de uma semana inteira, porém, a tabela 'SH9' (Bloqueio e Exceções) grava apenas os dados de um dia.
O tamanho do campo ‘H7_ALOC’ (Calendário Semanal), portanto, é 7 vezes o tamanho do campo ‘H9_ALOC’ (Calendário Diário) que representa:
· 24 horas * 60 minutos = 1440 (1440 minutos/dia) na tabela 'SH7'
· 1440 * 7 / semana = 10.080 (10.080 minutos/semana) na tabela 'SH9'
O valor em minutos é dividido por 8, que é a compressão binária conseguida (8 bits = 1 byte).
Para a precisão de 1 minuto, a tabela ‘SH7’ corresponde a 10080 / 8 = 1260 e a tabela
‘SH9’ corresponde a 1440 / 8 = 180.
Devemos dividir este valor pela fração mínima de tempo para obter o tamanho com fração mínima de tempo maior que 1 minuto:
Tempo mínimo | 'H9_ALOC' |
1 | 1260/1 = 1260 |
5 | 1260/5 = 252 |
10 | 1260/10 = 126 |
15 | 1260/15 = 84 |
30 | 1260/30 = 42 |
60 | 1260/60 = 21 |
Quando se alterar o ‘MV_PRECISA’, a seguinte tabela de conversão deve ser utilizada:
Período Mínimo | 'MV_PRECISA' | Tamanho 'H7_ALOC' | Tamanho 'H9_ALOC' |
1 minuto | 60 | 1260(*) | 180 |
5 minutos | 12 | 252 | 36 |
10 minutos | 6 | 126 | 18 |
15 minutos (padrão) | 4 (padrão) | 84 (padrão) | 12 (padrão) |
30 minutos | 2 | 42 | 6 |
60 minutos | 1 | 21 | 3 |
(*) Para se utilizar a precisão igual a 1 minuto, deve-se alterar o tamanho do campo 'X3_TAMANHO' na tabela ‘SX3’ (dicionário de dados) para '4'. Assim, é possível que este comporte o tamanho de '1260' a ser atribuído ao 'H7_ALOC'.
Obs.: Quanto menor o parâmetro ‘MV_PRECISA’ (maior precisão), maior o tempo de processamento da rotina ‘Carga Maquina’.