Header Web
Logo_PHC_Software
Manuais
Criação De Regras

Esta opção permite introduzir/alterar Regras para definir determinado comportamento na aplicação. O objetivo destas Regras, pode passar por exemplo, por controlar a validação dos dados quando são introduzidos.

Dos campos que o utilizador dispõe, existe um separador dedicado à definição do Programa e Mensagem e outro onde o utilizador define o(s) Package(s) onde a Regra será implementada.

Poderá também, interagir com o registo da Regra quando acede ao respetivo ecrã, em modo de consulta

No final deste tópico serão apresentados alguns Exemplos práticos Uma regra pode obrigar determinado campo a ser preenchido, ou pode impedir a gravação de uma encomenda se não tiver valor, etc.


Ecrã em modo de introdução/alteração
    Em modo de introdução/alteração, o utilizador dispõe dos seguintes campos:

    Descrição da regra
    Este campo é de preenchimento obrigatório e é onde deve ser introduzido de uma pequena descrição da regra.

    Número Interno da regra
    Este número é sequencial e não controlado pelo utilizador. Poderá ser utilizado em posteriores consultas.

    Inativa
    No caso de esta opção estar ativa a regra não é executada.

    Nome do ecrã (sem ASPX) onde vai correr a regra. (i.e. CLFORM)
    Define qual o ecrã a que vai ser aplicada a regra.

    Ordem de execução da regra
    Este campo controla a ordem de execução da regra, no caso de existir mais do que uma regra para o mesmo ecrã.



    Expressão a ser validada. Deve retornar TRUE se a regra passa ou FALSE se não passa.
    Neste local é criado o programa de execução da regra. Este programa deve retornar um valor lógico, para a execução ou não da regra.
    Caso o utilizador pretenda, ao clicar no botão pode aceder ao Editor de Código. Após o preenchimento deste campo, o utilizador poderá .
    Este campo tem intellisense, ou seja, quando é colocada uma letra na caixa de texto é aberta uma caixa com todas as sugestões de código disponíveis para completar aquela palavra, à medida que se vai escrevendo as opções mostradas começadas pelas letras introduzidas vão reduzindo e aproximando do que se pretende. Também se pode pressionar as teclas ctrl + espaço ou ctrl + seta baixo para aparecer essa mesma caixa mas com todas as opções de código disponíveis, sendo que ao escrever texto as opções na caixa vão sendo filtradas.


    Mensagem
    Neste local é criada a mensagem a dar ao utilizador, no caso da violação da regra. Este campo também tem intellisense, desde que a opção "A mensagem é um programa" esteja ativa.
    Caso o utilizador pretenda, poderá , para validar a inexistência de erros.
    Nota: Este botão apenas se encontra disponível nas gamas de Advanced e Enterprise.



    Uma Regra pode ser criada para um ecrã conforme a necessidade do utilizador, mas a definição do(s) package(s) determina onde a mesma será utilizada, por exemplo:



    Assim, a Regra criada estará presente e condicionará o comportamento da aplicação na Extranet.



Ecrã em modo de consulta
    Em modo de consulta o utilizador tem a possibilidade de usufruir das opções de registo bem como pesquisar um registo, alterar e/ou apagar o mesmo.




Exemplos práticos
    Regra obriga determinado campo a ser preenchido (morada de cliente), quando o utilizador tenta gravar o registo. Esta regra será aplicada ao package Intranet.

    Nome do ecrã (sem ASPX) onde vai correr a regra. (i.e. CLFORM): clform

    Expressão a ser validada. Deve retornar TRUE se a regra passa ou FALSE se não passa.



    Dim retval As Boolean = True
    Dim dr As DataRow = mainformdataset.Tables("cl").Rows(0)

    ' verificar se o campo está vazio
    If dr("morada") = "" Then
    retval = False
    End If
    Return retval



    Mensagem esperada: Desculpe, mas deve preencher o campo Morada do Cliente.

    Package: Intranet

    Neste caso, se o utilizador ao introduzir um cliente, quando tentar gravar com o campo "Morada" vazio, será dada a mensagem:




    Regra que não deixa gravar encomendas de clientes no package Front Web, quando as mesmas não têm valor:

    Nome do ecrã (sem ASPX) onde vai correr a regra. (i.e. CLFORM): encform

    Expressão a ser validada. Deve retornar TRUE se a regra passa ou FALSE se não passa.



    if ctype(mainformdataset.tables("EBO").rows(0).item("etotaldeb"),system.decimal)=0
    return False
    else
    return True
    end if



    Mensagem esperada: Desculpe, mas a encomenda não tem valores. Por favor introduza os artigos que pretende.

    Package:Front Web

    Neste caso, se o utilizador ao introduzir uma encomenda, tentar gravar com as linhas da encomenda a zero, será dada a mensagem:








Framework Phc Cs Web