Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

02. FÓRMULAS - DEFINIÇÕES
Âncora
pt02
pt02


Nesta pasta Através do menu Atualizações >Definições de cálculo >Fórmulas, 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.


Image RemovedImage Added

03. FÓRMULAS - MONTAGEM
Âncora
pt03
pt03

...

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.

Image RemovedImage Added


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.


Image RemovedImage Added

Image RemovedImage Added


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.

Image RemovedImage Added

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.

...

Image Added


    • 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:

...

Image Added

Exemplo utilizando os dois campos de Expressão:

...

Image Added


    • 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.

...

Image Added

    • 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.

...

Image Added



Informações
titleO campo Operador 3 deve ser preenchido da seguinte forma

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.

...

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:
Image RemovedImage Added

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:
        Image RemovedImage Added
      • Linha 2, no mesmo nível da primeira:
        Image RemovedImage Added

        A estrutura da fórmula ficará assim:

Image RemovedImage Added

      • 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:

Image Modified

      • Se houver apensas conjunções lógicas, a condição pode ser "aninhada", conforme exemplo:

Image AddedImage Removed

      • Se a complexidade da condição não permitir uma 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
languagedelphi
firstline1
titleFunção de Exemplo
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

Image RemovedImage Added


04. GRAVAÇÃO DA FÓRMULA
Âncora
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:

Image AddedImage Removed

Image RemovedImage Added

Após confirmar, o sistema apresentará como ficou o código compilado:

 Image RemovedImage Added

...

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.

...

.

...

05. COPIAR FÓRMULA
Âncora
pt06
pt06

...

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:

Image RemovedImage Added

Renomear a Salvar:

Image RemovedImage Added

Fórmula copiada:

Image RemovedImage Added


06. ROTEIRO DE CÁLCULO
Âncora
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
Informacao

...

Todas as fórmulas específicas devem terminar com o código diferente de ZERO, os múltiplos de 10 são reservados para fórmulas do sistema, podendo incluir até 9 sequências entre duas fórmulas do sistema.
TituloIMPORTANTE!


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..

Image Added

Na rotina de "Cadastro de Roteiro de Cálculo", em "Outras Ações", existe o botão

Âncora
recompilar
recompilar
"Recompilar Tudo". Como o nome já diz, essa opção irá recompilar todos os roteiros de cálculo existentes, mas não sem antes avaliar a necessidade da recompilação. Ou seja, ao clicar no botão o sistema irá verificar se a versão das fórmulas/roteiros (RC2/SRY) são menores que as contidas no RPO (GPFORBRA/GPROTBRA), em caso afirmativo, o sistema forçará a recompilação.

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.Image Removed