Identificador de Regra

GER-095CADFO01

Módulo: GER - Gerais.

Finalidade: Disponibiliza os campos da tabela de fornecedores (E095FOR) para que sejam controlados pelo usuário estabelecendo a obrigatoriedade via regra.

Características: Todos os campos da tabela "E095FOR", inclusive os de usuário, são passados automaticamente para as regras por meio deste identificador.

Os campos são acessados como variáveis através do nome "VS + ", sendo os campos numéricos e de hora acessados na regra como tipo "NUMERO", as data como tipo "DATA" e os caracteres ou alfanuméricos como tipo "ALFA".
Também é disponibilizada a variável "VSEstado" que pode conter os valores: "FECHANDO" ,"ALTERANDO" ou "INSERINDO".
e a variável "VSOrigem" que informa qual rotina chamou a regra sendo:

Observações:

  • Quando o resultado da variável "VSOrigem" é "DLLFOR", pode haver incompatibilidade em algumas funções da regra.
  • Nenhum dos campos acima retorna valor.
  • A variável "VSEstado" pode ser chamada também na importação de dados para a tabela "E095FOR".
  • A execução do identificador GER-095CADFO01 foi liberada nos serviços multicamada utilizado no cadastro de fornecedor.

Quando o identificador de regras "VEN-000ALIRF01" estiver ativo, existirá um conflito na variável "VSCliFor" que está definida nos dois identificadores de regra com tipos de dados diferentes. Nesse caso, utilizar as variáveis "VSCodCli" ou "VSCodFor" que foram criadas no identificador "VEN-000ALIRF01" a partir da versão 5.5.1.16f.

O conflito acima também pode ser resolvido utilizando uma variável especial de nome "GerACliFor" para identificar o campo "CliFor" (Cliente ou Fornecedor - Indicativo se o registro representa um cliente ou um fornecedor ou ambos). Essa variável foi criada também para evitar que a variável padrão "VSCliFor" deste identificador, que é declarada como Alfa, conflite com a variável "VSCliFor" do identificador "COM-000AISOU01", que identifica ou o código do cliente ou o código do fornecedor dependendo do ponto do sistema onde é invocado. A variável "VSCliFor" não deixa de existir e pode ser usada. Porém, quando essa variável entrar em conflito quando utilizado o identificador "COM-000AISOU01" é usado juntamente com este identificador, a mesma não deve ser declarada e sim utilizada então a variável "GerACliFor". Isso foi implementado a partir da versão 5.5.2.4.

Tela: F095CAD

Transação: Não se aplica.

Regra:

Definir Numero VSCodFor;
Definir Numero VSCgcCpf;
Definir Alfa VSNomFor;
Definir Alfa VSUsu_CampoAlfa;
Definir Numero VSUsu_CampoNum;
Definir Data VSUsu_CampoData;
Definir Numero VSUsu_CampoHora;
Definir Alfa VSOrigem;

@ Caractere ENTER @
Definir Alfa ENTER;
CaracterParaAlfa(10, ENTER);

Definir alfa auxAlf;
Definir alfa msgStr;

msgStr = "";

@ VERIFICA A ROTINA DE ORIGEM@

@Valor WSCFOR é retornado na variável VSOrigem quando for utilizado Web Service a partir da versão 5.8.8.16@

Se(VSOrigem <> "WSCFOR")
inicio
msgStr = " gerada pelo processo do Gestão Empresarial | ERP.";
fim
senao
inicio
msgStr = " gerada pelo processo de Web Service.";
fim

Mensagem(retorna, msgStr);

msgStr = "";

@ Mostrar o valor dos campos chave @
msgStr = msgStr + "Campos chave:" + ENTER;
IntParaAlfa(VSCodFor, auxAlf);
msgStr = msgStr + "- CodFor: " + auxAlf + "." + ENTER;
IntParaAlfa(VSCodEmp, auxAlf);

@ Mostrar campos de sistema @
msgStr = msgStr + "Campos de sistema:" + ENTER;
IntParaAlfa(VSCgcCpf, auxAlf);
msgStr = msgStr + "- CgcCpf: " + auxAlf + "." + ENTER;
auxAlf = VSNomFor;
msgStr = msgStr + "- NomFor: " + auxAlf + "." + ENTER;

@ Mostrar campos de usuário (supondo que eles existam no TBS) @
msgStr = msgStr + "Campos de usuário:" + ENTER;
auxAlf = VSUsu_CampoAlfa;
msgStr = msgStr + "- CampoAlfa: " + auxAlf + "." + ENTER;
IntParaAlfa(VSUsu_CampoNum, auxAlf);
msgStr = msgStr + "- CampoNum: " + auxAlf + "." + ENTER;
ConverteMascara(3, VSUsu_CampoData, auxAlf, "dd/mm/yyyy");
msgStr = msgStr + "- CampoData: " + auxAlf + "." + ENTER;
ConverteMascara(4, VSUsu_CampoHora, auxAlf, "hh:mm");
msgStr = msgStr + "- CampoHora: " + auxAlf + "." + ENTER;

Mensagem(retorna, msgStr);

Variáveis Disponibilizadas:

Nome Tipo Observações Retorna Valor
VSCODFOR NÚMERO Código do fornecedor (chave do registro) N
VSESTADO ALFA Indica a operação sendo realizada:"FECHANDO" ," "ALTERANDO" ou "INSERINDO". N
VSORIGEM ALFA Indica a rotina de origem("DLLFOR" = Rubi) ( "WSCFOR" = Web Service) ("CADFOR","HISFOR" = Sapiens) N
GERACLIFOR ALFA Registro representa um cliente, um fornecedor ou ambos, quando não puder ser utilizada a variável padrão VSCliFor. Disponível a partir da versão 5.5.2.4 N

Atenção

Caso o parâmetro global LisVarReg esteja habilitado, a variável ListaVariaveis estará disponível em todos os identificadores de regras do sistema. O conteúdo desta variável lista os campos disponibilizados no identificador de regras em questão.

Não é aconselhada a ativação desse parâmetro global para o uso cotidiano. Esse recurso de listagem dos campos de identificadores auxilia a construção de regras e o Suporte para, por exemplo, depuração ou quando não houver acesso à documentação dos identificadores de regras.

Este artigo ajudou você?