Histórico da Página
CONTEÚDO
- Visão Geral
- Fórmulas - Definições
- Fórmulas - Montagem
- Gravação da fórmula
- Copiar Fórmula
- Roteiro de Cálculo
01. VISÃO GERAL Âncora pt01 pt01
pt01 | |
pt01 |
Será apresentado a maneira de criar uma fórmula de usuário, com as opções disponíveis no cadastro, e posteriormente inseri-la no roteiro de cálculo.
02. FÓRMULAS - DEFINIÇÕES
...
Âncora pt02 pt02
pt02 | |
pt02 |
Através do menu Atualizações >Definições de cálculo >Fórmulas, Nesta pasta devem ser informados os dados que definem e identificam a fórmula, dando a ela um nome. Os principais campos são:
- Cod. Fórmula: Informe o código que identificará a fórmula, utilizando letras e/ou números, sem caracteres especiais.
- Desc.Formula: Informe a descrição da fórmula. Quanto mais objetiva a descrição, mais fácil será seu entendimento na localização.
- Retorno: Selecione um resultado para a fórmula, geralmente um mnemônico, sendo esta informação opcional.
- Obs. Fórmula: Inclua neste campo informações adicionais, como mais detalhes da fórmula, sugerindo exemplos etc. Esta informação também é opcional, mas importante para quem dar manutenção saber detalhes sobre a fórmula.
03. FÓRMULAS - MONTAGEM Âncora pt03 pt03
pt03 | |
pt03 |
Nesta pasta deve-se construir efetivamente a estrutura da fórmula. A estrutura da fórmula será exibida em duas áreas distintas:
Na área à esquerda, no canto superior, destaca-se os itens que podem ser incluídos na estrutura da fórmula, bem como opções de manutenção da linha posicionada.
Os seguintes botões estão disponíveis:
...
Exclui a linha da fórmula posicionada na estrutura, e tudo que estiver "dentro" dela, no caso de uma condição ou sequência.
No momento da inclusão ou operação de "colar" um item (condição, enquanto, execução) o sistema pergunta em que nível deverá ser criado:
- Novo item – o sistema cria um novo item no mesmo nível do item em que está posicionado.
- Subitem – o sistema cria um novo item no nível abaixo do item em que está posicionado, só deve ser utilizado para incluir itens dentro de condições ou sequências.
Na área da direita é apresentada a descrição de cada item da fórmula. É por esta área que deve ser feita a manutenção, considerando as definições da estrutura.
Os botões abaixo estão disponíveis:
...
Os campos de "Descrição", "Expressão", "Operadores" e "Resultado" podem ou não estar disponíveis e devem ser preenchidos de acordo com o tipo de item que esta sendo incluído ou alterado.
- Item: Mensagem
Deve ser informado apenas os campos "Resultado" e "Descrição". Via de regra, usa-se o mesmo conteúdo nos dois campos.
...
- Item: Condição
Obrigatoriamente deve ser informado apenas os campos "Descrição", "1ª Expressão" e "Op. 3", porém é possível dividir a expressão nos dois campos, utilizando para isso o "Op. 2"
Exemplo utilizando apenas um campo de Expressão:
...
Exemplo utilizando os dois campos de Expressão:
...
- Item: Execução
Devem ser informados apenas os campos Descrição, Resultado.
No campo "Resultado" pode ser feita atribuição de variáveis ou ainda a execução de uma função específica, previamente compilada no RPO.
...
- Item: Enquanto
Neste item devem ser informados os campos "Descrição" e "1ª Expressão". Na expressão deve ser inserido a condição para que o laço seja executado enquanto ela for verdadeira.
...
Informações | ||
---|---|---|
| ||
END.: Quando a condição, execução ou laço terminam no item da fórmula que está sendo incluído/alterado. Neste caso não poderá ser incluído um novo item no mesmo nível do que acabou se der incluído, somente em um subitem no caso de condição ou laço. CNT.: Quando será feita alguma outra execução ou condição após o item da fórmula que está sendo incluído/alterado. |
Fórmulas Complexas Âncora pt04 pt04
pt04 | |
pt04 |
A quantidade máxima de caracteres que podem ser utilizados dentro do campo "Expressão" é 250, caso seja incluída uma expressão maior, a fórmula não poderá ser gravada, exibindo o alerta abaixo:
Caso exista a necessidade de inclusão de uma expressão maior que 250 caracteres, algumas opções podem ser utilizadas, são elas:
- Usar o "Op. 3" para "sequenciar" a condição em duas ou mais linhas.
Linha 1: - Linha 2, no mesmo nível da primeira:
A estrutura da fórmula ficara ficará assim:
- Usar o "Op. 3" para "sequenciar" a condição em duas ou mais linhas.
- Caso existam disjunções lógicas, como no exemplo, poderá dividir uma condição em várias (uma em cada linha). Esta é a forma recomendada por ser visualmente mais agradável e de fácil compreensão e manutenção:
- Se houver apensas conjunções lógicas, a condição pode ser "aninhada", conforme exemplo:
- Se a complexidade da condição não permitir uma fórmula maneira lógica de dividi-la usando uma das formas acima, ela poderá ser escrita como função de usuário, compilada no RPO e chamada diretamente na "1ª Expressão":
- Se a complexidade da condição não permitir uma fórmula maneira lógica de dividi-la usando uma das formas acima, ela poderá ser escrita como função de usuário, compilada no RPO e chamada diretamente na "1ª Expressão":
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
User Function ChkDtAdm() Local lRet := .F. If ( AnoMes(SRA->RA_ADMISSA) == AnoMes(dDataBase) .And. Day(SRA->RA_ADMISSA) <= 10 ) .or.; ( AnoMes(SRA->RA_ADMISSA) == AnoMes(dDataBase) .And. Day(SRA->RA_ADMISSA) <= 20 ) .or.; ( AnoMes(SRA->RA_ADMISSA) == AnoMes(dDataBase) .And. Day(SRA->RA_ADMISSA) <= 31 ) lRet := .T. EndIf Return lRet |
04. GRAVAÇÃO DA FÓRMULA Âncora pt05 pt05
pt05 | |
pt05 |
Quando terminar de incluir/alterar a fórmula deverá "Salvar" para que o sistema compile o código gerado dentro do RPO de fórmulas:
Após confirmar, o sistema apresentará como ficou o código compilado:
E criará o fonte, que poderá ser utilizado para DEBUG, dentro da pasta "Source" que esta localizada dentro da pasta do RPO de fórmulas.
Card documentos | ||||
---|---|---|---|---|
|
...
05. COPIAR FÓRMULA Âncora pt06 pt06
pt06 | |
pt06 |
As fórmulas do sistema não podem ser alteradas, porém é possível copia-la e fazer alterações especificas que o padrão não atenda, diretamente na cópia, e em seguida substituir a fórmula utilizada no roteiro de cálculo.
Dessa maneira, não é necessário reescrever toda a formula fórmula já pronta no padrão, reaproveitando grande parte do código já escrito no padrão e modificar apenas o necessário para atender a regra específica do cliente:
Renomear a Salvar:
Fórmula copiada:
06. ROTEIRO DE CÁLCULO Âncora pt07 pt07
pt07 | |
pt07 |
Depois de criar a fórmula, deverá entrar no cadastro do roteiro desejado, desabilitar as possíveis fórmulas padrões que serão substituídas pela fórmula específica e inclui-la na mesma posição.
...
Card documentos |
---|
...
|
...
|
No exemplo abaixo, duas fórmulas do padrão foram desabilitadas, campo "Habilitado = Não".
Estas fórmulas 00110 e 00120 foram substituídos pela fórmula 00125, que ficou posicionada conforme a sequencia numeral, logo em seguida dos roteiros substituídos. Neste cenário, qualquer valor entre 00101 e 00129 (exceto os múltiplos de 10) poderiam ser utilizados..
Na rotina de "Cadastro de Roteiro de Cálculo", em "Outras Ações", existe o botão
Âncora | ||||
---|---|---|---|---|
|
Essa opção deve ser utilizada apenas se por algum motivo o sistema apresentou problemas na compilação das fórmulas/roteiros, e só irá funcionar se o RPO de fórmulas não estiver em uso por outro processo ou usuário.