¾Informática para Engenharia das Ciências Agrárias

Access: exercícios

Ano Lectivo de 1998/99

Depois de um estudo cuidado, o Sr. Aguiar Mota, empresário experiente e bem sucedido, decidiu investir e recuperar um negócio de venda de automóveis que tinha falido. A maturidade alcançada pelo Sr. Mota ao longo dos anos dizia-lhe que para ter sucesso precisava essencialmente de ter um bom controle sobre a empresa e de bons vendedores. Neste último ponto o Sr. Mota teve sorte, pois encontrou o Gervásio e o Simões que se mostraram muito interessados em trabalhar para ele (pois estavam fartos de vender chá e café). Para ter um bom controle sobre a empresa o Sr. Mota optou por utilizar uma base de dados em Access.

1. As relações que se seguem definem as tabelas a criar para a base de dados da nova empresa do Sr. Aguiar Mota. Os atributos sublinhados definem os campos chave de cada relação. Os atributos com a marca * são os que não têm de ser obrigatoriamente preenchidos. Para alguns atributos existe entre parênteses informação complementar sobre algumas propriedades a verificar.

    Fornecedores: { CódigoFornecedor (num. automática), Nome (texto, 40), Endereço (texto, 50), Telefone (texto, 9, máscara, comprimento zero), NumContribuinte (texto, 9, máscara) }

    Vendedores: { CódigoVendedor (num. automática), Nome (texto, 40), Endereço (texto, 50), Telefone (texto, 9, máscara, comprimento zero), BI (texto, 8, máscara), NumContribuinte (texto, 9, máscara)}

    Clientes: { BI (texto, 8, máscara), Nome (texto, 40), Endereço (texto, 50), Telefone (texto, 9, máscara, comprimento zero), *DataNascimento (data/hora, máscara), NumContribuinte (texto, 9, máscara) }

    Compras: { CódigoCompra (num. automática), CódigoCarro, CódigoFornecedor, DataCompra (data/hora, máscara), PreçoCompra (moeda), Cor (texto,20) }

    Vendas: { CódigoVenda (num. automática), CódigoCompra, CódigoVendedor, BICliente, DataVenda (data/hora, máscara), PreçoVenda (moeda), FormaPagamento (texto, 10,="Cheque" Ou ="Dinheiro" Ou ="Multibanco", valor predefinido: "Cheque") }
     

2. Utilize o assistente de pesquisas para garantir a integridade referencial na introdução dos dados segundo a figura abaixo. Utilize a janela relações para impor a integridade referencial para as relações obtidas pelo uso do assistente de pesquisas. 

3. Preencha as tabelas introduzindo alguns registos.

4. Para facilitar a visualização e a introdução de novos dados na base de dados da empresa do Sr. Aguiar Mota, crie os seguintes formulários:

5. Para facilitar a impressão de dados crie os seguintes relatórios:
    5.1. Relatório Carros com origem na tabela Carros utilizando o Relatório Automático: Colunas.

    5.2. Relatório Fornecedores com origem na tabela Fornecedores utilizando o Relatório Automático: Tabela.

    5.3. Relatório Vendedores com origem na tabela Vendedores utilizando o Assistente de Relatórios.

    5.4. Relatório Etiquetas Clientes com origem na tabela Clientes utilizando o Assistente de Etiquetas.

    5.5. Relatório Clientes com origem na tabela Clientes utilizando a Vista de estrutura.

    5.6. Relatório Compras com origem na tabela Compras utilizando o Assistente de Relatórios. De modo a tornar o relatório mais legível substitua respectivamente os campos CódigoCarro e CódigoFornecedor pelas referências à marca/modelo do carro e ao nome do fornecedor. Agrupe os dados pela marca/modelo dos carros. Dentro de cada grupo ordene a restante informação pela data de compra. Para cada grupo marca/modelo calcule um subtotal parcial do total de vendas. Coloque o relatório em vista de paisagem (orientação horizontal).

    5.7. Relatório Vendas com origem na tabela Vendas utilizando o Assistente de Relatórios. De modo a tornar o relatório mais legível substitua respectivamente os campos CódigoCompra, CódigoVendedor e BICliente pelas referências à marca/modelo do carro, ao nome do vendedor e ao nome do cliente (não agrupe nem ordene quaisquer dados). Coloque o relatório em vista de paisagem (orientação horizontal). Visualize o relatório em modo de estrutura e utilize o botão Ordenar e agrupar para agrupar os dados pela marca/modelo dos carros vendidos e ordenar a restante informação pela data de venda.

6. De modo a dar resposta a uma série de questões que envolvem a junção, filtragem e agrupamento de dados, crie as seguintes consultas:
    6.1. Consulta Pormenor Compras: devolve a tabela Compras com o campo CódigoCarro substituído pela informação relacionada da tabela Carros.

    6.2. Consulta Pormenor Vendas: devolve a tabela Vendas com o campo CódigoCompra substituído pela referência à marca/modelo do carro correspondente ao código da compra.

    6.3. Consulta Carros com 4 portas: devolve os carros que possuem 4 portas, ordenados alfabeticamente pela marca e pelo modelo.

    6.4. Consulta Clientes com menos de 30 anos: devolve os clientes que têm uma idade inferior a 30 anos (despreze os meses e os dias).

    6.5. Consulta Vendas superiores a X mil escudos: mediante a introdução de um preço de venda X devolve o conjunto das vendas cujo preço de venda foi superior a X mil escudos (utilize a consulta Pormenor Vendas como origem dos dados).

    6.6. Consulta Carros por vender: devolve os carros que foram comprados mas que ainda não foram vendidos.

    6.7. Consulta Preços dos carros por vender: devolve os carros por vender (consulta anterior) juntamente com o preço de venda proposto (margem de lucro de 25% sobre o preço de compra).

    6.8. Consulta Lucro bruto por vendedor: para cada vendedor devolve o total do lucro bruto obtido no conjunto das vendas (soma das diferenças entre os preços de venda e os preços de compra).

    6.9. Consulta Marca mais vendida: devolve a marca de carros mais vendida juntamente com o número de unidades vendidas para essa marca (uma marca pode ter vários modelos).

    6.10. Consulta Eliminar vendas posteriores ao dia D: elimina da tabela Vendas os registos cuja data de venda seja posterior ao dia D.

7. Expanda o formulário Clientes de modo a que seja possível visualizar quais as compras realizadas por cada cliente. Comece por criar um formulário Tabela de Vendas com origem na tabela Vendas utilizando o Formulário Automático: Tabela. De seguida, abra o formulário Clientes na vista de estrutura e adicione o formulário Tabela de Vendas como subformulário. Por fim, proteja o subformulário de modo a que não seja possível editar os dados nele presentes.

8. Expanda o relatório Clientes de modo a que seja possível visualizar os carros comprados por cada cliente. Comece por criar um relatório Pormenor Vendas com origem na consulta Pormenor Vendas utilizando o Relatório Automático: Tabela. De seguida, abra o relatório Clientes na vista de estrutura e adicione o relatório Pormenor Vendas como subrelatório.