Tópico
anteriorTópico
seguinte


Guia de iniciação 3: Criar um relatório com sub-relatórios lado a lado

Esta secção faculta instruções passo-a-passo para a elaboração de um relatório que apresente uma lista de clientes. Para cada cliente, o relatório apresenta as informações de encomenda e pagamento. As informações de encomenda e de pagamento existem em sub-relatórios separados, que são apresentados um ao lado do outro. O relatório dos clientes corresponde ao relatório principal, também designado de relatório externo, e os sub-relatórios de encomenda e pagamento correspondem aos relatórios detalhados, também designados de relatórios internos.

Cada relatório acede a dados a partir de uma tabela diferente na base de dados exemplo, Classic Models. O relatório do cliente utiliza dados da tabela de clientes. O sub-relatório de encomendas utiliza dados da tabela de encomendas. O sub-relatório de pagamentos utiliza dados da tabela de pagamentos.

O campo comum, CUSTOMERNUMBER, liga os relatórios. O valor do campo de ligação no relatório principal determina os dados que serão apresentados nos relatórios detalhados. Por exemplo, se o número de cliente no relatório principal for 173, os relatórios detalhados irão apresentar as informações de encomenda e pagamento do cliente com o ID 173.

A figura 13-1 apresenta uma parte do relatório concluído.

Figura 13-1 Relatório principal dos clientes, com sub-relatórios de encomenda e pagamento

Neste guia de iniciação, deverá executar as seguintes tarefas:

Tarefa 1: Criar um novo relatório

Se estiver a utilizar o Desenhador de relatórios BIRT, esta tarefa assume que já criou um projecto para os seus relatórios. Se estiver a utilizar o Desenhador de relatórios RCP BIRT, não existem requisitos para o projecto.

  1. Seleccione Ficheiro->Novo->Relatório.
  2. Em Novo relatório, seleccione um projecto onde irá armazenar o relatório.
  3. Introduza o seguinte texto como nome do ficheiro:
  4. Cust_Orders_Payments.rptdesign 
    
  5. Seleccione Seguinte.
  6. Seleccione Relatório em branco e, em seguida, Terminar. O novo relatório é apresentado no editor de esquemas.

Tarefa 2: Criar uma origem de dados

Antes de começar a criar o seu relatório no editor de esquemas, deve criar uma origem de dados para ligar o relatório à base de dados Classic Models.

  1. Seleccione Explorador de dados.
  2. Faça clique com o botão direito do rato em Origens de dados e seleccione Nova origem de dados a partir do menu contextual.
  3. Seleccione Base de dados exemplo Classic Models Inc. a partir da lista de origens de dados, utilize o nome de origem de dados predefinido e, em seguida, seleccione Seguinte. São apresentadas as informações de ligação referentes à nova origem de dados.
  4. Seleccione Terminar. O Desenhador de relatórios BIRT cria uma nova origem de dados que estabelece ligação à base de dados exemplo. Esta é apresentada em Origens de dados no Explorador de dados.

Tarefa 3: Criar um conjunto de dados para o relatório de clientes

Neste procedimento, é criado um conjunto de dados para indicar os dados que serão extraídos da tabela de clientes. O relatório do cliente que será criado posteriormente utiliza este conjunto de dados.

  1. No Explorador de dados, faça clique com o botão direito do rato em Conjuntos de dados e seleccione Novo conjunto de dados.
  2. Em Novo conjunto de dados, introduza o seguinte texto para o nome do conjunto de dados:
  3. Customers 
    
  4. Utilize os valores predefinidos para os restantes campos:
    • Origem de dados apresenta o nome da origem de dados criada anteriormente.
    • Tipo de conjunto de dados especifica que o conjunto de dados utiliza uma consulta SQL SELECT.
  5. Seleccione Seguinte. A consulta apresenta as informações que o irão ajudar uma consulta SQL. A área de texto do lado direito apresenta as palavras-chave necessárias a uma instrução SQL SELECT.
  6. Expanda a tabela CUSTOMERS. As colunas são apresentadas na tabela de clientes.
  7. Utilize a seguinte instrução SQL SELECT para indicar os dados que serão obtidos. Poderá introduzir os nomes das colunas e da tabela ou arrastá-los do lado esquerdo para a localização apropriada na instrução SELECT.
  8. SELECT Customers.customerName, 
    Customers.customerNumber 
    FROM Customers 
    
    A instrução que criou, apresentada na Figura 13-2, obtém os valores das colunas CUSTOMERNAME e CUSTOMERNUMBER da tabela CUSTOMERS.

    Figura 13-2 Consulta
  9. Seleccione Terminar para guardar o conjunto de dados. Editar conjunto de dados apresenta as colunas especificadas na consulte e fornece opções para editar o conjunto de dados.
  10. Seleccione Pré-visualizar resultados para confirmar se a consulta é válida e devolve os dados correctos. Se tiver criado a instrução SELECT correctamente, deverá visualizar os resultados apresentados na Figura 13-3. Estas são as linhas de dados devolvidas pela consulta.
  11. Figura 13-3 Pré-visualização de dados
  12. Seleccione OK.

Tarefa 4: Criar um conjunto de dados para o sub-relatório de encomendas

Neste procedimento, é criado um conjunto de dados para indicar os dados que serão extraídos da tabela de encomendas. O sub-relatório de encomendas que será criado posteriormente utiliza este conjunto de dados.

  1. No Explorador de dados, faça clique com o botão direito do rato em Conjuntos de dados e seleccione Novo conjunto de dados a partir do menu contextual.
  2. Em Novo conjunto de dados, introduza o seguinte texto para o nome do conjunto de dados:
  3. Orders 
    
  4. Utilize os valores predefinidos para os restantes campos e, em seguida, seleccione Seguinte.
  5. Na consulta, expanda a tabela de encomendas para apresentar as colunas da tabela.
  6. Utilize a seguinte instrução SQL SELECT para indicar os dados que serão obtidos:
  7. SELECT Orders.orderNumber, 
    Orders.orderDate 
    FROM Orders 
    WHERE Orders.customerNumber = ? 
    
    Esta instrução selecciona as colunas ORDERNUMBER e ORDERDATE da tabela de encomendas. A cláusula WHERE tem um marcador de parâmetro para o valor de CUSTOMERNUMBER. Quando o relatório é executado, o sub-relatório de encomendas obtém o valor actual CUSTOMERNUMBER a partir do relatório de clientes.
  8. Seleccione Terminar para guardar o conjunto de dados. Editar conjunto de dados apresenta as colunas especificadas na consulte e fornece opções para editar o conjunto de dados.
  9. Crie uma parâmetro de conjunto de dados para fornecer o valor CUSTOMERNUMBER na cláusula WHERE:
    1. Seleccione Parâmetros do lado esquerdo da janela. Editar conjunto de dados apresenta as informações de parâmetros.
    2. Especifique os seguintes valores na primeira linha da tabela:
      • Nome: CustID
      • Tipo de dados: Número inteiro
      • Direcção: Entrada de dados
      • Valor predefinido: 103
      • 103 é um dos valores da coluna CUSTOMERNUMBER. É necessário um valor predefinido para que o Desenhador de relatórios BIRT execute a consulta para finalidades de teste.
    Editar conjunto de dados deverá ter o aspecto apresentado na Figura 13-4.

    Figura 13-4 Definição de parâmetros no sub-relatório de encomendas
  10. Seleccione Pré-visualizar resultados para confirmar se a consulta é válida e devolve os dados correctos. Se tiver criado a instrução SELECT e o parâmetro de conjunto de dados correctamente, deverá visualizar os resultados apresentados na Figura 13-5. Estas são as linhas de dados devolvidas pela consulta para o número de cliente 103.
  11. Figura 13-5 Pré-visualização de dados para o sub-relatório de encomendas
  12. Seleccione OK para guardar as alterações ao conjunto de dados.

Tarefa 5: Criar um conjunto de dados para o sub-relatório de pagamentos

Neste procedimento, é criado um conjunto de dados para indicar os dados que serão extraídos da tabela de pagamentos. O sub-relatório de pagamentos que será criado posteriormente utiliza este conjunto de dados.

  1. No Explorador de dados, faça clique com o botão direito do rato em Conjuntos de dados e seleccione Novo conjunto de dados a partir do menu contextual.
  2. Em Novo conjunto de dados, introduza o seguinte texto para o nome do conjunto de dados:
  3. Payments 
    
  4. Utilize os valores predefinidos para os restantes campos e, em seguida, seleccione Seguinte.
  5. Na consulta, expanda a tabela de pagamentos para apresentar as colunas da tabela.
  6. Utilize a seguinte instrução SQL SELECT para indicar os dados que serão obtidos:
  7. SELECT Payments.paymentDate, 
    Payments.checkNumber, 
    Payments.amount 
    FROM Payments 
    WHERE Payments.customerNumber = ? 
    
    Esta instrução selecciona as colunas PAYMENTDATE, CHECKNUMBER e AMOUNT da tabela de pagamentos. A cláusula WHERE tem um marcador de parâmetro para o valor de CUSTOMERNUMBER. Quando o relatório é executado, o sub-relatório de pagamentos obtém o valor actual CUSTOMERNUMBER a partir do relatório de clientes.
  8. Seleccione Terminar para guardar o conjunto de dados. Editar conjunto de dados apresenta as colunas especificadas na consulte e fornece opções para editar o conjunto de dados.
  9. Crie uma parâmetro de conjunto de dados para fornecer o valor CUSTOMERNUMBER para a cláusula WHERE:
    1. Seleccione Parâmetros. Editar conjunto de dados apresenta as informações de parâmetros.
    2. Especifique os seguintes valores na primeira linha da tabela:
      • Nome: CustID
      • Tipo de dados: Número inteiro
      • Direcção: Entrada de dados
      • Valor predefinido: 103
  10. Seleccione Pré-visualizar resultados para confirmar se a consulta é válida e devolve os dados correctos. Se tiver criado a instrução SELECT e o parâmetro de conjunto de dados correctamente, deverá visualizar os resultados apresentados na Figura 13-6. Estas são as linhas de dados devolvidas pela consulta para o número de cliente 103.
  11. Figura 13-6 Pré-visualização de dados para o sub-relatório de pagamentos
  12. Seleccione OK para guardar as alterações ao conjunto de dados.

Tarefa 6: Criar o relatório principal de clientes

É utilizado um elemento da lista para criar o relatório principal e organizar os respectivos sub-relatórios de encomendas e pagamentos. A lista repete-se ao longo das linhas de dados do cliente e cria encomendas relacionadas e sub-relatórios de pagamentos para cada registo. Para uma maior simplicidade, o relatório do cliente apresenta apenas o nome do cliente. Poderá, contudo, apresentar dados adicionais, como o endereço do cliente, o número de telefone e o limite de crédito.

  1. Seleccione Paleta.
  2. Arraste um elemento da lista a partir da paleta e largue-o no relatório. O elemento da lista é apresentado no relatório, conforme indicado na Figura 13-7.
  3. Figura 13-7 Elemento da lista
  4. Associe ou ligue a lista ao conjunto de dados do cliente:
    1. No Editor de propriedades, seleccione o separador Associação.
    2. Para Conjunto de dados, seleccione Clientes a partir da lista de selecção.
  5. No Explorador de dados, expanda Conjuntos de dados e, em seguida, expanda Clientes. As colunas especificadas na consulta são apresentadas por baixo de Clientes.
  6. Arraste CUSTOMERNAME a partir do Explorador de dados e largue-o na área de detalhes da lista. O Desenhador de relatórios BIRT cria uma coluna designada, que está associada ao campo do conjunto de dados. Seleccionar associação de dados apresenta esta associação de colunas.
  7. Seleccione OK para aceitar a associação de colunas predefinida. No editor de esquemas, a tabela apresenta o campo adicionado, tal como indicado na Figura 13-8.
  8. Figura 13-8 Campo conjunto de dados no elemento da lista
  9. Seleccione Pré-visualizar para pré-visualizar o relatório. O relatório deverá ter um aspecto semelhante ao indicado na Figura 13-9. O relatório apresenta todos os nomes de clientes na ordem devolvida pela consulta.
  10. Figura 13-9 Pré-visualização de dados para o relatório principal
  11. Ordene os nomes dos clientes por ordem crescente:
    1. Seleccione Esquema para regressar ao editor de esquemas.
    2. No editor de esquemas, seleccione o elemento da lista. Pouse o ponteiro do rato no canto inferior esquerdo até ver o separador Lista e, em seguida, seleccione o separador.
    3. No Editor de propriedades, seleccione o separador Ordenar.
    4. Na página Ordenar, seleccione Adicionar para criar uma expressão de ordenação. É apresentada uma linha em Ordenar em.
    5. Faça clique na área por baixo de Chave de ordenação e, em seguida, seleccione o botão de seta apresentado e seleccione CUSTOMERNAME a partir da lista de selecção.
    6. Utilize o valor predefinido, Ascendente como Direcção de ordenação, tal como indicado na Figura 13-10.
    7. Figura 13-10 Expressão de ordenação
  12. Pré-visualize o relatório. Os nomes dos clientes são apresentados por ordem ascendente.

Tarefa 7: Criar o sub-relatório de encomendas

O sub-relatório de encomendas apresenta as encomendas de cada cliente num formato de linhas e colunas. Apresenta o número e a data de cada encomenda. Para repetir através das linhas de conjuntos de dados das encomendas e apresentá-las num formato de linhas e colunas, utilize o elemento da tabela.

  1. Seleccione Esquema para regressar ao editor de esquemas.
  2. Arraste um elemento da tabela a partir da paleta e largue-o por baixo do elemento de dados [CUSTOMERNAME], na área de detalhes. Inserir tabela solicita-lhe que especifique o número de colunas e linhas de detalhes que serão criadas para a tabela.
  3. Indique que pretende criar 2 colunas e 1 linha de detalhes e seleccione OK. É apresentada uma tabela com duas colunas e uma linha de detalhes no editor de esquemas.
  4. Associe a tabela ao conjunto de dados de encomendas:
    1. No Editor de propriedades, seleccione Associação.
    2. Para Conjunto de dados, seleccione Encomendas a partir da lista de selecção.
  5. No Explorador de dados, expanda Conjuntos de dados e, em seguida, expanda Encomendas. As colunas especificadas na consulta são apresentadas por baixo de Encomendas.
  6. Arraste ORDERNUMBER a partir do Explorador de dados e largue-o na primeira célula da linha de detalhes da tabela. O Desenhador de relatórios BIRT cria uma coluna designada, que está associada ao campo do conjunto de dados. Seleccionar associação de dados apresenta esta associação de colunas.
  7. Seleccione OK para aceitar a associação de colunas predefinida.
  8. No editor de esquemas, a célula da tabela na qual largou o campo conjunto de dados contém um elemento de dados que apresenta [ORDERNUMBER]. Por cima deste elemento de dados existe um elemento de etiqueta que é adicionado automaticamente pelo editor de esquemas à linha do título. Esta etiqueta apresenta o nome do campo como texto estático e funciona como o título da coluna.
  9. Arraste ORDERDATE a partir do Explorador de dados e largue-o na segunda célula da linha de detalhes. Seleccione OK para aceitar a associação de colunas predefinida. A página de relatórios deverá ter um aspecto semelhante ao indicado na Figura 13-11.
  10. Figura 13-11 A concepção do relatório inclui o sub-relatório de encomendas
  11. Ordene as linhas de encomendas pelo número de encomenda:
    1. Seleccione a tabela de encomendas.
    2. No Editor de propriedades, seleccione Ordenar.
    3. Na página Ordenar, seleccione Adicionar para criar uma expressão de ordenação. É apresentada uma linha em Ordenar em.
    4. Faça clique na área por baixo de Chave de ordenação e, em seguida, seleccione o botão de seta apresentado e seleccione ORDERNUMBER a partir da lista de selecção.
    5. Utilize o valor predefinido, Ascendente como Direcção de ordenação.
  12. Pré-visualize o relatório.
  13. O relatório deverá ter um aspecto semelhante ao indicado na Figura 13-12.

    Figura 13-12 A pré-visualização do relatório apresenta registos de encomendas repetidos
    São apresentados os mesmos registos de encomendas para cada cliente, visto que foi especificado um valor predefinido de 103 para customerNumber ao criar o parâmetro de conjunto de dados, CustID. Devido a este valor predefinido, o sub-relatório de encomendas apresenta sempre os registos de encomendas do cliente 103.
    A solução é actualizar dinamicamente o valor do parâmetro CustID sempre que a linha do cliente é alterada no relatório principal. Este procedimento é descrito na seguinte tarefa.

Tarefa 8: Ligar o sub-relatório de encomendas ao relatório principal de clientes

Ligue o sub-relatório de encomendas ao relatório principal de clientes associando o parâmetro CustID ao campo de conjunto de dados CUSTOMERNUMBER no relatório de clientes. Sempre que o relatório de clientes alcança uma nova linha de cliente, o parâmetro CustID é actualizado com o novo valor CUSTOMERNUMBER.

Antes de poder ligar o parâmetro CustID ao campo de conjunto de dados CUSTOMERNUMBER, tem de criar uma associação de colunas e associá-la ao campo de conjunto de dados. Os parâmetros não podem aceder directamente aos campos de conjuntos de dados.

  1. Seleccione Esquema para regressar ao editor de esquemas.
  2. Crie uma associação de colunas que seja associada ao campo de conjunto de dados CUSTOMERNUMBER:
    1. Seleccione a lista.
    2. No Editor de propriedades, seleccione Associação.
    3. Na página Associação, seleccione Adicionar.
    4. No Construtor de expressões, seleccione Conjuntos de dados disponíveis, seleccione Clientes e, em seguida, faça clique em CUSTOMERNUMBER. O Construtor de expressões apresenta a expressão, dataSetRow["CUSTOMERNUMBER"], tal como indicado na Figura 13-13.
    5. Figura 13-13 O Criador de expressões apresenta a expressão de associação de colunas
    6. Seleccione OK. A nova associação de colunas é apresentada na página de associação do Editor de propriedades com o nome da coluna realçado.
    7. Substitua o nome Nova associação pelo seguinte nome:
    8. CUSTOMER_NUMBER 
      
  3. Seleccione a tabela de encomendas.
  4. No Editor de propriedades, seleccione Associação.
  5. Na página Associação, seleccione Associação de parâmetros de conjunto de dados. Associação de parâmetros de conjunto de dados apresenta o parâmetro CustID, tal como indicado na Figura 13-14. O valor respectivo está definido como a predefinição, 103, especificada ao criar o parâmetro de conjunto de dados.
  6. Figura 13-14 Associação de parâmetros de conjunto de dados para a tabela de encomendas
  7. Altere o valor do parâmetro para o campo CUSTOMERNUMBER no relatórios de clientes:
    1. Faça clique no campo Valor e seleccione o botão apresentado do lado direito.
    2. É apresentado o Construtor de expressões.
    3. No Construtor de expressões, seleccione Associações de coluna disponíveis, seleccione Lista e, em seguida, faça clique em CUSTOMER_NUMBER. O Construtor de expressões apresenta a expressão, row["CUSTOMER_NUMBER"], tal como indicado na Figura 13-15.
    4. Figura 13-15 O campo CUSTOMERNUMBER no Construtor de expressões
    5. Seleccione OK para guardar a expressão. A página Associação de parâmetros de conjunto de dados apresenta o novo valor de row["CUSTOMER_NUMBER"] para o parâmetro CustID.
  8. Seleccione OK para guardar a associação de parâmetros de conjunto de dados alterada.
  9. Pré-visualize o relatório, que deverá ter um aspecto semelhante ao indicado na Figura 13-16.
  10. Figura 13-16 A pré-visualização do relatório apresenta dados de encomendas correctos
    Agora são apresentados diferentes registos de encomendas para diferentes clientes. Nem todos os clientes têm registos de encomendas. Para apresentar apenas clientes que tenham encomendas, altere a consulta do relatório de clientes. Esta tarefa é descrita posteriormente na Tarefa 11: "Apresentar apenas os clientes que efectuaram encomendas ou pagamentos."

Tarefa 9: Criar o sub-relatório de pagamentos

O sub-relatório de pagamentos apresenta, num formato de linhas e colunas, os pagamentos efectuados por cada cliente. É apresentada a data do pagamento, o número de verificação e a quantidade de cada encomenda. Para repetir através das linhas de conjuntos de dados dos pagamentos e apresentá-las num formato de linhas e colunas, utilize o elemento da tabela.

  1. Seleccione Esquema para regressar ao editor de esquemas.
  2. Arraste um elemento da tabela a partir da paleta e largue-o por baixo do sub-relatório de encomendas, na área de detalhes. Inserir tabela solicita-lhe que especifique o número de colunas e linhas de detalhes que serão criadas para a tabela.
  3. Indique que pretende criar 3 colunas e 1 linha de detalhes e seleccione OK. É apresentada uma tabela com três colunas e uma linha de detalhes no editor de esquemas.
  4. Associe a tabela ao conjunto de dados de pagamentos:
    1. No Editor de propriedades, seleccione Associação.
    2. Para Conjunto de dados, seleccione Pagamentos a partir da lista de selecção.
  5. No Explorador de dados, expanda Conjuntos de dados e, em seguida, expanda Pagamentos. As colunas especificadas na consulta são apresentadas por baixo de Pagamentos.
  6. Arraste os campos seguintes a partir do Explorador de dados e largue-os na primeira, segunda e terceira células, respectivamente, na linha de detalhes da tabela. Seleccione OK para aceitar a associação de colunas predefinida para todos os campos.
    • PAYMENTDATE
    • CHECKNUMBER
    • AMOUNT
    A página de relatórios deverá ter um aspecto semelhante ao indicado na Figura 13-17.

    Figura 13-17 A concepção do relatório inclui o sub-relatório de pagamentos
    A tabela apresenta os campos de conjuntos de dados que foram adicionados. Apresenta ainda as etiquetas que o editor de esquemas adicionou automaticamente à linha do título. As etiquetas apresentam os nomes dos campos como texto estático e funcionam como títulos das colunas.
  7. Ordene as linhas de pagamentos por data de pagamento.
    1. Seleccione a tabela de pagamentos.
    2. No Editor de propriedades, seleccione Ordenar.
    3. Na página Ordenar, seleccione Adicionar para criar uma expressão de ordenação. É apresentada uma linha em Ordenar em.
    4. Faça clique na área por baixo de Chave de ordenação e, em seguida, seleccione o botão de seta apresentado e seleccione PAYMENTDATE a partir da lista de selecção.
    5. Utilize o valor predefinido, Ascendente como Direcção de ordenação.
  8. Pré-visualize o relatório. O relatório deverá ter um aspecto semelhante ao indicado na Figura 13-18.
  9. Figura 13-18 A pré-visualização do relatório apresenta os registos de pagamentos repetidos
    À semelhança do procedimento ao criar o relatório de encomendas, são apresentados os mesmos registos de pagamento para cada cliente, visto que foi especificado um valor predefinido de 103 para customerNumber ao criar o parâmetro, CustID, para o de conjunto de dados de pagamentos. Devido a este valor predefinido, o sub-relatório de pagamentos apresenta sempre os registos de pagamentos do cliente 103.
    Tal como para o sub-relatório de encomendas, é necessário actualizar dinamicamente o valor do parâmetro CustID para cada cliente no relatório principal.

Tarefa 10: Ligar o sub-relatório de pagamentos ao relatório principal de clientes

Ligue o sub-relatório de pagamentos ao relatório principal de clientes associando o parâmetro CustID ao campo CUSTOMERNUMBER no relatório de clientes.

  1. Seleccione Esquema para regressar ao editor de esquemas.
  2. Seleccione a tabela de pagamentos.
  3. No Editor de propriedades, seleccione o separador Associação.
  4. Na página Associação, seleccione Associação de parâmetros de conjunto de dados. Associação de parâmetros de conjunto de dados apresenta o parâmetro CustID. O valor respectivo está definido como a predefinição, 103, especificada ao criar o parâmetro de conjunto de dados.
  5. Altere o valor do parâmetro para o campo CUSTOMERNUMBER no relatórios de clientes:
    1. Faça clique no campo Valor e seleccione o botão apresentado do lado direito.
    2. No Construtor de expressões, seleccione Associações de coluna disponíveis, seleccione Lista e, em seguida, faça clique em CUSTOMER_NUMBER. O Construtor de expressões apresenta a expressão row["CUSTOMER_NUMBER"].
    3. Seleccione OK para guardar a expressão. A página Associação de parâmetros de conjunto de dados apresenta o novo valor de row["CUSTOMER_NUMBER"] para o parâmetro CustID.
  6. Seleccione OK para guardar a associação de parâmetros de conjunto de dados alterada.
  7. Pré-visualize o relatório. Agora, o relatório apresenta diferentes registos de pagamentos para diferentes clientes. Nem todos os clientes têm registos de pagamentos. Para apresentar apenas clientes que tenham pagamentos ou encomendas, altere a consulta do relatório de clientes.

Tarefa 11: Apresentar apenas os clientes que efectuaram encomendas ou pagamentos

A base de dados contém os clientes que não efectuaram encomendas ou pagamentos. A consulta do relatório de clientes devolve todos os clientes. Ao executar o relatório, existem linhas de clientes que mostram apenas os títulos das colunas das tabelas de encomendas e pagamentos, tal como indicado na Figura 13-19.

Figura 13-19 O relatório não apresenta qualquer dado de encomendas ou pagamentos para um cliente

É possível excluir clientes que não efectuaram encomendas ou pagamentos, alterando a consulta do relatório de clientes.

  1. Seleccione Esquema para regressar ao editor de esquemas.
  2. No Explorador de dados, expanda Conjuntos de dados, faça clique com o botão direito do rato em Clientes e, em seguida, seleccione Editar.
  3. Adicione as seguintes linhas SQL ao final da consulta existente:
  4. WHERE  
    EXISTS  
    (SELECT Orders.customerNumber 
    FROM Orders  
    WHERE Customers.customerNumber =  
    Orders.customerNumber) 
    OR 
    EXISTS  
    (SELECT Payments.customerNumber 
    FROM Payments  
    WHERE Customers.customerNumber =  
    Payments.customerNumber) 
    
    A cláusula WHERE EXISTS verifica as tabelas de encomendas e pagamentos relativamente a valores customerNumber que correspondam aos valores customerNumber da tabela de clientes. São apenas seleccionadas as linhas que têm valores customerNumber correspondentes. A consulta concluída deverá ter um aspecto semelhante à indicada na Figura 13-20.

    Figura 13-20 Cláusula WHERE EXISTS em Editar conjunto de dados
  5. Seleccione Pré-visualizar resultados para verificar se a consulta devolve linhas e, em seguida, seleccione OK.
  6. Pré-visualize o relatório. Desloque o relatório para baixo para verificar o resultado. O relatório deixou de apresentar os clientes que não efectuaram encomendas ou pagamentos.

Tarefa 12: Apresentar os sub-relatórios lado a lado

Agora que os sub-relatórios apresentam os dados correctos, pode concentrar-se em colocá-los lado a lado. Não é possível colocar duas tabelas juntas lado a lado, porque o Desenhador de relatórios BIRT cria elementos de nível de bloqueio, o que significa que cada elemento começa numa nova linha. Para apresentar as tabelas lado a lado, insira-as numa grelha. A grelha permite alinhar os elementos facilmente.

  1. Seleccione Esquema para regressar ao editor de esquemas.
  2. Arraste um elemento da grelha a partir da paleta e largue-o na linha de detalhes por cima da tabela de encomendas. Em Inserir grelha, especifique o número de colunas e linhas para a grelha.
  3. No Número de colunas, introduza 2 e no Número de linhas introduza 1 e, em seguida, seleccione OK.
  4. É apresentada uma grelha com duas colunas e uma linha no editor de esquemas.
  5. Mova a tabela de encomendas para a primeira célula da grelha. Para fazer isso, seleccione o separador Tabela no canto inferior esquerdo e, em seguida, arraste a tabela e largue-a na célula da grelha.
  6. Mova a tabela de pagamentos para a segunda célula da grelha. O esquema de relatórios deverá ter um aspecto semelhante ao indicado na Figura 13-21.
  7. Figura 13-21 Sub-relatórios lado a lado na concepção do relatório
  8. Pré-visualize o relatório. O relatório deverá ter um aspecto semelhante ao indicado na Figura 13-22.
  9. Figura 13-22 Pré-visualização do relatório mostrando os sub-relatórios lado a lado

Tarefa 13: Formatar o relatório

Agora que o relatório apresenta os dados e o esquema correctos, pode concentrar-se em melhorar o aspecto do relatório. Na seguinte secção são executadas as seguintes tarefas:

Destacar os nomes dos clientes

  1. Seleccione Esquema para regressar ao editor de esquemas.
  2. No editor de esquemas, seleccione o elemento de dados [CUSTOMERNAME].
  3. Seleccione o separador Propriedades do Editor de propriedades.
  4. Seleccione Geral a partir da lista em Propriedades. O Editor de propriedades apresenta as propriedades gerais de formatação do elemento de dados.
  5. Relativamente ao Tamanho, seleccione Grande para apresentar o texto do elemento num tamanho maior. O tamanho do texto aumenta.
  6. Seleccione B para formatar os dados como texto a negrito. Os dados são apresentados a negrito.

Editar os títulos das colunas

Ao inserir um campo de conjunto de dados numa tabela, o Desenhador de relatórios BIRT adiciona automaticamente uma etiqueta com o nome do campo de conjunto de dados na linha do título. Habitualmente, os nomes do campo de conjunto de dados não se encontram numa forma adequada para relatórios e é necessário alterá-los.

  1. Faça duplo clique no título da primeira coluna da tabela de encomendas. O texto é realçado.
  2. Substitua ORDERNUMBER pelo texto seguinte e prima Enter:
  3. Order Number 
    
  4. Repita os passos anteriores para alterar os restantes títulos das colunas para o texto seguinte:
  5. Order Date 
    Payment Date 
    Check Number 
    Amount 
    
    O esquema de relatórios deverá ter um aspecto semelhante ao indicado na Figura 13-23.

    Figura 13-23 Títulos das colunas editados na concepção do relatório
  6. Pré-visualize o relatório. O relatório deverá ter um aspecto semelhante ao indicado na Figura 13-24.
  7. Figura 13-24 Títulos das colunas editados na pré-visualização do relatório

Alterar o formato da data

Ao inserir um elemento de dados de tipo de dados de data, o Desenhador de relatórios BIRT apresenta as datas de acordo com a definição de locale do sistema. O Desenhador de relatórios BIRT disponibiliza diferentes formatos de data que poderá seleccionar se não pretender utilizar o formato predefinido. Neste procedimento, é criado um estilo que altera o formato dos valores ORDERDATE e PAYMENTDATE de 3 de Junho de 2005 12:00 AM para 6/3/05.

  1. Seleccione Esquema para regressar ao editor de esquemas.
  2. Seleccione o elemento de dados que apresenta [ORDERDATE].
  3. Seleccione Elemento->Novo estilo a partir do menu principal. Novo estilo apresenta as propriedades que é possível definir para um estilo, conforme indicado na Figura 13-25.
  4. Figura 13-25 Novo estilo
  5. Em Estilo personalizado, introduza:
  6. Date_data 
    
  7. Seleccione Formatar data e hora na lista de propriedades de estilo do lado esquerdo.
  8. Seleccione o formato m/d/yy a partir da lista de selecção. Os valores da lista de selecção são actualizados dinamicamente com a data actual.
  9. Seleccione OK.
  10. O estilo Date_data é aplicado ao elemento de dados [ORDERDATE], tal como indicado na Figura 13-26.

    Figura 13-26 O estilo Date_data aplicado a um elemento de dados
  11. Aplique o estilo Date_data ao elemento de dados da data de pagamento.
    1. Seleccione o elemento de dados que apresenta [PAYMENTDATE], tal como indicado na Figura 13-27.
    2. Figura 13-27 O elemento [PAYMENTDATE] seleccionado
    3. Faça clique com o botão direito do rato no elemento seleccionado e seleccione Estilo->Apply Style->Date_data.
  12. Pré-visualize o relatório. As datas foram alteradas do formato 3 de Junho de 2005 12:00 AM para 6/3/05.

Alterar os formatos numéricos

Ao inserir um elemento de dados de tipo de dados de número inteiro, o Desenhador de relatórios BIRT apresenta os números de acordo com a definição de locale do sistema. O Desenhador de relatórios BIRT disponibiliza diferentes formatos de números que poderá seleccionar se não pretender utilizar o formato predefinido. Neste procedimento, é criado um estilo que altera o formato dos valores de quantidade de 48425.69 para $48,425.69.

  1. Seleccione Esquema para regressar ao editor de esquemas.
  2. Seleccione o elemento de dados que apresenta [AMOUNT] na tabela de pagamentos.
  3. Seleccione Elemento->Novo estilo a partir do menu principal. Novo estilo apresenta as propriedades na categoria geral.
  4. Em Estilo personalizado, introduza:
  5. Currency_data 
    
  6. Seleccione Formatar números na lista de propriedades de estilo do lado esquerdo.
  7. Especifique os seguintes atributos de formatação, tal como indicado na Figura 13-28:
    • Para Formatar números, seleccione Moeda a partir da lista de selecção.
    • Para Casas decimais, utilize o valor predefinido de 2.
    • Seleccione Utilizar delimitador de milhares.
    • Para Símbolo, seleccione $ a partir da lista de selecção.
    • Utilize os valores predefinidos para os restantes atributos.
    • Figura 13-28 Propriedades de Formatar números
  8. Seleccione OK. O estilo Currency_data é aplicado ao elemento de dados [AMOUNT], tal como indicado pela propriedade de Estilo do elemento no Editor de propriedades.
  9. Pré-visualize o relatório. Os números são apresentados no formato da moeda, tal como indicado na Figura 13-29.
  10. Figura 13-29 O formato de moeda na pré-visualização do relatório

Aumentar o espaço vertical entre elementos

Neste procedimento, é aumentado o espaço entre cada nome de cliente e as linhas anteriores e posteriores. É possível ajustar o espaço vertical entre os elementos de várias formas:

A formatação com uma grelha é mais fácil e proporciona resultados mais previsíveis. Os valores de propriedades de preenchimento e das margens podem corresponder a resultados diferentes consoante o navegador. Neste procedimento, é utilizado o terceiro método.

  1. Seleccione Esquema para regressar ao editor de esquemas.
  2. Coloque o elemento de dados [CUSTOMERNAME] na grelha que contém as duas tabelas, executando os seguintes passos:
    1. Seleccione a grelha. Pouse o ponteiro do rato no canto inferior esquerdo até ver o separador Grelha e, em seguida, seleccione o separador. São apresentadas células de orientação na parte superior e na parte esquerda da grelha seleccionada.
    2. O editor de esquemas apresenta as margens dos elementos de dados individuais, grelhas, tabelas e célula e, por vezes, poderá ser difícil identificar onde está a ser colocado um elemento. Se necessitar de uma vista mais prática dos contentores e dos respectivos elementos, utilize a vista de esquema para apresentar a concepção do relatório numa vista de árvore. Também é possível utilizar a vista Esquema para seleccionar um determinado elemento, caso este seja difícil de seleccionar. Por exemplo, poderá ser difícil seleccionar a grelha em vez da tabela dentro da grelha. Para abrir a vista Esquema, seleccione Janela->Mostrar vista->Esquema.
    3. Faça clique com o botão direito do rato na célula de orientação do lado esquerdo da primeira linha da grelha e, em seguida, seleccione Inserir->Linha->Acima, tal como indicado na Figura 13-30.
    4. Figura 13-30 Inserir uma nova linha
      É apresentada uma nova linha acima da linha seleccionada.
    5. Mova o elemento de dados [CUSTOMERNAME] da localização actual para a primeira célula da nova linha da grelha, tal como indicado na Figura 13-31.
    6. Figura 13-31 Elemento de dados movido para a nova linha
  3. Adicione uma nova linha de grelha acima e abaixo da linha que contém o elemento de dados [CUSTOMERNAME], utilizando os procedimentos descritos anteriormente.
  4. Seleccione a grelha e, em seguida, seleccione a primeira linha, tal como indicado na Figura 13-32.
  5. Figura 13-32 Seleccionar a primeira linha
  6. Em Propriedades gerais do Editor de propriedades, defina a altura da linha como 0,2 polegadas, tal como indicado na Figura 13-33.
  7. Figura 13-33 Definir a propriedade de altura da linha
  8. Seleccione a terceira linha da grelha e defina a altura como 0,1 polegadas. A concepção de relatórios deverá ter um aspecto semelhante ao indicado na Figura 13-34.
  9. Figura 13-34 Nova altura de linha na concepção do relatório
  10. Pré-visualize o relatório. Existe mais espaço por cima e por baixo do nome do cliente. O relatório deverá ter um aspecto semelhante ao indicado na Figura 13-35.
  11. Figura 13-35 Pré-visualização do relatório com espaço adicionado

Aumentar o espaço horizontal entre as tabelas de encomendas e as tabelas de pagamentos

Neste procedimento, é aumentado o espaço entre as tabelas de encomendas e pagamentos. À semelhança do espaçamento vertical, é possível ajustar o espaço horizontal entre os elementos de várias formas:

A formatação com uma grelha é mais fácil e proporciona resultados mais previsíveis. Os valores de propriedades de preenchimento e das margens podem corresponder a resultados diferentes consoante o navegador. Neste procedimento, é utilizado o terceiro método.

  1. Seleccione Esquema para regressar ao editor de esquemas.
  2. Seleccione a grelha. Pouse o ponteiro do rato no canto inferior esquerdo até ver o separador Grelha e, em seguida, seleccione o separador. São apresentadas células de orientação na parte superior e na parte esquerda da grelha seleccionada.
  3. Faça clique com o botão direito do rato na célula de orientação sobre a primeira coluna e, em seguida, seleccione Inserir->Coluna à direita, tal como indicado na Figura 13-36.
  4. Figura 13-36 Inserir uma coluna
    É apresentada uma nova coluna entre a primeira e a terceira coluna. Por predefinição, o Desenhador de relatórios BIRT cria as colunas com a mesma largura.
  5. Seleccione a coluna que acabou de adicionar e utilize o Editor de propriedades para definir a respectiva largura como 0,4 polegadas, tal como indicado na Figura 13-37.
  6. Figura 13-37 Definir a largura de uma coluna
    A largura da segunda coluna diminui.
  7. Pré-visualize o relatório.
  8. Existe mais espaço entre as tabelas de encomendas e de pagamentos, tal como indicado na Figura 13-38.

    Figura 13-38 Pré-visualização do relatório com espaço adicionado entre as tabelas

Adicionar contornos em redor das tabelas

Neste procedimento, é adicionada uma caixa em redor das tabelas de encomendas e pagamentos para identificá-las claramente como dois sub-relatórios separados.

  1. Seleccione Esquema para regressar ao editor de esquemas.
  2. Seleccione a tabela de encomendas. Pouse o ponteiro do rato no canto inferior esquerdo até ver o separador Tabela e, em seguida, seleccione o separador. São apresentadas células de orientação na parte superior e na parte esquerda da tabela seleccionada.
  3. Seleccione Contorno no Editor de propriedades e, em seguida, defina as propriedades do contorno:
    • Em Estilo defina uma linha sólida.
    • Seleccione todos os botões para adicionar contornos em redor da tabela, tal como indicado na Figura 13-39.
    • Figura 13-39 Adicionar contornos a uma tabela
  4. Repita os passos anteriores para desenhar um contorno em redor da tabela de pagamentos.
  5. Pré-visualize o relatório. O relatório deverá ter um aspecto semelhante ao indicado na Figura 13-40.
  6. Figura 13-40 Contornos em redor das tabelas na pré-visualização do relatório

Aumentar o espaço entre os contornos das tabelas e os respectivos conteúdos

Os contornos superiores e esquerdos das tabelas estão muito próximos do conteúdos da tabela. Neste procedimento, é aumentado o espaço entre os contornos superiores e esquerdos e o conteúdo.

  1. Seleccione Esquema para regressar ao editor de esquemas.
  2. Seleccione a primeira célula na linha de título de grupo da tabela de encomendas. Certifique-se de que selecciona a célula, tal como indicado na Figura 13-41 e não o elemento de dados da célula.
  3. Figura 13-41 Seleccionar uma célula
    O título apresentado no Editor de propriedades indica o nome do elemento seleccionado. Verifique se é apresentado o seguinte texto:
    Property Editor - Cell 
    
  4. Seleccione as propriedades do Preenchimento no Editor de propriedades e defina Superior e Esquerda para 6 pontos.
  5. A Figura 13-42 mostra as definições da propriedade.

    Figura 13-42 Propriedades do preenchimento da célula no Editor de propriedades
    No editor de esquemas, são apresentados espaços adicionais em cima e à esquerda da célula, tal como indicado na Figura 13-43.

    Figura 13-43 Preenchimento da célula na concepção do relatório
  6. Seleccione a célula junto à célula que acabou de formatar e defina as propriedades de preenchimento Superior e Esquerda para 6 pontos.
  7. Seleccione as duas células na linha de detalhes e defina a propriedade de preenchimento Esquerda para 6 pontos.
  8. Seleccione as células que se encontram nas mesmas posições na tabela de pagamentos e aplique as mesmas definições que utilizou para as células na tabela de encomendas.
  9. Pré-visualize o relatório. O relatório deverá ter um aspecto semelhante ao indicado na Figura 13-44.
  10. Figura 13-44 A pré-visualização do relatório apresenta mais espaço nas tabelas


(c)
Copyright Actuate Corporation 2006

Tópico
anteriorTópico
seguinte