Buscar

Trabalho ICB II 2013

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 32 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 32 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 32 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

1
EAD657 – Tecnologia de Informação 
Trabalho 
Prof. Hiroo Takaoka 
Objetivo 
Desenvolver um sistema em Access para calcular o Índice da Cesta Básica (ICB). 
 
Grupo 
Quatro alunos no máximo. Se tiver mais do que quatro alunos, o trabalho do grupo será 
desconsiderado. 
 
Data de entrega 
O trabalho deverá ser entregue até o dia 15/11/2013. 
 
Forma de entrega 
O trabalho deverá ser entregue via opção entrega de trabalho do ERUDITO. 
Colocar no campo de AUTORES DO TRABALHO E COMENTÁRIOS as identificações 
(número USP e nome) completas dos componentes do grupo. 
Observações: 
Não há necessidade de entregar um exemplo do relatório. 
Não utilizar caracteres especiais (~, &, %, etc.) no nome do seu banco de dados. 
 
Observação importante 
Na prova unificada terá questão sobre o trabalho. A nota do trabalho vai depender da 
resposta desta questão. 
 2
Requisitos do sistema 
Deseja-se obter a cada mês a variação de preço de uma cesta básica de produtos de 
consumo (ICB – Índice da Cesta Básica) como mostra a Figura 1. 
A cada mês os preços dos produtos que compõem a cesta são coletados em informantes que 
comercializam estes produtos. 
Os pares informante/produto são pré-estabelecidos, portanto, quem coleta os preços precisa 
saber exatamente quais informantes e quais produtos devem ser pesquisados. 
No procedimento do cálculo da variação de preço devem ser considerados apenas os 
produtos que possuem cotações coletadas em meses consecutivos. 
Cada produto possui composição específica na cesta. 
 
 
 
 
Figura 1 – Índice da Cesta Básica (ICB) 
 
ICB 
$x $y 
Variação 
Mês i-1 Mês i 
x
xyICB  
 3
A Figura 2 mostra a organização do sistema ICB em Access que você deve desenvolver. 
 
 
Figura 2 – Janela de banco de dados do Access 
 4
Roteiro para execução do trabalho 
A Figura 3 mostra as tarefas que devem ser executadas para desenvolver o sistema. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figura 3 – Tarefas a serem executadas 
 
Criação do Banco de Dados ICB 
Para criar o banco de dados ICB execute as seguintes tarefas: 
 Criar um banco de dados em branco com nome icb 
 Criar as tabelas cadinf, cadpro e cadfor 
 Criar os relacionamentos entre as tabelas cadinf, cadpro e cadfor 
 Alimentar as tabelas com dados 
 Criar para cada tabela um formulário de entrada de dados 
cadprocadprocadforcadforcadinfcadinf
cadinfcadinf cadforcadfor cadprocadpro
coleta de cotaçõescoleta de cotações preços pareadospreços pareados consistência da
coleta de preços
consistência da
coleta de preços
preços médiospreços médios
preços da cestapreços da cesta
variação percentualvariação percentual
coleta de cotaçõescoleta de cotações
coleta de cotaçõescoleta de cotações
prepara cadforprepara cadforDigitação atualiza o 
cadastro
Digitação
Criar Tabelas
Criar Consultas
Criar Formulários
Criar Relatórios
cadprocadprocadforcadforcadinfcadinf
cadinfcadinf cadforcadfor cadprocadpro
coleta de cotaçõescoleta de cotações preços pareadospreços pareados consistência da
coleta de preços
consistência da
coleta de preços
preços médiospreços médios
preços da cestapreços da cesta
variação percentualvariação percentual
coleta de cotaçõescoleta de cotações
coleta de cotaçõescoleta de cotações
prepara cadforprepara cadforDigitação atualiza o 
cadastro
Digitação
Criar Tabelas
Criar Consultas
Criar Formulários
Criar Relatórios
Criar Tabelas
Criar Consultas
Criar Formulários
Criar Relatórios
 5
Criar um banco de dados em branco com nome icb.accdb 
Para criar um banco de dados em branco siga os seguintes passos: 
1. Selecione a opção Banco de Dados em Branco. 
2. Selecione o diretório onde o novo banco de dados vai ser armazenado e no campo 
Nome do arquivo digite o nome icb. 
3. Clique em Criar. 
 
Criar as tabelas cadinf, cadpro e cadfor 
A tabela cadinf (cadastro de informantes) é a tabela que armazena as informações do 
informante. Esta tabela é composta de seguintes campos: 
 infnum 
É o número do informante (por exemplo, supermercado) onde serão coletados os 
preços. Este número identifica o informante internamente ao sistema e portanto 
constitui a chave primária. Definir este campo como: número inteiro sem decimais; 
varia de 10 a 99; chave primária. 
 infnom 
É o nome do informante. Definir este campo como: texto[30]; requerido; 
comprimento não nulo. 
 inftel 
É o número do telefone do informante. Definir este campo como: texto[8]; 
requerido; comprimento não nulo. Usar para o telefone a máscara de edição 9999-
9999;1;”_”. Ela exige que sejam digitados apenas algarismos nas posições onde 
aparece 9. A especificação 1 indica que no banco de dados serão armazenados 
apenas os algarismos. Isto significa que o hífen que aparece no número do telefone 
não é armazenado. Para armazenar inclusive o hífen deveria ser usada a 
especificação 0. A última especificação indica qual caractere será usado na tela para 
indicar em que posições devem ser digitados os algarismos. No caso está sendo 
usado o caractere de sublinhamento ( _ ). 
A tabela cadpro (cadastro de produtos) é a tabela que armazena informações gerais sobre os 
produtos que compõem a cesta. Estas informações auxiliam na coleta de preços e na 
computação do preço final total da cesta a cada mês. Esta tabela é composta de seguintes 
campos: 
 pronum 
É o número do produto cujo preço irá ser pesquisado no informante. Este número 
identifica o produto internamente ao sistema e portanto constitui a chave primária. 
Definir este campo como: número inteiro sem decimais; varia de 100 a 999; chave 
primária. 
 6
 protip 
É um código que identifica o tipo de produto. No exemplo, todos os produtos 
alimentícios são identificados pelo código 1. Isto permite, por exemplo, gerar 
relatórios de produtos por tipo. Definir este campo como: número inteiro sem 
decimais; valor padrão 0; requerido; varia de 0 a 5. 
Usar como formato do campo protip a especificação 0;;0[vermelho]. Esta 
especificação indica que os valores positivos serão apresentados em preto sem casas 
decimais, os negativos não têm formato previsto (ele ficaria entre os dois pontos e 
vírgulas), e os valores nulos serão também apresentados sem decimais mas em 
vermelho (vide Figura 5(b)). Isto auxilia a pessoa responsável pelo cadastro de 
produtos na identificação de informações que estão faltando. 
 pronom 
É o nome do produto. Definir este campo como: texto[30]; requerido; comprimento 
não nulo. 
 prouni 
É a unidade de medida na qual o preço é coletado. Por exemplo, coleta-se o preço de 
1 kg de arroz e não o preço do pacote de 5 kg. Essa unidade deve constar na planilha 
com a qual o pesquisador de preços vai ao informante anotar o preço. Definir este 
campo como: texto[10]; não requerido. 
 procom 
É a composição do produto na cesta. Este número indica quantas unidades de 
medida do produto são utilizadas ao longo do mês por uma família típica. No 
exemplo, ela consome três sabonetes ao longo de um mês. Definir este campo 
como: número simples com duas casas decimais; valor padrão 0; nulo ou positivo; 
requerido. 
Usar como formato do campo procom a especificação 0,00;;0,00[vermelho]. Esta 
especificação indica que os valores positivos serão apresentados em preto com duas 
casas decimais, os negativos não têm formato previsto (ele ficaria entre os dois 
pontos e vírgulas), e os valores nulos terão também duas casas decimais mas serão 
mostrados em vermelho (vide Figura 5(b)). Isto auxilia a pessoa responsável pelo 
cadastro de produtos na identificação de informações que estão faltando. 
A tabela cadfor (cadastro de fornecimentos) é a tabela que registra os preços coletados em 
dois meses subseqüentes. É importante observar que o preço de um determinadoproduto é 
coletado em vários informantes com objetivo de obter um preço médio que reflita melhor o 
preço real do produto. Além disso, é natural que num mesmo informante se coletem os 
preços de vários produtos diferentes. 
 forinfnum 
É o número do informante. Definir este campo como: número inteiro sem decimais; 
varia de 10 a 99. 
 forpronum 
É o número do produto para o qual o informante indicado pode fornecer um preço. 
Definir este campo como: número inteiro sem decimais; varia de 100 a 999. 
 7
 forpre1 
É o preço anotado no mês i-1. Se esse preço valer zero significa que por alguma 
razão o preço não foi informado. Definir este campo como: número simples com 
duas casas decimais; valor padrão 0; requerido; nulo ou positivo. 
 forpre2 
É o preço anotado no mês i. Se esse preço valer zero significa que por alguma razão 
o preço não será informado ou ainda não foi coletado. Definir este campo como: 
número simples com duas casas decimais; valor padrão 0; requerido; nulo ou 
positivo. 
Observação 1 
Usar como formato dos preços (forpre1 e forpre2) a especificação 
#.##0,00[preto];;”zero”[vermelho]. Ela fará com que os preços positivos sejam 
mostrados em preto no formato indicado. Entre os pontos e vírgulas seria possível 
especificar um formato para preços negativos. A especificação final refere-se a 
preços nulos que serão apresentados através da palavra zero em vermelho (vide 
Figura 5(c)). Isto realça os preços que estão faltando facilitando a vida do 
responsável pelo cálculo do índice pois os preços nulos não podem entrar no 
cálculo. Se houver muitos preços nulos, afetará com certeza a qualidade do índice 
computado. 
Observação 2 
Nesta tabela nem forinfnum e nem forpronum constituem isoladamente chaves 
primárias, pois basta observar que estes números se repetem na tabela. Entretanto, o 
par (forinfnum, forpronum) nunca se repete e portanto identifica exatamente uma 
única linha da tabela. Desta forma obtemos uma chave primária composta de dois 
campos. Para definir a chave primária em Access basta selecionar os dois campos e 
em seguida apertar o botão de chave primária ( ). 
Para criar a tabela siga os seguinte passos: 
1. Selecione a opção Criar/Design da Tabelas. 
2. Especifique os campos que compõem a tabela (para obter detalhes sugere-se ler o 
tópico “Criar nova tabela” da apostila “Introdução ao Microsoft Access”). 
3. Salve a tabela com o nome sugerido (cadpro, cadinf e cadfor). Podemos salvar a 
tabela acionando o menu Arquivo e opção Salvar como. Também será salva a tabela 
se fechamos a janela através do botão de fechamento Windows ou via Fechar no 
menu Arquivo. 
Criar relacionamentos entre as tabelas cadinf, cadpro e cadfor 
Os relacionamentos são gerados observando que cada informante informa o preço de vários 
produtos e cada produto tem preços informados por vários informantes como mostra a 
Figura 4. Portanto, os relacionamentos entre cadinf e cadfor, bem como entre cadpro e 
cadfor são do tipo um-para-muitos. 
É importante impor a integridade referencial pois desta maneira não será possível registrar 
na tabela cadfor preços de informantes ou produtos que não estejam previamente 
cadastrados em cadinf e cadpro respectivamente. 
 8
Para criar os relacionamentos siga os seguintes passos: 
1. Selecionar a opção Ferramentas de Banco de Dados/Relações( ). Em resposta, 
aparece a janela Relações acompanhada da janela Mostrar tabela contendo uma lista 
de tabelas. Se a janela Mostrar Tabela não aparecer, basta clicar na opção Mostrar 
Tabela. 
2. Adicionar as tabelas da lista. Para tanto, selecione as tabelas cadinf, cadpro e cadfor 
(para selecionar mais de uma tabela marque as tabelas pressionando 
simultaneamente a tecla CTRL) e clique no botão Adicionar. Após adicionar as 
tabelas, clique no botão Fechar. Em resposta, aparece na janela Relações as tabelas 
adicionadas. Estas tabelas podem ser arrastadas e redimensionadas até que fiquem 
visualmente legíveis. 
3. Para criar o relacionamento entre a tabela cadinf e a tabela cadfor, clica-se sobre o 
campo infnum na tabela cadinf e arrasta-se até o campo forinfnum na tabela cadfor. 
Em resposta, surge a caixa de diálogo Editar Relações para que sejam fornecidas 
mais especificações sobre o relacionamento em questão. Impor a integridade 
referencial para impossibilitar o registro na tabela cadfor preços de informantes que 
não estejam previamente cadastrados em cadinf. Ao ativar esta opção passa a ser 
necessário especificar também qual é o tipo de relacionamento. O tipo um-para-
muitos já aparece selecionado porque é o padrão do Access. Em seguida, criar o 
relacionamento com integridade referencial entre as tabelas cadpro e cadfor, 
clicando sobre o campo pronum na tabela cadpro e arrastando até o campo 
forpronum na tabela cadfor. 
Para obter mais detalhes sugere-se ler o tópico “Criação de Relacionamentos” da apostila 
“Introdução ao Microsoft Access”. 
 
 
Figura 4 – Janela de relacionamentos 
 9
Alimentar as tabelas com dados. 
A entrada de dados (registros) na tabela é feita através de folha de dados. Para acioná-la, 
basta dar duplo clique no nome da tabela ou selecionar no Modo de Exibição a opção Modo 
de Exibição de Folha de Dados. 
Observamos que os dados sobre a cotação de preços só podem ser registrados após o 
cadastramento dos informantes e dos produtos. Como impomos a restrição de integridade 
referencial, ao registrar cotação de preços o Access verificará se o número do informante e 
o número do produto existem na tabela cadinf e cadpro respectivamente. Assim, só 
podemos cadastrar as cotações após o cadastramento dos informantes e dos produtos. 
A Figura 5 mostra as tabelas cadinf, cadpro e cadfor com seus dados. Sugere-se que sejam 
usados esses dados no seu trabalho. 
 
Figura 5(a) – Tabela cadinf (cadastro de informantes) 
 
 
Figura 5(b) – Tabela cadpro (cadastro de produtos) 
 
 
 10
Figura 5(c) – Tabela cadfor (cadastro de fornecimentos) 
 
Criar para cada tabela um formulário de entrada de dados 
Criar os formulários usando o assistente de formulário. Por exemplo, para criar o 
formulário correspondente à tabela cadinf com o Assistente de formulário, siga os seguintes 
passos: 
1. Na janela Banco de dados selecione o botão Criar/Mais Formulários/Assistente de 
Formulário. 
2. Escolha a tabela cadinf para a qual o formulário será desenvolvido. 
3. Siga as indicações dadas pelas caixas de diálogo Assistente de formulário. 
 Que campos você deseja no seu formulário? 
todos (botão >>) 
 Que layout você deseja para seu formulário? 
tabela 
 Que estilo você deseja? 
Selecione um estilo desejado. 
 Que título você deseja para o seu formulário? 
cad 1: cadastro de informantes 
 Na última caixa de diálogo, clique no botão Concluir. 
O Access exibe o formulário que o Assistente criou. 
O formulário gerado vai necessitar alguns ajustes que deverão ser feitos em modo design. 
Para inspecionar a estrutura do formulário gerado (Figura 6), acione o botão Modo Design. 
 
 
Figura 6 – Estrutura do formulário cad 1: cadastro de informantes 
 
O formulário gerado vai necessitar de alguns ajustes sugeridos abaixo: 
 Alargar o formulário à direita. 
 Alargar a caixa de texto do telefone (vide Figura 6). 
 Alargar o rótulo do telefone (vide Figura 6). 
 Alterar a propriedade aparência das três caixas de texto de baixo relevo para plano. 
Barra de cabeçalho 
Barra de detalhe 
Rótulo 
Caixa de texto 
 11
Para tanto, selecione a caixa de texto e acione a opção Folha de Propriedades. Em 
seguida, selecione a opção Plano na propriedade Aparência como mostra a Figura 7. 
 
 
Figura 7 – Folha de propriedades da caixa de texto referente ao campo infonum 
 
 Mudar a cor de fundo do formulário. 
Para tanto, selecione a Barra de cabeçalho (vide Figura6) e acione a opção Folha de 
Propriedades. Em seguida, selecione a cor desejada na propriedade Cor do fundo 
como mostra a Figura 8. 
 
 
Figura 8 – Folha de propriedades do cabeçalho do formulário cad 1: cadastro de 
informantes 
 
 12
Selecione a Barra de detalhe (vide Figura 6) e acione a opção Folha de 
Propriedades. Em seguida, selecione a cor desejada na propriedade Cor do fundo 
como mostra a Figura 9. 
 
 
Figura 9 – Folha de propriedades do detalhe do formulário cad 1: cadastro de informantes 
 
A Figura 10 refere-se ao formulário cad1: cadastro de informantes. 
 
 
Figura 10 – Formulário cad1: cadastro de informantes 
 
Criar o formulário também para as tabelas cadpro e cadfor realizando os ajustes que 
considerar relevantes. Os nomes dos formulários correspondentes a cadpro e cadfor devem 
ser cad 2: cadastro de produtos e cad 3: cadastro fornecimentos respectivamente. 
 
Cálculo do Índice da Cesta Básica 
Para calcular o índice da cesta básica, execute as seguintes tarefas: 
 Preparar preços pareados 
 Calcular preços médios de cada produto 
 Calcular preços da cesta 
 13
 Calcular a variação percentual 
 
A Figura 11 mostra como o índice é calculado. 
 
 
 
 
 
 
 
 
registros com 
duas cotações 
médias por 
produto 
soma das multiplicações 
(entre procom e média) 
 14
 
 
Figura 11 – Passos para calcular o índice da cesta básica 
Preparar preços pareados 
A tabela cadfor (cadastro de fornecimentos) contém duas colunas de preços. A coluna 
forpre1 contém os preços coletados no mês i-1 (anterior) e a coluna forpre2 contém os 
preços coletados no mês i (atual). 
No procedimento do cálculo da variação de preço devem ser considerados apenas os 
produtos que possuem cotações coletadas em meses consecutivos. Esta seleção vai ser feita 
através da consulta cal 1: preços pareados (Figura 12). 
Esta consulta é criada da forma normal escolhendo a opção Criar/Design da Consulta. Na 
janela Mostrar tabela selecione a tabela cadfor e clique no botão Adicionar. Selecione todos 
os campos da tabela cadfor. Na linha de Critério especifique >0 para selecionar apenas os 
produtos que têm cotações nos meses i-1 (forpre1) e i (forpre2). Para ordenar por produto 
(forpronum) e informante (forinfnum) indicar na linha de Classificação a opção Crescente. 
 
 
 
 
 
Figura 12 – Estrutura da consulta cal 1: preços pareados 
 
Para evitar que os registros da tabela cadfor sejam alterados através desta consulta, é 
necessário especificar que a consulta é do tipo Instantâneo na janela Folha de Propriedades 
da consulta. Para abrir a janela Folha de Propriedades da consulta basta clicar na área de 
ordena por produto 
e fornecedor 
somente participam 
cotações com duas 
participações sucessivas 
(cesta2 –cesta1)/cesta1 
 15
fundo cinza na parte superior da janela de Consulta e acionar a opção Folha de 
Propriedades. Em seguida, selecione a opção Instantâneo na propriedade Tipo de conjunto 
de registros como mostra a Figura 13. Certifique-se que a janela de propriedades se refere à 
consulta como um todo e não a um campo particular dela. 
Salve a consulta com o nome sugerido: cal 1: preços pareados. 
 
 
Figura 13 – Folha de propriedades da consulta cal 1: preços pareados 
 
Ao acionar a execução da consulta aparece o resultado apresentado na Figura 14. Note-se 
que aparecem somente os produtos com as cotações sucessivas. 
 
 
Figura 14 – Resultado da consulta cal 1: preços pareados 
 
Calcular preços médios de cada produto 
Os preços médios de cada produto são calculados através da consulta cal 2: preços médios 
(Figura 15). 
Esta consulta é criada da forma normal escolhendo a opção Criar/Design da Consulta. Na 
janela Mostrar tabela selecione a consulta cal1 1: preços pareados e clique no botão 
Adicionar. 
Para obter médias é necessário acrescentar uma linha Total na planilha QBE. Para tanto, 
acionar a opção Totais ( ). 
 16
Para calcular os preços médios por produto, é necessário indicar na linha de Totais a opção 
Agrupar por no campo forpronum, Média no campo forpre1 e Média no campo forpre2. 
Para ordenar por produto indicar na linha de Classificação a opção Crescente no campo 
forpronum. 
Os nomes média1 e média2 que antecedem dois pontos (:) são os nomes a serem atribuídos 
aos campos forpre1 e forpre2 na exibição da consulta. 
 
 
Figura 15 – Estrutura da consulta cal 2: preços médios 
 
Salve a consulta com o nome cal 21: preços médios. 
Ao acionar a execução da consulta aparece o resultado apresentado na Figura 16. Note-se 
que os produtos aparecem na ordem crescente. 
 
 
Figura 16 - Resultado da consulta cal 2: preços médios 
 
Calcular preços da cesta 
O preço da cesta deve ser calculado como soma ponderada, uma vez que o preço da cesta 
depende do preço médio e da composição de cada produto que dela participa. Este preço da 
cesta será calculado através da consulta cal 3: preços da cesta (Figura 17). 
Como o valor da ponderação (procom) está armazenado na tabela cadpro, é necessário 
usar, além da consulta cal 2, a tabela cadpro. 
 17
Esta consulta é criada escolhendo a opção Criar/Design da Consulta. Na janela Mostrar 
tabela selecione e adicione a tabela cadpro e a consulta cal 2: preços médios. Em seguida, 
crie relacionamento entre a tabela cadpro e a consulta cal 2. Para criar este relacionamento, 
clica-se sobre o campo pronum na tabela cadpro e arrasta-se até o campo forpronum na 
consulta cal 2. Observamos que não é necessário impor a integridade referencial. 
Uma vez criado o relacionamento, especifique na planilha QBE as expressões: 
cesta1: Soma([média1]*[procom]) na primeira coluna da linha campo e 
cesta2: Soma([média2]*[procom]) na segunda coluna da linha campo 
O nome cesta1 que antecede dois pontos (:) é o nome a ser atribuído ao campo computado 
e a expressão Soma([média1]*[procom]) especifica como o valor deve ser calculado. 
Observe-se que os campos utilizados em expressões precisam estar entre colchetes, daí a 
razão de se escrever [média1], [procom] e [média2]. 
 
Figura 17 – Estrutura da consulta cal 3: preços da cesta 
 
O formato associado ao campo computado cesta1 e cesta2 pelo Access é Número geral que 
exibe apenas o número de casas decimais necessárias para cada valor. Para especificar o 
número fixo de casas decimais é necessário abrir a janela Folha de Propriedades do campo. 
Para tanto, selecione a coluna do campo computado e acione a opção Folha de 
Propriedades. Em seguida, especifique o Formato como Fixo com duas casas decimais ou 
Padrão como mostra a Figura 18. 
 
 18
Figura 18 – Folha de de propriedades dos campos computados cesta1 e cesta2 
Salve a consulta com o nome sugerido: cal 3: preços da cesta. Ao acionar a execução da 
consulta aparece o resultado apresentado na Figura 19. 
 
 
Figura 19 – Resultado da consulta cal 3: preços da cesta 
 
Calcular a variação percentual 
A variação percentual deve ser calculada em relação ao mês anterior (mês i-1). Assim, a 
expressão será: variação percentual = (cesta2 – cesta1 ) / cesta1. Esta variação será 
calculada através da consulta cal 4: variação percentual (Figura 20). 
 
 
Figura 20 – Estrutura da consulta cal 4: variação percentual 
 
Esta consulta é criada escolhendo a opção Criar/Design da Consulta. Na janela Mostrar 
tabela selecione a consulta cal 3: preços da cesta e clique no botão Adicionar. 
Especifique na planilha QBE a seguinte expressão: 
variação percentual: ([cesta2]-[cesta1])/[cesta1] 
O nome variação percentual que antecede dois pontos (:) é o nome a ser atribuído ao 
campo computado e a expressão ([cesta2]-[cesta1])/[cesta1] especifica como o valor deve 
ser calculado. 
Observe-se que os campos utilizados em expressões precisam estar entre colchetes,daí a 
razão de se escrever [cesta1] e [cesta2]. O formato associado ao campo computado 
variação percentual pelo Access não está no formato Porcentagem. Para especificar que o 
 19
formato é porcentagem é necessário abrir a janela Folha de Propriedades do campo. Para 
tanto, selecione a coluna do campo computado e acione o botão Folha de Propriedades. Em 
seguida, especifique o Formato como Porcentagem, como mostra Figura 21. 
 
 
Figura 21 – Folha de propriedades do campo computado variação percentual 
 
Salve a consulta com o nome sugerido: cal 4: variação percentual. Ao acionar a execução 
da consulta aparece o resultado apresentado na Figura 22. 
 
 
Figura 22 – Resultado da consulta cal 4: variação percentual 
 
Consistência da Coleta de Preços 
O objetivo é fazer a consistência de preços coletados, verificando o número de cotações 
previstas e o número de cotações pareadas como mostra a Figura 23. 
O número de cotações previstas e pareados por produto será calculado através da consulta 
man 1: número de cotações por produto (Figura 24). 
Como a relação dos produtos que compõem a cesta está armazenada na tabela cadpro, é 
necessário usar, além da tabela cadfor, a tabela cadpro. 
Esta consulta é criada escolhendo a opção Criar/Design da Consulta. Na janela Mostrar 
tabela selecione as tabelas cadpro e cadfor e clique no botão Adicionar. Como é necessário 
incluir na consulta todos os produtos de cadpro e somente os produtos de cadfor quando os 
campos associados forem iguais, é necessário alterar a propriedade da associação entre elas. 
Para alterar a propriedade basta dar duplo clique na linha da associação e selecionar a 
opção 2 (incluir TODOS os registros de ‘cadpro’ e somente os registros de ‘cadfor’ quando 
os campos associados forem iguais) como mostra a Figura 25. Note-se que aparece a seta 
apontando a tabela cadfor. 
 20
 
 
 
 
 
 
 
 
 
Figura 23 – Consistência da coleta de preços 
 
 
 
Figura 24 – Estrutura da consulta man 1: num de cotações por produto 
se forpre1>0 e forpre2>0 
então somar 1 senão somar 0 
Incluir todos de 
cadpro e apenas os 
associados de cadfor 
agrupar 
por 
contar 
(forpre1) 
cot pareadas: Soma(Iif([forpre1]>0 E [forpre2]>0;1;0)) 
 21
 
Figura 25 –Propriedades da associação da consulta man 1: num de cotações por produto 
 
Para poder contar o número de cotações de cada produto é necessário acrescentar uma linha 
Total na planilha QBE. Para tanto, acionar a opção Totais ( ). 
Como na linha de Total é necessário especificar uma função para todas as colunas, foi 
usada a função Primeiro no campo pronom. Esta função serve para encontrar o valor do 
campo do primeiro registro do grupo em uma tabela ou consulta. 
A função Iif verifica se a condição [forpre1]>0 E [forpre2]>0 foi satisfeita e retorna 1 se 
for VERDADEIRA e retorna 0 se for FALSO. 
Observamos que o Access depois de salvar a consulta vai substituir automaticamente o 
nome da função Iif por SeImed (Se Imediato). Se você digitar diretamente SeImed, o 
Access vai dar mensagem de erro. 
A função Soma soma os valores que resultaram da função Iif, isto é, 0 e 1. 
Salve a consulta com o nome sugerido: man 1: num de cotações por produto. 
 
Formulário e Relatório para a Coleta de Cotações 
Para criar formulário para a coleta de cotações, siga os seguintes passos: 
 Gerar a consulta que prepara o cadfor (cadastro de fornecimentos) 
 Gerar a consulta para preparar a coleta de cotações 
 Gerar o formulário para digitar as cotações do mês 
 Gerar o relatório para coleta de cotações 
 
Gerar a consulta que prepara o cadfor (cadastro de fornecimentos) 
O cadastro de fornecimentos (cadfor) contém duas colunas de preços. A coluna forpre1 
contém os preços coletados no mês i-1 e a coluna forpre2 contém os preços coletados no 
mês i. Apesar do cadastro possuir duas colunas de preços deve ficar claro que num 
determinado mês coletam-se apenas os preços deste mês i, sendo que os preços do mês 
 22
anterior i-1 já devem constar no cadastro na coluna forpre1. Portanto, precisa-se ajustar as 
colunas de forma a poder alimentar os novos preços. 
Por exemplo, se cadfor registra os preços dos meses de janeiro e fevereiro então ao coletar 
os preços do mês de março é necessário: 
 Transferir o conteúdo da coluna forpre2 para a coluna forpre1 cujo conteúdo 
será destruído. 
 Zerar a coluna forpre2 que assim estará preparada para receber os novos preços 
coletados. 
Esta operação de deslocamento do conteúdo da coluna forpre2 seguido de seu 
preenchimento de zeros é realizada a cada novo mês. Deve ficar claro que o cadastro cadfor 
deveria ser salvo antes de se realizar estas operações com objetivo de preservar os dados 
coletados (por exemplo, mês i-1 janeiro versus mês i fevereiro). Esta salva também é 
importante para eventualmente recompor o cadastro em caso de falha ou ação incorreta. 
Para salvar o conteúdo de cadfor selecione cadfor e acione Copiar e em seguida Colar 
atribuindo um nome significativo ao cadastro. No caso do exemplo, poderia ser cadforfev 
indicando que se trata do cadastro do mês de fevereiro como mostra a Figura 26. 
 
 
Figura 26 – Janela de tabelas do bando de dados do Access 
 
A consulta que prepara o cadastro de fornecimentos (cadfor) é man 2: prepara cadfor 
(Figura 27). Esta consulta é criada escolhendo a opção Criar/Design da Consulta. Na janela 
de estrutura deve-se acionar dois campos forpre1 e forpre2 e em seguida escolher na área 
Tipo de Consulta a opção Consulta atualização. Isto faz com que seja inserida a linha 
Atualizar para na planilha QBE. Nessa linha indica-se que forpre1 deve ser atualizado para 
[forpre2] e forpre2 deve ser atualizado para zero. 
Salve a consulta com o nome man 2: prepara cadfor. Observe que o ícone que aparece ao 
lado de consultas tipo atualização ( ) é diferente do ícone que identifica consultas tipo 
seleção ( ). 
 
 23
 
Figura 27 – Estrutura da consulta atualização man 2: prepara cadfor 
 
Observar que esta consulta passou a ser uma consulta que age sobre a tabela envolvida, isto 
é, ela não realiza uma seleção e mostrar apenas o conteúdo selecionado. Portanto, trata-se 
de uma consulta com característica diferente das anteriormente criadas. Para executá-la é 
necessário acionar o botão de atualização ( ) como mostra a Figura 28. Ao acionar este 
botão o Access avisa que a tabela será atualizada como mostra a janela de aviso da Figura 
29. 
 
Figura 28 – Janela de Consultas do Banco de dados 
 
 
Figura 29 – Janela de aviso da consulta de atualização 
 24
 
Ao acionar o botão Sim, o Access pede para confirmar como mostra a janela da Figura 30. 
 
 
Figura 30 – Janela de confirmação da consulta de atualização 
 
Ao acionar o botão Sim, o Access vai atualizar os dados do cadfor. A tabela da Figura 31 
refere-se à tabela cadfor após a atualização. Note-se que o conteúdo da coluna forpre2 da 
tabela cadfor antes da atualização foi transferido para a coluna forpre1 e a coluna forpre2 
foi zerada. 
 
 
Figura 31 – Resultado da consulta atualização man 2: prepara cadfor 
 
Observar que se o botão de atualização for acionado duas vezes seguidas, acaba-se zerando 
as duas colunas de preços. 
Gerar a consulta para preparar a coleta de cotações 
A consulta que prepara a coleta de cotações é man 3: coleta de cotações (Figura 32). Esta 
consulta será utilizada para gerar formulário para realizar a entrada dos preços coletados. 
Ela também será utilizada para gerar o relatório em papel que será utilizado pela pessoa que 
irá coletar os preços nos informantes. 
Essa consulta é uma consulta tipo seleção padrão que apresenta os dados do informante, do 
produto e seus preços em meses subseqüentes. A Figura 32 mostra quais campos devem ser 
selecionados de cada tabelaenvolvida. 
 25
Novamente sugere-se acionar a Folha de Propriedades da consulta e na propriedade Tipo de 
conjunto de registros escolher a opção Instantâneo para impedir que o usuário possa alterar 
os dados que ela apresenta na folha de dados. Lembrar que para acionar as propriedades da 
consulta deve-se dar um clique na área de fundo cinza na parte superior da janela de 
Consulta e acionar a opção Folha de Propriedades. Certifique-se que a janela de 
Propriedades se refere à consulta como um todo e não a um campo particular dela. 
Salve a consulta com o nome sugerido: man 3: coleta de cotações. 
 
 
Figura 32- -Estrutura da consulta man 3: coleta de cotações 
 
A Figura 33 mostra o resultado da execução desta consulta. 
 
Figura 33 – Resultado da consulta man 3: coleta de cotações 
Gerar o formulário para digitar as cotações do mês 
Trata-se na realidade de um formulário que incorpora um subformulário como mostra a 
Figura 34. As duas barras de seleção de registros que aparecem indicam esta estrutura. A 
barra mais externa indica que está selecionado o registro 1 correspondente ao informante 21 
(Supermercados Bom Preço). Neste informante são coletados os preços de três produtos: 
arroz, sabonete e feijão. Esses produtos estão apresentados no subformulário mais interno 
cuja barra de seleção de registros acusa a seleção do registro 1 (arroz). 
 26
Se o usuário selecionar outro informante na barra externa de seleção de registros então 
automaticamente serão mostrados seus produtos associados no subformulário. Essa 
estrutura é muito prática pois os preços serão coletados por informante e portanto é natural 
que sejam digitados por informante. Basta selecionar o informante e digitar os preços. 
Notar que apenas forpre2 será digitado (na Figura 34 esse campo está indicado com fundo 
em amarelo). 
 
 
Figura 34 – Formulário man 2: coleta de cotações 
 
As ações necessárias para gerar esse formulário/subformulário de forma geral são as 
seguintes: 
1. Selecione a opção Criar/Mais Formulários/ Assistente de Formulário. 
2. Escolha a consulta man 3: coleta de cotações para a qual o formulário será criado. 
3. Siga as indicações dadas pelas caixas de diálogo Assistente de Formulário. 
 Que campos você deseja no seu formulário? 
todos (botão >>) 
 Como você deseja exibir seus dados? 
por cadinf (verifique se a opção Formulário com subformulário(s) está 
ativada) 
 Que layout você deseja para seu formulário? 
tabela 
 Que estilo você deseja? 
Selecione um estilo. 
 Que título você deseja para o seu formulário? 
Formulário - man 2: coleta de cotações (formulário) 
Subformulário – man 2: coleta de cotações (subformulário) 
 Na última caixa de diálogo, clique no botão Concluir. 
O Access exibe o formulário que o Assistente criou. 
O formulário/subformulário gerado vai necessitar alguns ajustes que deverão ser feitos em 
modo estrutura. 
 27
 
 
 
 
Figura 35 – Janela de estrutura do subformulário man 2: coleta de cotações 
Para fazer os ajustes no subformulário (Figura 35) siga os seguinte passos: 
 Selecionar o formulário man 2: coleta de cotações (subformulário) e acionar o 
botão Modo estrutura. 
 Alterar a propriedade Aparência dos campos para o plano. 
 Ajustar o tamanho das caixas de texto e rótulos. 
 Colocar outra cor de fundo na caixa de texto do forpre2. 
 No subformulário, é necessário evitar que sejam alterados os dados dos campos 
prounm, pronom e forpre1, pois só deve permitir a digitação do preço forpre2. 
Assim, é necessário alterar a propriedade dos campos. Para abrir a janela Folha 
de Propriedades do campo pronum, selecione a caixa de texto correspondente e 
Folha de Propriedades e a opção Dados. Em seguida, especifique na 
propriedade Ativado a opção Não e na propriedade Bloqueado a opção Sim 
como mostra a Figura 36. Faça o mesmo para os campos pronom e forpre1. 
Além de impedir a digitação nos campos pronum, pronom e forpre1, também 
desejamos impedir a adição de novos produtos, e a exclusão de produtos já 
existentes. Para tanto, precisamos definir as propriedades do subformulário. 
Para abrir a janela Folha de Propriedades do subformulário dê duplo clique na 
área azul claro à direita (vide Figura 35) e selecione a opção Dados. 
Especifique nas propriedades Permitir adições e Permitir exclusões a opção 
Não. Já a propriedade Permitir edições deve ser preservada em Sim, pois 
queremos poder digitar o preço forpre2. A Figura 37 mostra esta janela de 
Propriedade do subformulário. 
 
Área azul claro 
Caixa de texto 
Rótulo 
 28
 
Figura 36 – Folha de propriedades da caixa de texto do campo pronum 
 
 
Figura 37 – Folha de propriedades do subformulário man 2: coleta de cotações 
Para fazer os ajustes no formulário (Figura 38) siga os seguinte passos: 
 Selecionar o formulário man 2: coleta de cotações (formulário) e acionar o 
botão Modo Design. 
 Abaixar e/ou reduzir o rodapé. 
 Aumentar a área do subformulário. 
 Remover o rótulo que identifica o subformulário. 
 No formulário não precisamos definir as propriedades Ativado e Bloqueado 
dos campos infnum e infnom, pois simplesmente definimos as três propriedades 
do formulário Permitir edições, Permitir exclusões e Permitir adições como 
sendo Não como mostra a Figura 39. Ao impedir edições no formulário 
estamos impedindo qualquer alteração em seus campos. Para abrir a janela de 
 29
Folha de Propriedades do formulário dê duplo clique na área azul claro à direita 
ou abaixo da linha do rodapé (vide Figura 38). 
 
 
 
 
Figura 38 - Janela de estrutura do formulário man 2: coleta de cotações 
 
 
Figura 39 – Folha de propriedades do formulário man 2: coleta de cotações 
 
Deve ficar claro que esse formulário/subformulário deve ser usado para digitação após ter 
sido executada a consulta que prepara cadfor. Isto significa que a coluna forpre2 do 
subformulário deve aparecer zerada pronta para receber os novos valores (vide Figura 34). 
 
área azul claro 
 30
Gerar o relatório para coleta de cotações 
Este relatório constitui o formulário em papel que o coletor de preços levará consigo para 
coletar os preços nos informantes. Observe na Figura 40 que para cada informante são 
relacionados os produtos cujos preços precisam ser coletados. 
Se no relatório constasse apenas os números dos informantes e os números dos produtos 
então ele podia ser gerado a partir da tabela cadfor. Entretanto, no relatório devem constar 
os nomes dos informantes e os nomes dos produtos para que o coletor possa identificá-los. 
Dessa forma temos que gerar o relatório a partir da consulta man3: coleta de cotações que 
associa cadfor com cadinf e cadpro recuperando todas as informações necessárias ao 
relatório. 
Para gerar a primeira versão do relatório siga os passos indicados abaixo. Como você irá 
perceber o relatório gerado não apresenta um layout bonito e vários ajustes terão que ser 
feitos no seu modo estrutura conforme descrito mais adiante. 
1. Selecione a opção Criar/Assistente de Relatório. 
2. Escolha a consulta man 3: coleta de cotações 
3. O Assistente vai exibir seis caixas de diálogo comentadas a seguir: 
 Que campos você deseja no relatório? 
todos (botão >>) 
 Como você deseja exibir seus dados? 
cadinf 
 Deseja adicionar algum nível de agrupamento? 
nenhum (não há totalização) 
 Que ordem de classificação e resumo informativo você deseja para os registros 
de detalhe? 
classificação: pronum 
resumos: nenhum 
 Como se deseja ordenar o relatório? 
por nível 
 Que estilo você deseja? 
Selecione um estilo. 
 Que título você deseja para o seu relatório? 
Coleta de Cotações 
 31
 
Figura 40 – Relatório Coleta de Cotações 
 
Não se preocupe com o fato do assistente gerador de relatórios gerar o relatório com duascolunas de preços. Em princípio a segunda coluna deverá estar com todos os preços zerados 
se a consulta prepara cadfor já tiver sido executada. O assistente gera as duas colunas de 
preços pois ele inclui no relatório todos os campos da consulta. Manualmente no modo 
estrutura do relatório iremos alterar a caixa de texto que apresenta o preço forpre2 (vide 
Figura 40). 
Assim, o relatório gerado vai necessitar alguns ajustes que deverão ser feitos em modo 
estrutura. 
Os passos que seguem vão auxiliar nessa tarefa: 
 Apague o rótulo infnum e pronum. 
 com o rótulo selecionado (deve estar marcada) vamos redefinir a 
propriedade Legenda como Espaço em branco, isto é , sem legenda, e a 
propriedade Cor do fundo como Branco. 
 Troque infnom pela palavra Informante e pronom pela palavra Produto. 
 com o rótulo selecionado (deve estar marcada) vamos redefinir a 
propriedade Legenda com novo nome (Informante e Produto). 
 Da mesma forma troque as palavras forpre1 e forpre2 por preço anterior e 
preço atual respectivamente. 
 Reduza a extensão do relatório à direita. Para isso todas as caixas de texto e 
caixas de rótulo deverão ser reduzidas mais para esquerda abrindo espaço para 
reduzir a largura do relatório. 
 32
 Altere a caixa de texto forpre2. 
 com a caixa de texto selecionada (deve estar marcada) vamos redefinir na 
propriedade Formato a cor associada ao valor zero como sendo Branco em 
vez de Vermelho, a propriedade Largura da borda como Fio e Cor da 
borda como Preto. Isto faz aparecer a borda que aparece na Figura 40.

Outros materiais