Identificador de Regra
GER-075CAMPO01
Módulo: GER - Gerais.
Finalidade: Personalizar campos de consulta da tela de "Análise de Produto" e de "Estoque/Preço de Produto".
Na regra são definidos 3 (três) parâmetros para cada um de um limite de 8 (oito) campos de consulta. Também foi disponibilizada uma variável onde o usuário poderá definir a ordem do resultado da consulta "VSORDEM".
As variáveis "VSTIPO" poderão assumir os seguintes valores: (STRING/DATE/INTEGER/FLOAT) e deverão ser do mesmo tipo que foi definido o campo de usuário na base. As variáveis "VSCAMPO" deverão ter o nome do campo idêntico ao campo da tabela. No campo "VSORDEM" poderão ser adicionados campos de usuário e campos da própria base sempre separados por uma ',' vírgula. EX: VSORDEM = 'E075PRO.CODPRO, E075PRO.USU_MT, E075PRO.USU_M1'.
As variáveis "VSFILTRO" poderão assumir os valores "S" ou "N". Caso não sejam definidas, será assumido o valor "S". Essa variável serve para indicar se o campo será utilizado para filtro (montado como campo para informar valor) ou somente para aparecer na grade da consulta, no caso em que não filtra.
Os campos serão montados na tela conforme configurados pela regra e o valor informado irá servir de filtro para a pesquisa.
Os campos de 1 a 10 possuem tamanho máximo de 30 caracteres e o campo 11 suporta até 1000 caracteres. A partir da versão 5.7.5.1, os campos de 1 a 10 passaram a suportar 50 caracteres.
Os valores dos campos retornados pela regra são apresentados na grid, porém caso utilizem filtro personalizado (VSPERSON
Para a tela de "Análise de Produto", a regra vale apenas para a tabela "E075PRO". Então os campos deverão ser definidos somente para aquela tabela. Já no caso da tela de "Estoque/Preço Produto", existem algumas funcionalidades a mais, descritas a seguir:
Características: As variáveis abaixo afetam apenas a rotina do ComercialEstoquesConsultasEstoque/Preço Produto:
"VSPerson0" [número do campo]: permite indicar se o valor informado na tela do campo de número correspondente será passado para uma segunda regra, a "GER", "075CAMPO03". Nessa regra, poderá ser montado um filtro em formato de comando SQL e devolvido à rotina para concatenar no comando que efetua a consulta. Se for atribuído o valor "S", os dados do campo e seu valor informado na tela serão passados para a nova regra. Se for atribuído qualquer outro valor, a rotina irá seguir o comportamento padrão, que é utilizar diretamente o valor do campo na pesquisa.
"VSTabela0" [número do campo]: permite indicar a que tabela o campo de número correspondente pertence, desde que sejam as tabelas de produto ou derivação ("E075PRO" ou "E075DER"). O conteúdo dessa variável ("VSTabela0" [número do campo]) será utilizado para montar um filtro pelo valor do campo de número correspondente e para a tabela correspondente. Será montado normalmente um campo na tela permitindo informar o valor correspondente. Dessa forma, é possível identificar em que campo e tabela deseja-se efetuar o filtro, em vez de ser somente a tabela de produtos (E075PRO). É possível definir essa possibilidade para campos normais ou de usuário. Por padrão, se essa variável não possuir valor ou for um valor diferente das palavras "E075DER" ou "E075PRO", será assumido que sempre é para a tabela de produtos "E075PRO". No caso de se optar pela personalização do filtro do campo/tabela (usando a variável "VSPerson0" [número do campo], poderá ser informada outra tabela (do sistema ou de usuário) e desde que possua rel
acionamento com as tabelas de produto ou de derivação. O valor desse campo informado na tela não é utilizado diretamente no filtro de pesquisa, sendo enviado então ao outro identificador para montar o filtro personalizado. No caso esse identificador é o "GER", "075CAMPO03", e mais detalhes podem ser vistos na documentação do mesmo. Outro detalhe é que o sistema vai consistir se a tabela existe e se o campo existe na tabela. Qualquer variável de um determinado campo que estiver sem nome do campo e sem tipo, o mesmo será ignorado e não montado na tela.
A partir da versão 5.7.4.1 estão disponibilizadas as seguintes variáveis:
- VenNCodCli: disponibiliza o código do cliente.
- VenNNumPed: disponibiliza o número do pedido.
- VenNCodRep: disponibiliza o código do representante.
- VenATnsPro: disponibiliza a transação de produto.
- VenACodTpr: disponibiliza a tabela de preço de venda.
- VenACodCpg: disponibiliza a condição de pagamento.
- VenATelaOrigem: indica qual tela realizou a chamada da tela F075EPP.
Estas variáveis somente possuirão valor quando a tela F075EPP for invocada por uma tela de vendas ou compras. Caso a tela F075EPP for acessada pelo menu, nenhuma das variáveis possuirá valor.
Tela: F075CAP/F075EPP
Transação: Não se aplica.
Regra:
@ Descrição do campo a ser exibido na tela de pesquisa @
Definir ALFA VSLABEL01;
Definir ALFA VSLABEL02;
Definir ALFA VSLABEL03;
Definir ALFA VSLABEL04;
Definir ALFA VSLABEL05;
Definir ALFA VSLABEL06;
Definir ALFA VSLABEL07;
Definir ALFA VSLABEL08;
@ Variáveis que indicam o nome dos campos nas tabelas @
Definir ALFA VSCAMPO01;
Definir ALFA VSCAMPO02;
Definir ALFA VSCAMPO03;
Definir ALFA VSCAMPO04;
Definir ALFA VSCAMPO05;
Definir ALFA VSCAMPO06;
Definir ALFA VSCAMPO07;
Definir ALFA VSCAMPO08;
@ Variáveis que indicam o tipo de cada campo @
Definir ALFA VSTIPO01;
Definir ALFA VSTIPO02;
Definir ALFA VSTIPO03;
Definir ALFA VSTIPO04;
Definir ALFA VSTIPO05;
Definir ALFA VSTIPO06;
Definir ALFA VSTIPO07;
Definir ALFA VSTIPO08;
@ Indicativo se o campo usado no filtro ou só exibido na grade @
Definir ALFA VSFILTRO01;
Definir ALFA VSFILTRO02;
Definir ALFA VSFILTRO03;
Definir ALFA VSFILTRO04;
Definir ALFA VSFILTRO05;
Definir ALFA VSFILTRO06;
Definir ALFA VSFILTRO07;
Definir ALFA VSFILTRO08;
@ Nome das tabelas ao qual cada campo pertence. @
@ Se não informado assume como padrão a tabela "E075PRO" @
Definir ALFA VSTABELA01;
Definir ALFA VSTABELA02;
Definir ALFA VSTABELA03;
Definir ALFA VSTABELA04;
Definir ALFA VSTABELA05;
Definir ALFA VSTABELA06;
Definir ALFA VSTABELA07;
Definir ALFA VSTABELA08;
@ Indicativo se o conteúdo do campo informado na tela ser passado a outra regra @
@ para montar um filtro personalizado, em vez de ser usado diretamente na pesquisa @
Definir ALFA VSPERSON01;
Definir ALFA VSPERSON02;
Definir ALFA VSPERSON03;
Definir ALFA VSPERSON04;
Definir ALFA VSPERSON05;
Definir ALFA VSPERSON06;
Definir ALFA VSPERSON07;
Definir ALFA VSPERSON08;
@ Define a ordenação dos registros (cláusula order by) @
Definir ALFA VSORDEM;
VSLABEL01 = "Produto (USU_STRING)";
VSLABEL02 = "Produto (USU_INTEGER)";
VSLABEL03 = "Derivação (USU_DERSTR)";
VSLABEL04 = "Derivação (USU_DERINT):";
VSLABEL05 = "Decimais (E012FAM)";
VSLABEL06 = "Validade (E075DER)";
VSLABEL07 = "Per. IPI (E075PRO)";
VSLABEL08 = "(E075PPC_USU_CODBAR)";
@ Nome das tabelas ao qual cada campo pertence. @
VSTABELA01 = ""; @ Assume a tabela "E075PRO" se está em branco@
VSTABELA02 = "E075PRO";
VSTABELA03 = "E075DER"; @ Exemplo para informar a tabela de derivação @
VSTABELA04 = "E075DER";
VSTABELA05 = "E012FAM"; @ Exemplo para informar outra tabela @
VSTABELA06 = "E075DER";
VSTABELA07 = "E075PRO";
VSTABELA08 = "E075PPC";
@ Nome dos campos @
VSCAMPO01 = "USU_STRING"; @ Exemplo para informar campos de usuário @
VSCAMPO02 = "USU_INTEGER";
VSCAMPO03 = "USU_DERSTR";
VSCAMPO04 = "USU_DERINT";
VSCAMPO05 = "QTDDEC"; @ Exemplo para informar campos normais de sistema @
VSCAMPO06 = "DATVAL";
VSCAMPO07 = "PERIPI";
VSCAMPO08 = "USU_CODBAR";
@ Tipo de cada campo @
VSTIPO01 = "STRING";
VSTIPO02 = "INTEGER";
VSTIPO03 = "STRING";
VSTIPO04 = "INTEGER";
VSTIPO05 = "INTEGER";
VSTIPO06 = "DATE";
VSTIPO07 = "FLOAT";
VSTIPO08 = "STRING";
@ Indicativo se o campo é usado no filtro @
VSFILTRO01 = "S";
VSFILTRO02 = "S";
VSFILTRO03 = "S";
VSFILTRO04 = "S";
VSFILTRO05 = "S";
VSFILTRO06 = "S";
VSFILTRO07 = "S";
VSFILTRO08 = "S";
@ Não personaliza o filtro destes campos @
VSPERSON01 = "S";
VSPERSON02 = "S";
VSPERSON03 = "S";
VSPERSON04 = "S";
VSPERSON05 = "S";
@ Personaliza o filtro desses campos, sendo repassados @
@ juntamente com seu conteúdo à regra "GER", "075CAMPO03" @
VSPERSON04 = "S";
VSPERSON05 = "S";
VSPERSON06 = "S";
VSPERSON07 = "S";
VSPERSON08 = "S";
@ Define a ordem em que o registros serão exibidos @
VSORDEM = "E075PRO.CODPRO DESC, E075DER.CODDER DESC";
Variáveis Disponibilizadas:
Nome | Tipo | Observações | Retorna Valor |
---|---|---|---|
VENNCODCLI | NÚMERO | Código do Cliente | N |
VENNNUMPED | NÚMERO | Número do Pedido | N |
VENNCODREP | NÚMERO | Código do Representante | N |
VENAAPELIDO01 | ALFA | Apelido do campo 01 | N |
VENAAPELIDO02 | ALFA | Apelido do campo 02 | N |
VENAAPELIDO03 | ALFA | Apelido do campo 03 | N |
VENAAPELIDO04 | ALFA | Apelido do campo 04 | N |
VENAAPELIDO05 | ALFA | Apelido do campo 05 | N |
VENAAPELIDO06 | ALFA | Apelido do campo 06 | N |
VENAAPELIDO07 | ALFA | Apelido do campo 07 | N |
VENAAPELIDO08 | ALFA | Apelido do campo 08 | N |
VENAAPELIDO09 | ALFA | Apelido do campo 09 | N |
VENAAPELIDO10 | ALFA | Apelido do campo 10 | N |
VENAAPELIDO11 | ALFA | Apelido do campo 11 | N |
VENATNSPRO | ALFA | Transação do Produto | N |
VENACODTPR | ALFA | Código da Tabela de Preço de Venda | N |
VENACODCPG | ALFA | Código da Condição de Pagamento | N |
VENATELAORIGEM | ALFA | Tela que originou a chamada da tela de consulta | N |
VSLABEL01 | ALFA | Descrição do Campo 01 | S |
VSLABEL02 | ALFA | Descrição do Campo 02 | S |
VSLABEL03 | ALFA | Descrição do Campo 03 | S |
VSLABEL04 | ALFA | Descrição do Campo 04 | S |
VSLABEL05 | ALFA | Descrição do Campo 05 | S |
VSLABEL06 | ALFA | Descrição do Campo 06 | S |
VSLABEL07 | ALFA | Descrição do Campo 07 | S |
VSLABEL08 | ALFA | Descrição do Campo 08 | S |
VSCAMPO01 | ALFA | Nome do campo 01 | S |
VSCAMPO02 | ALFA | Nome do campo 02 | S |
VSCAMPO03 | ALFA | Nome do campo 03 | S |
VSCAMPO04 | ALFA | Nome do campo 04 | S |
VSCAMPO05 | ALFA | Nome do campo 05 | S |
VSCAMPO06 | ALFA | Nome do campo 06 | S |
VSCAMPO07 | ALFA | Nome do campo 07 | S |
VSCAMPO08 | ALFA | Nome do campo 08 | S |
VSTIPO01 | ALFA | Tipo do Campo 01 | S |
VSTIPO02 | ALFA | Tipo do Campo 02 | S |
VSTIPO03 | ALFA | Tipo do Campo 03 | S |
VSTIPO04 | ALFA | Tipo do Campo 04 | S |
VSTIPO05 | ALFA | Tipo do Campo 05 | S |
VSTIPO06 | ALFA | Tipo do Campo 06 | S |
VSTIPO07 | ALFA | Tipo do Campo 07 | S |
VSTIPO08 | ALFA | Tipo do Campo 08 | S |
VSORDEM | ALFA | Ordenação do resultado da Pesquisa | S |
VSFILTRO01 | ALFA | Definir se o campo fará parte do filtro de pesquisa | S |
VSFILTRO02 | ALFA | Definir se o campo fará parte do filtro de pesquisa | S |
VSFILTRO03 | ALFA | Definir se o campo fará parte do filtro de pesquisa | S |
VSFILTRO04 | ALFA | Definir se o campo fará parte do filtro de pesquisa | S |
VSFILTRO05 | ALFA | Definir se o campo fará parte do filtro de pesquisa | S |
VSFILTRO06 | ALFA | Definir se o campo fará parte do filtro de pesquisa | S |
VSFILTRO07 | ALFA | Definir se o campo fará parte do filtro de pesquisa | S |
VSFILTRO08 | ALFA | Definir se o campo fará parte do filtro de pesquisa | S |
VSTABELA01 | ALFA | Definir a que tabela o campo correspondente pertence | S |
VSTABELA02 | ALFA | Definir a que tabela o campo correspondente pertence | S |
VSTABELA03 | ALFA | Definir a que tabela o campo correspondente pertence | S |
VSTABELA04 | ALFA | Definir a que tabela o campo correspondente pertence | S |
VSTABELA05 | ALFA | Definir a que tabela o campo correspondente pertence | S |
VSTABELA06 | ALFA | Definir a que tabela o campo correspondente pertence | S |
VSTABELA07 | ALFA | Definir a que tabela o campo correspondente pertence | S |
VSTABELA08 | ALFA | Definir a que tabela o campo correspondente pertence | S |
VSPERSON01 | ALFA | Definir se o conteúdo do campo irá ser utilizado para montar um filtro personalizado, no identificador GER, 075CAMPO03 | S |
VSPERSON02 | ALFA | Definir se o conteúdo do campo irá ser utilizado para montar um filtro personalizado, no identificador GER, 075CAMPO03 | S |
VSPERSON03 | ALFA | Definir se o conteúdo do campo irá ser utilizado para montar um filtro personalizado, no identificador GER, 075CAMPO03 | S |
VSPERSON04 | ALFA | Definir se o conteúdo do campo irá ser utilizado para montar um filtro personalizado, no identificador GER, 075CAMPO03 | S |
VSPERSON05 | ALFA | Definir se o conteúdo do campo irá ser utilizado para montar um filtro personalizado, no identificador GER, 075CAMPO03 | S |
VSPERSON06 | ALFA | Definir se o conteúdo do campo irá ser utilizado para montar um filtro personalizado, no identificador GER, 075CAMPO03 | S |
VSPERSON07 | ALFA | Definir se o conteúdo do campo irá ser utilizado para montar um filtro personalizado, no identificador GER, 075CAMPO03 | S |
VSPERSON08 | ALFA | Definir se o conteúdo do campo irá ser utilizado para montar um filtro personalizado, no identificador GER, 075CAMPO03 | S |
VSLABEL09 | ALFA | Descrição do Campo 09 | S |
VSCAMPO09 | ALFA | Nome do campo 09 | S |
VSTIPO09 | ALFA | Tipo do Campo 09 | S |
VSFILTRO09 | ALFA | Definir se o campo fará parte do filtro de pesquisa | S |
VSTABELA09 | ALFA | Definir a que tabela o campo correspondente pertence | S |
VSPERSON09 | ALFA | Definir se o conteúdo do campo irá ser utilizado para montar um filtro personalizado, no identificador GER, 075CAMPO03 | S |
VSLABEL10 | ALFA | Descrição do Campo 10 | S |
VSCAMPO10 | ALFA | Nome do campo 10 | S |
VSTIPO10 | ALFA | Tipo do Campo 10 | S |
VSFILTRO10 | ALFA | Definir se o campo fará parte do filtro de pesquisa | S |
VSTABELA10 | ALFA | Definir a que tabela o campo correspondente pertence | S |
VSPERSON10 | ALFA | Definir se o conteúdo do campo irá ser utilizado para montar um filtro personalizado, no identificador GER, 075CAMPO03 | S |
VSLABEL11 | ALFA | Descrição do Campo 11 | S |
VSCAMPO11 | ALFA | Nome do campo 11 | S |
VSTIPO11 | ALFA | Tipo do Campo 11 | S |
VSFILTRO11 | ALFA | Definir se o campo fará parte do filtro de pesquisa | S |
VSTABELA11 | ALFA | Definir a que tabela o campo correspondente pertence | S |
VSPERSON11 | ALFA | Definir se o conteúdo do campo irá ser utilizado para montar um filtro personalizado, no identificador GER, 075CAMPO03 | S |
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.