Estrutura do CFG
A estrutura do CFG na versão mais recente é formada pelo seguinte modelo.
Versao
Esse campo é utilizado para controlar o padrão da estrutura do CFG, hoje temos duas versões a 0 e a versão 1, a diferença entre elas é que a versão 1 suporta a utilização das variáveis que descrita no tópico a seguir.
Nome
Utilizado para exibir na aba ao abrir o CFG, esse nome não pode ser o mesmo em mais de um CFG.
SQLPADRAO
SQL para ser executado e efetuar a consulta na grid, o sistema altera esse SQL para efetuar o filtro, paginação e ordenação, além de outras opções da grid como somar coluna.
FILTROINI
Esse campo ficou obsoleto não recomendamos mais sua utilização, é utilizando como filtro padrão da grid é o mesmo que colocar a expressão de filtro direto no WHERE do SQL.
OrderByPadrao
Esse campo ficou obsoleto não recomendamos mais sua utilização, é utilizando como ordenação padrão da grid é o mesmo que colocar na expressão ORDEY BY do SQL.
TALBELAATIVA
Tem de ser colocado as tabelas que são utilizadas no SQL separadas por ; exemplo: TALBELAATIVA=servico;contrato;gruposervico;
Esse campo está obsoleto não utilizamos mais ele no sistema, a ideia inicial dele era disponibilizar ao usuário a possibilidade de incluir qualquer campo dessa tabela, mas devido a complexidade e possíveis problemas não foi utilizado.
COL00
Esse campo define as colunas do CFG, tem de iniciar com COL e seguindo pelo índice da coluna no SQL, lembrando que a primeira coluna do SQL equivale ao índice 0.
Cada coluna tem várias configurações, cada configuração é separada da outra pelo caractere ;. cada coluna tem 9 configurações que são definidas pelo índice.
Abaixo a configuração equivalente a cada posição:
Expressão SQL que vai ser exibida, por exemplo cotacao.data.
Se no query o valor que for exibido nessa coluna for resultante de uma expressão diferente do campo de uma tabela essa expressão tem de ser colocada completa sem o alias, por exemplo: (case cotacao.Situacao when 0 then "Em Andamento" WHEN 1 THEN "Aprovado" END)
Descrição da coluna que vai ser exibida para o usuário.
Define se a coluna vai ser visível ou não, podendo receber o valor True ou False.
Valor número decimal que define a largura da coluna para o usuário, se o usuário alterar pela grid o tamanho esse valor alterado no CFG nesse local, a separação de decimal é o caractere vírgula.
Define o formato do valor a se exibido
Apesar de pouco utilizado é muito útil, por exemplo se for colocado R$#,##0.00 e o valor do banco for 62014,59 o que vai ser exibido para o usuário é R$62.014,59
Esse formato também pode ser a aplicado a
Define a forma de pesquisa no campo, utilizado bloquear certos tipos de pesquisa para não travar o sistema, podendo assumir os seguintes valores:
0 - Valor padrão o usuário pode filtrar pelo campo usando todas as opções.
1 - Com esse valor o usuário só vai pode utilizar a opção de =, não vai pode filtrar os registros dessa coluna por outros operadores ficando conforme a imagem abaixo
2 - Define que esse campo só vai poder receber filtros com base em outra lista essa lista é configurada conforme cada tipo de campo, pode ser vista sua utilização no menu 730 - Registros de Despesas, conforme as imagens abaixo:
Ao colocar a opção igual a 2 vai aparecer um botão igual ao mostrado na imagem a cima, ao clicar nele vai abrir a tela abaixo:
Todos os registros selecionados na imagem da tela acima vão ser filtrados na coluna.
Esse recurso é útil para evitar lentidões ao invés de pesquisar pelo nome do fornecedor é pesquisado pelo código que é muito mais rápido.
Esse recurso é algo novo, no momento da escrita desse documento estava implementado somente para busca de produto, para verificar quais estão implementados para utilização é necessário abrir o formulário FrmCadastro na função AcionarBuscaPersonalizada e visualizar quais estão.
Esse campo faz parte da configuração anterior ele define qual o nome do campo que vai ser realizado a pesquisa, por exemplo: fornecedor.codigo. As opções implementadas podem ser encontradas no formulário FrmCadastro na função AcionarBuscaPersonalizada.
Essa configuração é utilizado somente nos CFGs de busca que forem utilizados na tela da imagem acima, ela define se a coluna vai estar visível nessa tela de busca, mas não afeta as outras telas de busca que usam o mesmo CFG, podendo receber o valor True ou False.
IDB
Utilizado para guardar o último campo que foi pesquisado pelo usuário, quando ele abrir a busca vai manter o campo anterior filtrado através do dessa opção, fica gravado nela o index do combol.
É utilizado na grid principal e nas grid de busca de registro
ITF
Utilizado para guardar o último tipo de filtro na pesquisa de CFGs de busca, guarda o index da opção selecionada, local de utilização:
MD5
Campo gerado automaticamente pelo autenticador da engenharia, ele é usado para validar se não houve alteração no SQL depois que a Atlanta autenticou, se houver alteração o sistema não utiliza o CFG.
Variáveis
Abaixo as variáveis que podem ser utilizados no SQL.
Para utilização dessas variáveis a versão do CFG tem de ser a versão 1 ou superior.
Variáveis Obrigatórias
$WhereClause: Exemplo de uso SELECT * FROM fornecedor $WhereClause
$WhereExpression: Exemplo de uso SELECT * FROM fornecedor WHERE $WhereExpression fornecedor.ativo = ‘Sim‘
$OrderByClause: Exemplo de uso SELECT * FROM fornecedor $OrderByClause
$OrderByExpression: Exemplo de uso SELECT * FROM fornecedor ORDER BY $OrderByExpression, fornecedor.codigo
$LimitClause: Exemplo de uso SELECT * FROM fornecedor $LimitClause
Variáveis Auxiliares
$EmpresaUsuario: Lista de código de empresa que o usuário tem acesso, exemplo: 1,2,3,4,5.
$SetorUsuario: Lista de código de setor que o usuário tem acesso, exemplo: 1,2,3,4,5.
$EstoqueUsuario: Lista de código de estoque que o usuário tem acesso, exemplo: 1,2,3,4,5.
$TerminalUsuario: Lista de código de terminal que o usuário tem acesso, exemplo: 1,2,3,4,5.
$ContratoUsuario: Lista de código de contrato que o usuário tem acesso, exemplo: 1,2,3,4,5.
$CentroOperacionalUsuario: Lista de código de centro operacional que o usuário tem acesso, exemplo: 1,2,3,4,5.
$CodigoUsuario: Código do usuário.