Árvore de páginas

Versões comparadas

Chave

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

...

Produto:

TOTVS CRM Automação da Força de Vendas

Linha de Produto:

Linha TOTVS CRM

ERPs impactados:Protheus, Datasul e ERPs terceiros
Módulo:Venda
Função:Pedido
Ambiente:Web/Android
Ticket:16271428
Requisito/Story/Issue:

Jira
serverJIRA
serverId0c783de1-186e-383b-975c-a1acd7d76cb5
keyDTSFAPD-1875

02. 

...

ESCOPO FUNCIONAL

Cadastro de validações lógicas

Na versão atual do TOTVS SFA, no módulo de "Venda", não existe a possibilidade de criar uma validação lógica customizada, de acordo com os capos disponíveis no pedido.

...

  1. Gatilho: Será a ação que o usuário irá realizar em tela que fara com que a lógica construida seja executada.
    1. Exemplos de gatilhos: Alteração de campo do cabeçalho; Alteração de item no carrinho; Finalização do pedido...
  2. Lógica: Conjundo de operações lógicas (AND, OR, EQUALS, NOT EQUALS...) que será construida para se obter um resultado verdadeiro/falso.
    1. Exemplos de lógicas: Valor total pedido <= 100 AND Condição de Pagamento = "30/60/90" → Retorno verdadeiro/falso
  3. Retorno: A lógica construída sempre terá um retorno verdadeiro ou falso, com poderá ser expecificado qual tipo de retorno o usuário reberá, tanto para resultado verdadeiro quanto para resultado falso
    1. Exemplo de retorno Verdadeiro: Mensagem para o usuário; Mensagem para usuário/Impedir Finalização do pedido...
    2. Exemplo de retorno Falso: Mensagem para o usuário; Mensagem para usuário/Impedir Finalização do pedido...

...

    1. .

...

    1. .

...

    1. .

...

Segue um exemplo de cadastro de uma validação lógica na "Imagem 01":

...

Com isso, será possível customizar validações durante a confecção do pedido, permitindo ter mais autonomia em regras de negócio específicas.

03. ESCOPO TÉCNICO

Para a construção das lógicas, está sendo sugerido o plugin: https://querybuilder.js.org/index.html

Nova tabela
validacaoLogica {
     idValidacaoLogica: type="long", value="seqPkValidacaoLogica",
     descricao: type="String", length="80" not-null="true",
     idnAtivo: type="byte", not-null="true",
     sglGatilho: type="String", length="80" not-null="true",
     sglGatilhoCampo: type="String", length="80" not-null="false",
     logica: type="byte[]", not-null="true",
     sglRetornoVerdadeiro: type="String", length="80" not-null="true",
     retornoVerdadeiro: type="byte[]", not-null="false",
     sglRetornoFalso: type="String", length="80" not-null="true",
     retornoFalso: type="byte[]", not-null="false",
     codigoERP: type="String", length="80" not-null="true",
     wsVersao: type="long", update="false" insert="false"
}

...