Árvore de páginas
Ir para o final dos metadados
Ir para o início dos metadados

Produto:

Protheus.

Ocorrência:

PSIGAGPE0016 - Como inserir uma fórmula/ Roteiro de usuário na versão 12?

Passo a passo:

GPEA290 - SIGAGPE/ Atualizações/ Definições de Cálculo/ Fórmulas - há duas pastas disponíveis: Definições e Montagem:


1 - Definições:

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.
  • Desc.Formula: Informe a descrição da fórmula, sua principal funcionalidade. 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: Descreva neste campo informações adicionais, como mais detalhes da fórmula, sugerindo exemplos etc.




2 - Montagem:


Nesta pasta deve-se construir efetivamente a estrutura da fórmula. A estrutura da fórmula será exibida em duas áreas distintas:

a) A área à esquerda destaca os itens incluídos na estrutura da fórmula, para visualização.

Os botões abaixo estão disponíveis:

  • - Incluir uma [Condição] na formula - <F5>

A "Condição" é o mesmo que o comando "IF" das linguagens de programação. Entretanto, não existe o comando "ELSE" na montagem da fórmula, sendo necessário inserir todos os "IFs" necessários para atender todas as condições possíveis.

  • - Incluir uma [Execução] na formula - <F6>
  • - Incluir um [Enquanto] na formula - <F7>

O "Enquanto" é o mesmo que o comando "While" das linguagens de programação. 

  • - Incluir uma [Mensagem] na formula - <F12>

A "Mensagem" é o mesmo que os comandos para inserir comentários das linguagens de programação. 

 

Observação:  As mais utilizadas são "Condição" e "Execução". As opções "Enquanto" e "Mensagem" são pouco utilizadas.

Outras opções:

  • - Editar Formula - <F8>
  • - Pesquisar
  • - Recortar
  • - Copiar
  • - Colar
  • - Excluir a sequência atual da fórmula


No momento da inclusão de um item (condição, enquanto, execução) o sistema pergunta em que nível deverá ser criado, se:
  • 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.

b) Na área da direita é apresentada a descrição de cada item da fórmula. É por esta área da formula que os itens recebem a manutenção, considerando as definições da estrutura.

Os botões abaixo estão disponíveis:

- Operadores

- Confirma

- Cancela

 

Importante

 

Para uma melhor visualização da fórmula é sugerido que o preenchimento do campo Descrição:

  • Seja igual ao campo Resultado, quando o item da fórmula for Mensagem ou Execução.
  • Seja igual ao campo 1ª Expressão, quando o item da formula for Condição ou Laço.

Preenchimento dos campos de acordo com o tipo de item da fórmula:

  • Itens de Mensagem ():
    • Descrição: informe a descrição da mensagem que será apresentada na fórmula.
    • Resultado: neste caso o resultado deve ser igual à descrição da mensagem.

 

  • Itens de Condição ():
    • Descrição: informe a descrição da condição que será executada na fórmula.
    • 1ª Expressão: informe a condição que deve ser atendida para que seja efetuada alguma execução.

 

  • Itens de Execução ():
  • Descrição: informe a descrição da execução que será na fórmula.
    • Resultado: defina o que será executado pela fórmula, neste caso poderá ser incluída uma função de usuário ou uma função que exista no produto padrão.

Também poderão ser utilizadas variáveis utilizadas dentro do fonte padrão ou específico, exemplo:

Os arrays aCodFol e Asind são variáveis que foram criadas e carregadas em funções padrões (ou específicas) que já foram chamadas antes de chegar nesta fórmula, com isso é possível utilizá-las para criar a lógica desejada:

  • Itens de Enquanto ():
    • Descrição: informe a descrição da condição que será executada por repetição.
    • 1ª Expressão: informe a condição que será executada enquanto seu conteúdo for verdadeiro.

Para o preenchimento do campo Operador 3, existem as opçõ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.

 

No campo de Operador 1, 2 e 3, ao clicar no botão , será exibido uma janela com os operadores disponíveis.

 

5 - Salvar a Fórmula:

Quando terminar de alterar a fórmula deverá Salvar para que o sistema compile o código gerado dentro do RPOFRM:

RPOFRM atualizado com a data da compilação:

Fonte da fórmula criada atualizada:

6 - Opção Copiar Fórmula

Uma opção bastante útil é a de copiar a fómula inteira padrão para uma específica, para que seja apenas modificado alguma informação específica que o padrão não atende.

Dessa maneira, não é necessário reescrever toda a formula já pronta no padrão, assim podemos reaproveitar o código já escrito no padrão e modificar apenas o necessário para atender a regra específica do cliente:

Renomear e salvar:

Fórmula copiada:

7 - GPEA160 - SIGAGPE/ Atualizações/ Definições de Cálculo/ Roteiros de Cálculo

Depois de criar a fórmula da maneira desejada, deverá entrar no cadastro do roteiro desejado, desabilitar os possíveis roteiros padrões que serão substituídos pelo

específico e posicioná-lo da mesma posição. Lembrando que para fórmulas/roteiros específicos sempre terminarão com código diferente de zero.

 

No exemplo abaixo, 2 roteiros padrões foram desabilitados, campo "Habilitado = Não".

Estes roteiros 00110 e 00120 foram substituídos pelo roteiro 00125, que ficou posicionado conforme a sequencia numeral, logo em seguida dos roteiros substituídos.

O final do número deste roteiro 00125 é 5, ou seja, diferente de zero que são alocados apenas para os padrões.

 


Para mais detalhes da fórmula que foi desenvolvida nesta base de conhecimento, segue a explicação detalhada deste exemplo:

PSIGAGPE0017 - P12 - Exemplo prático da montagem de uma fórmula.


Tabelas envolvidas:

SRM - Roteiro de Cálculo.

SRY - Cabeçalho de Roteiro de Cálculo.

RC2 - Cabeçalho de Fórmulas.

RC3 - Fórmulas

Observações:

Base de conhecimento relacionada:

PSIGABD0051 - Como debugar fórmulas e roteiros do sistema e de usuário na versão 12?

PSIGAGPE0577 - Vídeo de como criar fórmulas específicas de usuário no Protheus?

PSIGAGPE0017 - P12 - Exemplo prático da montagem de uma fórmula.