Identificador de Regra
FIN-031IMHRE00
Módulo: FIN - Financeiro.
Finalidade: Usar variáveis disponíveis da grade de índices por hora na tela - Moedas - Índice por Hora (F031IMH) para consistência via ponto de regra e permitir a alteração das cotações e previsões.
Características: Se existir o identificador cadastrado e ativo, ele poderá ser chamado em 5 pontos da tela permitindo consistência e alteração conforma valor variável FINAEstado:
- INCLUINDO - Será chamado ao processar ao incluir uma nova cotação e permite alterar o valor da cotação e previsão;
- ALTERANDO- Será chamado ao processar ao incluir uma nova cotação e permite alterar o valor da cotação e previsão;
- EXCLUINDO- Será chamado ao excluir e não permite alterar o valor da cotação e previsão;
- ALTERANDO_VLRCOT - Será chamado ao alterar o valor da cotação e permite alterar o valor da cotação;
- ALTERANDO_VLRPRE - Será chamado ao alterar o valor da cotação e permite alterar o valor da previsão;
Tela: F031IMH
Transação: Não se aplica.
Regra:
Definir Alfa FINACodMoe;
Definir Data FINDDatMoe;
Definir Numero FINNHorCot;
Definir Numero FINNVlrCot;
Definir Numero FINNVlrPre;
Definir Numero FINNUsuGer;
Definir Data FINDDatGer;
Definir Numero FINNHorGer;
Definir Numero FINNUsuAtu;
Definir Data FINDDatAtu;
Definir Numero FINNHorAtu;
Definir Alfa FINAEstado;
Definir Funcao ConsisteHora();
Se (FINAEstado = "INCLUINDO")
{
ConsisteHora();
Se (FINDDatMoe <> DatSis)
Mensagem(erro,"Somente é possível incluir cotações para o dia atual.");
}
Senao
Se (FINAEstado = "ALTERANDO")
Mensagem(erro,"Alteração não permitida");
Senao
Se (FINAEstado = "EXCLUINDO")
Mensagem(erro,"Exclusão não permitida");
Senao
Se (FINAEstado = "ALTERANDO_VLRCOT")
{
ConsisteHora();
FINNVlrCot = FINNVlrCot / 60; @ Para permitir o usuário informar o preço por saca de 60 Kg @
}
Se (FINAEstado = "ALTERANDO_VLRPRE")
{
ConsisteHora();
FINNVlrPre = FINNVlrPre / 60; @ Para permitir o usuário informar o preço por saca de 60 Kg @
}
Funcao ConsisteHora();
{
Se ((FINNHorCot < HorSis) e (FINNUsuGer = 0))
Mensagem(erro,"Somente é possível incluir cotações com a hora maior que a hora atual.");
}
Variáveis Disponibilizadas:
Nome | Tipo | Observações | Retorna Valor |
---|---|---|---|
FINACodMoe | ALFA | Código da moeda | N |
FINDDatMoe | DATA | Data da cotação | N |
FINNHorCot | NÚMERO | Hora da cotação | N |
FINNUsuGer | NÚMERO | Usuário da geração | N |
FINDDatGer | DATA | Data de geração | N |
FINNHorGer | NÚMERO | Hora da geração | N |
FINNUsuAtu | NÚMERO | Usuário da atualização | N |
FINDDatAtu | DATA | Data da atualização | N |
FINNHorAtu | NÚMERO | Hora da atualização | N |
FINAEstado | ALFA | Estado (INSERINDO / ALTERANDO / EXCLUINDO / ALTERANDO_VLRCOT e ALTERANDO_VLRPRE) | N |
FINNVlrCot | NÚMERO | Valor da cotação | S |
FINNVlrPre | NÚMERO | Valor da previsão | S |
Atenção
Caso o parâmetro global LisVarReg esteja habilitado, a variável ListaVariaveis estará disponível em todos os identificadores de regras do sistema. O conteúdo desta variável lista os campos disponibilizados no identificador de regras em questão.
Não é aconselhada a ativação desse parâmetro global para o uso cotidiano. Esse recurso de listagem dos campos de identificadores auxilia a construção de regras e o Suporte para, por exemplo, depuração ou quando não houver acesso à documentação dos identificadores de regras.