SAP Smart Forms - Form Logic
Em um formulário inteligente SAP, a lógica do formulário define os dados a serem lidos do banco de dados, para definir a condição e, por último, controlar o fluxo da saída do formulário. A lógica do formulário é definida no Form Builder, onde a estrutura do formulário é definida no lado esquerdo da interface do SMART FORMS. Quando uma janela de criação de formulário inteligente é aberta, no lado esquerdo você tem nós padrão.
O nó de configuração global e tem as três seguintes subpastas -
- Atributos de formulário
- Interface de formulário e
- Definições Globais
Eles aparecem quando você cria um novo formulário inteligente.

Para definir a lógica do formulário, você deve definir a estrutura hierárquica nas páginas de nó no painel de navegação e essa estrutura define a regra para o processamento do formulário inteligente. Esta lógica de formulário pode ser usada para controlar a saída do formulário.
Você deve se lembrar dos seguintes pontos sobre Form Logic -
Em uma estrutura em árvore, há uma guia definida para cada nó e cada nó pode ser vinculado a uma condição. Quando a condição é atendida no formulário, o sistema processa esse nó e, se não for atendida, o sistema não processa esse nó.
Em um cenário geral, os nós na estrutura em árvore são processados de cima para baixo.
A quebra de página em cada página depende de quanto espaço resta na página atual.
Um controle de fluxo é definido para cada página; no entanto, você também pode ir para qualquer página.

SAP Smart Forms - Controle de fluxo
Você também pode controlar o processamento de fluxo em um formulário inteligente SAP para a hierarquia de árvore definida em um painel de navegação.
Existem diferentes opções que podem ser usadas para definir o controle de fluxo, algumas delas estão listadas abaixo -
Output Condition - Para definir o processamento de nós / sub-nós de acordo com a condição de saída.
Alternative - Pode ser usado para processar um dos dois nós inferiores.
Repeated Output - Você pode usar um loop para processar a saída repetidamente.
Dynamic processing - Você também pode processar páginas dinamicamente definindo a sequência de páginas usando a linha de comando.
Condição de saída
Você pode transmitir uma condição de saída para suprimir o processamento de nó / subnó. Para inserir a condição de saída para um nó, vá para oCondition Tab.
Na aba de condição, você pode passar a cada linha uma condição com dois operandos. Um operando pode ser um campo ou um valor.
Você também pode passar operadores lógicos; os operadores mais importantes são -
- AND
- OR

Você também pode realizar uma verificação local para validar uma condição de saída. Para realizar uma verificação de condição, clique no botão Verificar como mostrado na imagem a seguir.

Você também pode vincular uma condição de saída para eventos de saída de páginas e janelas. Você pode usar uma caixa de evento Adicional e esses eventos são vinculados usando a condição AND.

Quando a condição é atendida, o sistema processa o nó / subnó de acordo com o valor da condição. Quando a condição falha, o sistema ignora o nó e processa o próximo valor no controle de fluxo.
Para processar a saída repetidamente, o nó de loop deve ser usado, que lê os dados de uma tabela interna. Você usa um loop para ler e exibir os dados do cliente. Para exibir a saída repetida, você pode criar um loop do tipo nó e inserir o nome exclusivo e a descrição.

A próxima etapa é ler os dados de uma tabela interna em uma área de trabalho e criar nós inferiores nos quais você exibe os campos das linhas lidas da tabela.
