Gerador de Relatórios - Condições
Aba Condições
Nesta aba você poderá informar as condições que irão delimitar os dados apresentados nos relatórios. Delimitar os dados significa que, de acordo com o que foi informado nesta aba, o sistema irá selecionar os dados que estejam de acordo com estas condições. Para isto você poderá utilizar os Operadores, Comparadores e demais Comandos que estarão descritos a seguir:
Comparador
Os comparadores disponíveis são utilizados dentro das condições para que seu conteúdo ou valor seja comparado a um campo da tabela. Se o conteúdo do campo satisfizer a condição de acordo com os valores dos comparadores, este registro será selecionado. Eles serão utilizados sempre em relação a um campo da tabela. Os comparadores disponíveis são Campo, Variável e Valor:
Campo
Utilizando um campo na comparação, significa que o registro será comparado ao conteúdo de um campo de uma determinada tabela. Por exemplo, listar todos os funcionários que possuam alteração cadastral. Para isso você deverá comparar o campo CodFunc da tabela de Funcionários com o comparador Campo que será igual a Código da tabela de Alteração de Carteira. Este tipo de comparação entre duas tabelas é necessária quando por exemplo neste caso, queremos que no relatório seja impresso o nome do funcionário que está na tabela de cadastro de funcionários. E para saber quem teve alteração cadastral, cujos dados estão na tabela de alteração cadastral, precisamos igualar os campos das duas tabelas.
Veja que, antes de um determinado campo, vem o nome da tabela, isto para você ter certeza que está incluindo os campos da tabela correta.
Dando um novo Exemplo:
Vamos supor que você deseja uma relatório que contenha nome, CPF e RG (conforme já selecionado anteriormente) apenas dos funcionários ativos na Empresa
Desta forma, na aba condições iremos selecionar DTRESC (data de rescisão), para que o Sistema pesquise pela data de rescisão de todos os funcionários
Arraste o campo DTRESC (Data de Rescisão) para Campo, na parte inferior da montagem do Relatório
Agora iremos definir o Operador.
No nosso caso eu quero que o relatório liste todos os funcionários que tenham o campo Data de Rescisão (do cadastro dos funcionários) sem preenchimento (pois quero apenas os funcionários ativos na empresa)
Por isso o meu Operador será (=)
Para definir o Operador, arraste o mesmo para o campo Operador
Agora iremos definir o Valor (campo que será comparado no cadastro de todos os funcionários)
Clique em Valor e em seguida clique no Campo/Comparador, o Sistema irá apresentar a máscara de data
Se deixarmos o campo/comparador em branco, o Sistema entenderá que eu desejo que o Relatório apresente todos os campos definidos na aba Campo, de todos os funcionário que a data da rescisão esteja em branco (funcionários ativos na empresa).
Se eu definir uma data de rescisão o Sistema irá apresentar no relatórios os campos solicitados apenas para os funcionário que a data de rescisão seja a que eu definir.
Observação
Variável
Utilizando uma variável na comparação, significa que o registro será comparado ao conteúdo de uma variável, neste caso, ao pedir a impressão do relatório o sistema irá disponibilizar campos para que você informe o valor das variáveis. O nome é sugestivo se levarmos em consideração que a cada emissão do relatório o conteúdo desta variável poderá ser diferente. Então lembre-se que, quando estivermos falando de variáveis significa que é um valor que será informado por você no momento da impressão do relatório.
Uma consideração importante: o conteúdo da variável deverá sempre corresponder ao mesmo tipo do campo que está sendo utilizado para comparação. Se o campo for do tipo Data, na variável você deverá obrigatoriamente informar como conteúdo da variável uma data. Se o tipo do campo for Valor (Número), o conteúdo da variável deverá ser um valor, e se o campo for do tipo caracter (letras) o conteúdo deverá ser uma palavra ou letras.
Sempre que você escolher este tipo de comparador, estará disponível a coluna Descr. da Variável, para que você informe o nome que o campo receberá na tela de impressão do relatório identificando que conteúdo ela deverá receber. No exemplo abaixo, comparamos o campo Data de Admissão do funcionário com a variável "DtIni", que é o nome considerado internamente pelo sistema. Para apresentação na tela, foi atribuído o nome "Dt. Inicial".
Valor
Utilizando um Valor significa que o registro será comparado a um Valor (correspondente ao tipo do campo) que será informado na própria condição. No exemplo comparamos o campo data da rescisão em branco, ao cadastro de cada funcionário da empresa.
Nos comparadores Valor e Campo, nunca será disponibilizado campos para você informar o conteúdo de comparação no momento da impressão dos relatórios. Portanto, se o conteúdo de comparação não for fixo, é aconselhável você utilizar o comparador Variável.
OPERADORES:
Para que você entenda melhor como funciona os operadores dentro das condições em relação aos campos e aos comparadores, utilizaremos a tabela FUNCIO como exemplo, que foi explicada anteriormente. É necessário também que você já tenha conhecimento dos Comparadores.
FUNCIO
|
||
CODIGO | NOME |
SALARIO
|
001 | MARIA CRISTINA |
850,00
|
002 | JOAQUIM JOSÉ |
1050,00
|
003 | ANGELA MARIA |
1000,00
|
004 | PEDRO AUGUSTO |
900,00
|
CLIENTES
|
||
NUMERO | NOME |
DATA DO CADASTRO
|
111.222.333-44 | MARIA CRISTINA |
10/02/2003
|
123.715.188-08 | JOAQUIM JOSÉ |
20/03/2003
|
154.781.568-09 | ANGELA MARIA |
25/03/2003
|
215.338.828-78 | PEDRO AUGUSTO |
28/02/2003
|
FORNEC
|
||
NUMERO | NOME |
DATA DO CADASTRO
|
111.222.333-44 | MARIA CRISTINA |
10/02/2003
|
123.715.188-08 | JOAQUIM JOSÉ |
20/03/2003
|
154.781.568-09 | ANGELA MARIA |
25/03/2003
|
215.338.828-78 | PEDRO AUGUSTO |
28/02/2003
|
LANC2003
|
|||
CODIGO | DATA | HISTORICO | DATA |
1
|
10/02/2003 | COMPRA MATÉRIA PRIMA |
850,00
|
2
|
20/03/2003 | PGTO DE DUPLICATA |
1050,00
|
3
|
25/03/2003 | NOTA FISCAL DE COMPRA |
1000,00
|
4
|
28/02/2003 | DEVOLUÇÃO MERCADORIAS |
900,00
|
HISTORAE
|
|||
CODIGO | DESCRICAO | TIPO |
VALOR UNITARIO
|
1
|
MATERIAIS DE ESCRITÓRIO | D |
850,00
|
2
|
HONORÁRIOS | R |
1050,00
|
3
|
DESPESAS COM MATERIAIS | D |
1000,00
|
4
|
DARF - IRPJ | T |
900,00
|
Dentro da aba condições estarão disponíveis os Operadores:
MAIOR QUE : Retorna os registros que o conteúdo do campo comparado for maior que o valor utilizado para comparação. Por exemplo : Listar todos os funcionários que tenham salário superior a R$ 1.000,00. A condição ficaria da seguinte forma:
Lê - se : Retorne os registros cujo campo Salario seja maior que R$ 1000,00. No relatório seria impresso apenas o segundo registro da tabela que é o funcionário Joaquim José.
MENOR QUE : Retorna os registros que o conteúdo do campo comparado for menor que o valor utilizado para comparação. Por exemplo : Listar todos os funcionários que tenham salário inferior a R$ 1.000,00. A condição ficaria da seguinte forma:
Lê - se : Retorne os registros cujo campo Salário seja menor que R$ 1000,00. No relatório seriam impressos o primeiro e o último registro da tabela que são dos funcionários Maria Cristina e Pedro Augusto.
MAIOR OU IGUAL A, MENOR OU IGUAL A : Estes dois operadores combinam os operadores descritos acima com o operador IGUAL A, além de verificar se o valor é maior ou menor que, ele retorna também os registro que possuem o conteúdo do campo comparado igual ao valor de comparação. Se no primeiro exemplo substituirmos o operador de Maior que para Maior ou igual a, além do registro do funcionário Joaquim José, seria retornado também o registro da funcionária Angela Maria que possui o salário igual a R$ 1000,00. E no segundo exemplo se substituirmos para menor ou igual a, além dos registros retornados, seria impresso também o da funcionária Angela Maria.
Estes dois operadores são utilizados também na comparação de datas, onde você poderá identificar um período de comparação. Por exemplo:
Lê-se: Retorne os registros cujo campo Data de Admissão seja maior ou igual que o valor da variável inicial (DtIni) e que o campo Data de Admissão seja menor ou igual que o valor da variável final (DtFim). Neste caso se no momento da impressão do relatório você informar como DtIni 01/10/2003 e DtFim 31/10/2003, o sistema irá retornar os registros em que a data de admissão dos funcionários ocorreram neste período inclusive os que foram admitidos nos dias 01 e 31 de outubro.
Neste exemplo os dois operadores foram utilizados em conjunto e com o mesmo campo. Porém nada impede que você utilize cada um deles individualmente ou com campos distintos.
IGUAL A , DIFERENTE DE : Retorna os registros que o conteúdo do campo são exatamente iguais ou diferentes do valor utilizado para comparação. No primeiro exemplo, se substituirmos o operador Maior que para Igual a, o sistema retornaria apenas o registro da funcionária Angela Maria que possui salário igual a R$ 1000,00. Da mesma forma se utilizarmos o operador Diferente de, retornaria todos os outros 3 registros, exceto o da funcionária Angela Maria.
LIKE : Retorna os registros que o conteúdo do campo comparado corresponda a parte, início ou fim do valor utilizado para comparação. Para isso no momento de imprimir o relatório você utilizará o caracter "%" para indicar se o começo ou o final do conteúdo do campo será desconsiderado da comparação e logo a seguir informar o valor que será comparado. Por exemplo: Listar todos os funcionários que possuam o nome Maria, no inicio ou no Fim do nome:
Lê-se: Retorne os registros cujo campo Nome tenha parte do valor da variável Parte. No momento da impressão do relatório você informará como conteúdo da variável Parte %MARIA%, o sistema irá retornar os registros das funcionárias Maria Cristina e Angela Maria. Porém se você informar %MARIA, apenas o registro da funcionária Angela Maria será retornado. O mesmo vale para MARIA%, o sistema retornará Maria Cristina apenas.
OUTROS e AND/OR
Dentro das comparações você poderá utilizar o operador Not, que possui coluna específica dentro da condição. Incluindo o not antes de uma comparação, o sistema entenderá que deverá negar o resultado da comparação. Por exemplo: Que o código do evento não seja igual ao evento e001. O operador "not" antes da condição "nega" o resultado da comparação, caso o campo codevent da tabela de holleriths seja igual ao evento "e001", o sistema irá desconsiderar este registro.
No exemplo acima, vemos também que foram utilizados parênteses. Eles são necessários quando existem mais de uma condição para o relatório e elas devem ser agrupadas.
Ainda você poderá utilizar os operadores And (e) e o operador Or (ou) que possuem colunas específicas dentro das condições. Se utilizar o operador And entre as condições, significa que o conteúdo dos campos comparados devem satisfazer as duas comparações para que o registro seja selecionado. Utilizando o operador Or entre as condições, significa que se o conteúdo dos campos comparados satisfizer uma das duas condições, o registro será selecionado.