Ficha prática nº 8. SGBD Microsoft SQL Server e projecto do Microsoft Access

Documentos relacionados
Ficha prática nº 3. SGBD Microsoft Access. Objectivo: Criação de queries e definição de controlo calculado

Ficha prática Introdução ao SGBD Microsoft Access

Consultas I Para que servem? Como funcionam Tipos de consulta Consultas Selecção Consultas parametrizadas Consultas Tabela de referência cruzada

MÓDULO 2 - INTRODUÇÃO AOS SISTEMAS DE GESTÃO DE BASES DE DADOS ACCESS

Modulo 2 Gestão de Base

INSTRUÇÃO 1 Crie uma nova Base de Dados na sua disquete cujo nome é Futebol.

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO SISTEMAS DE GESTÃO DE BASE DE DADOS FORMULÁRIOS

conteúdos. bases de dados, SGBD e aplicações. conceitos. modelo relacional (DER) conceitos

Informática II Cap. 5-2 Bases de Dados - MsAccess

Tarefa Orientada 8 Criação de tabelas

Gestão de Base de dados Formulários

Gestão de Base de dados Tabelas e Chaves

Tarefa Orientada 9 Base de Dados Pagamentos

Reconhecer alguns dos objectos VBA Automatizar bases de dados recorrendo à programação VBA e scripts SQL

Plano de Aula - Access cód Horas/Aula

Tarefa Orientada 11 Consultas de acção

Ficheiros de texto 1. Ficheiros de texto. 1. Implementar um programa que leia uma frase do teclado e a escreva num ficheiro.

PROGRAMAÇÃO ORIENTADA A OBJETOS. Aula 09a- Acessando os dados através JDBC

Plano de Aula - Access cód Horas/Aula

Introdução Capítulo 1: Um Olhar sobre as Funcionalidades e Interface do Microsoft Excel

Tutorial de Extensibilidade

Gestão de PADS -Sigarra GABINETE DE PROJETOS

Tarefa Orientada 7 Consultas de selecção

Introdução à Computação II (Noturno) BCC Unesp Rio Claro/SP 2015 em PDF via Moodle: Escolha apenas 5 exercícios para entrega Exercício 01 (Pilhas)

Base de dados: Encomendas

Tarefa Orientada 3 Aplic. Manutenção de Produtos Text Box

Módulo 2 Gestão de Base

Gestão de SHST. Manual do utilizador. - Versão 1 -

Tarefa Orientada 3 Criação de tabelas

As opções de menu Análise ABC e Plano Trabalhos saíram do menu Objectos e passaram para o menu Ferramentas.

Sistema de Gestão de Videoteca

O modelo relacional encontra-se padronizado pela indústria de informática. Ele é chamado de

Patrícia da Conceição. Holandina de Jesus Ana Martins

Consultas (Queries) ou Interrogações

Banco de Dados I Introdução SQL

Aplicações Informáticas e Sistemas de Exploração 11º ANO

UFCD 786 Instalação e configuração de sistemas de bases de dados

Revisão de Bancos de Dados

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO SISTEMAS DE GESTÃO DE BASE DE DADOS O MODELO RELACIONAL

SQL Básica DDL. Prof. Marcos A. Schreiner. 21 de outubro de Curso de Licenciatura em Computação

Sistemas de Informação e Bases de Dados 2012/2013. Modelo Relacional. Alberto Sardinha 2012 IST

NOÇÕES DE INFORMÁTICA ALISSON CLEITON MÓDULO VIII

Normalização de dados

Programação. Folha Prática 5. Lab. 5. Departamento de Informática Universidade da Beira Interior Portugal Copyright 2010 All rights reserved.

Access 2010 Plano de Aula - 24 Aulas (Aulas de 1 Hora).

Resumo do Módulo 2 Access

LÉO MATOS INFORMÁTICA

OranGest. Criar Artigos. Ficha Técnica Nº 10. Alameda Bonifácio Lázaro Lozano, 13, 1C Oeiras. T: W: magnisoft.pt.

Tarefa Orientada 4 Aplic. Manutenção de Produtos - ComboBox

Modelo Relacional. André Restivo. Faculdade de Engenharia da Universidade do Porto. February 24, 2012

ESCOLA SECUNDÁRIA MANUEL DA FONSECA, SANTIAGO DO CACÉM GRUPO DISICPLINAR - Informática ANO: 10º TICP ANO LECTIVO: 2008/2009 p.1/6

1- Indique se são verdadeiras (V) ou falsas (F) as seguintes afirmações, corrigindo as falsas.

Tabelas de dispersão/hash

Introdução às Bases de Dados

Benvindo ao Curso de Introdução ao Firebird com Ferramenta de Relatórios!

Access Prof. Ari Oliveira

Tabelas Dinâmicas Excel

Tecnologias da Informação e Comunicação. Sistemas de Gestão de Bases de Dados Microsoft Access. Aula 53, 54, 55 e 56

Introdução 20 Diagramas de fluxos de dados 20 O processo de elaboração de DFD 22 Regras práticas para a elaboração de DFD 24 Dicionário de dados 26

Importar e Exportar Dados

Sistemas de Gestão De Bases de Dados. Criação de Tabelas na vista estrutura. Módulo 2. A Professora: Vanda Pereira

SISTEMA DE GERENCIAMENTO DE BANCO DE DADOS - SGBD

MODELO RELACIONAL Prof.: Jacson Tiola Técnico em Redes de Computadores

A.M.U. Ação Primavera Como utilizar Módulo: UF24 Software aplicado à atividade comercial

Implementando classes em C# Curso Técnico Integrado em Informática Fundamentos de Programação

CONVERSOR SAGE RETAIL/GESTÃO COMERCIAL

!" # Modelos de dados. 1ª geração. 2ª geração. 3ª geração. Modelo Hierárquico Modelo Rede. Modelo Relacional

Manual do Utilizador

Caderno de Introdução Bases Dados

Diagramas de Use Case

Deverá ser apresentada uma caixa de combinação para auxiliar o utilizador a escolher o distrito de residência do entrevistado.

Ficha prática nº 7. SGBD Microsoft Access e SQL Server

Base de dados I. O que é? Para que serve? Vantagens básicas sobre os modelos tradicionais

Introdução... 1 I FUNCIONALIDADES BÁSICAS... 3

Definição do esquema da base de dados. o esquema da BD é composto pelas definições de todas as tabelas da BD.

Integração por Web Services

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO SISTEMAS DE GESTÃO DE BASE DE DADOS CONCEITOS BÁSICOS

Teste Exemplo Revisão da tentativa 1

BANCO DE DADOS. Para a criação de um banco de dados, através de scripts SQL, deve-se usar a seguinte sintaxe: CREATE DATABASE <nome_banco_de_dados>

Bases de Dados. Apresentação da disciplina. Programa

PROCEDIMENTOS DE REQUISIÇÃO DE MATERIAL PARA OS LABORATÓRIOS DE ENFERMAGEM

Documento da versão. Novas Funcionalidades. Ecrã Principal. Ecrã Principal Preferências. Parametrização Trabalhos Séries OT

Transcrição:

Instituto Superior Politécnico de Viseu Escola Superior de Tecnologia Departamento de Informática Ficha prática nº 8 SGBD Microsoft SQL Server e projecto do Microsoft Access Objectivos: Continuação do desenvolvimento de uma aplicação em ambiente cliente servidor: Exploração de capacidades de ferramentas cliente (tratamento de eventos, utilização de recordsets e execução de operações de manipulação de registos via ADO); Utilização de procedimentos armazenados e triggers. I 1. Teste os diferentes tipos de (cursores de) recordsets, visualizando o conteúdo de um recordeset de cada tipo antes e depois de operações de alteração e inserção (ou remoção) de dados. Para tal crie o formulário apresentado na Figura 1. Figura 1- Formulário frm_teste_recordsets AJUDA: Com o intuito de analisar o efeito (se algum) de operações de manipulação de dados, no conteúdo do recordset, associe as seguintes acções a cada um dos botões da Figura 1: A1- Criação de recordset do tipo especificado, que selecciona os registos de uma tabela (e.g. N_ingrediente e Designação da tabela Ingredientes); A2- Visualização do conteúdo do recordset; A3 - Alteração de registo(s) da tabela utilizada em A1; A4- Nova visualização do conteúdo do recordset; A5 - Inserção de registo(s) na tabela utilizada em A1 e A3; A6 - Nova visualização do conteúdo do recordset; Para facilitar a implementação das acções anteriores, considere as seguintes sugestões: a) Crie o seguinte subprograma, a usar na implementação das acções A2, A4 e A5: Sub mostra (rst As Recordset) Descrição: Percorre os registos do recordset, guardando numa variável local do tipo string o conteúdo de cada registo, através de concatenações sucessivas; Recorra a espaços e mudanças de linha para tornar o conteúdo da variável local legível Escreve o conteúdo da variável local. Engenharia de Sistemas e Informática Sistemas de Informação e Bases de Dados 1

a) Crie dois subprogramas em VBA, altera e insere, a usar na implementação das acções A3 e A5. Utilize o método Execute do objecto Connection para realizar as operações de manipulação de registos destes subprogramas. Consulte a ajuda do Access para obter mais informação sobre este método. II 2. Para iniciar a implementação das operações de gestão de stocks, adicione ao formulário menup os controlos apresentados na Figura 2, utilizando os seguintes nomes: Grupo de opções og_stock; Botões: Cmd_consultar_c, Cmd_Editar_c, Cmd_inserir_c, cmd_reabast; Caixa de verificação cb_filtrar_c. Figura 2 - Formulário Menup 3- Crie os seguintes formulários: 3.1- Formulário frm_ing_forns e subformulário sub_ing_forns, de acordo com a Figura 3; 3.2- Formulário frm_fornecedores e subformulário sub_fornecedores, de acordo com a Figura 4 e Figura 5; (utilize este formulário para actualizar os dados da tabela Ing_forn de acordo com os valores das figuras). Figura 3 - Formulário frm_ing_forns Engenharia de Sistemas e Informática Sistemas de Informação e Bases de Dados 2

Figura 4 - Formulário frm_fornecedores (registo 1) Figura 5 - Formulário frm_fornecedores (registo 2) III 4. Implementação de reabastecimento automático. A finalidade da operação de reabastecimento automático consiste em inserir automaticamente encomendas, para os ingredientes que necessitam de ser reabastecidos. Antes de inserir uma encomenda, é ainda necessário analisar as encomendas existentes, para garantir que não se inserem múltiplas encomendas do mesmo ingrediente. Sem esta verificação, corre-se o risco de inserir encomendas duplicadas, quando se repete a execução desta operação. Engenharia de Sistemas e Informática Sistemas de Informação e Bases de Dados 3

6.1- Crie a tabela Encomendas de acordo com as características ilustradas na Tabela 1. Adicionalmente, os atributos N_ingrediente e N_forn formam (em conjunto) uma chave estrangeira para a tabela Ing_forn. Atributo Tipo de Dados Restrições de integridade Nencomenda N_ingrediente N_forn Estado Data Quantidade Quantidade_recebida Char(1) Datetime Float Float Chave primária Não nulo Não nulo Valor por defeito N e valores válidos [ N, P, R ] 1 Valor por defeito data corrente Valor por defeito 0 Tabela 1- Tabela Encomendas 4.2- Crie o formulário frm_encomendas, baseado na tabela Encomendas, utilizando um esquema de formulário em tabela; Figura 6 Formulário frm_encomendas 4.3- Elabore os seguintes subprogramas: Function obter_elemento_rst(rst As Recordset) - devolve o valor do primeiro campo do último registo do recordset rst ou 0 no caso de não existirem registos; Function obter_fornecedor_por_defeito(n_ing As Long) - devolve o código do fornecedor por defeito de um ingrediente (se este existir); Sub Insere_encomenda(N_ing As Long, N_forn As Long, quant_enc As Double) - obtém o próximo número sequencial de encomenda e insere uma nova encomenda na tabela encomendas. 4.4- Implemente gradualmente o código necessário para o tratamento do evento cmd_reabastecer_click(). Utilize os subprogramas anteriormente criados e tenha em consideração os seguintes requisitos: O reabastecimento automático só se aplica aos ingredientes que necessitam de ser reabastecidos; Consequentemente, o processo de reabastecimento só deve incluir os ingredientes cujas existências sejam <= que a quantidade_alerta; É necessário analisar as encomendas existentes, antes de inserir uma nova encomenda de um ingrediente a reabastecer; Deve verificar se a quantidade das encomendas em curso (que ainda não foram totalmente recebidas ou sem entregas) cobre as necessidades de reabastecimento do ingrediente; Em caso afirmativo, não deve inserir uma nova encomenda. Deve ainda supor que o valor da quantidade_recebida, das encomendas parcialmente recebidas, já foi anteriormente adicionado às existências; 1 N - Normal, R - (totalmente) Recebida e P - Parcialmente recebida (quando quantidade_recebida <quantidade). Engenharia de Sistemas e Informática Sistemas de Informação e Bases de Dados 4

Na inserção de uma encomenda deve utilizar o fornecedor por defeito e a quantidade_encomenda do ingrediente; Para terminar o processo de reabastecimento automático, deve mostrar os dados de todas as encomendas em curso ao utilizador, para que este possa alterar as novas encomendas (que entretanto gerou) e consultar as encomendas pendentes. 4.5- Substitua a invocação do subprograma Insere_encomenda (gerado no ponto 4.3) pela execução de um procedimento armazenado, sp_insere_encomenda, que realize as mesmas acções. IV 5. Actualização automática de entradas de ingredientes. A finalidade da operação de actualização automática de entradas de ingredientes consiste em facilitar o registo da recepção dos ingredientes encomendados, através das seguintes acções: preenchimento automático de alguns controlos do formulário de registo de entradas, validação de dados e actualização automática de atributos das tabelas ingredientes (e.g. existências) e encomendas (e.g. estado e quantidade_recebida). 5.1- Crie a tabela Entradas de acordo com as características ilustradas na Tabela 2. Atributo Tipo de Dados Restrições de integridade N_entrada N_encomenda Data Quantidade Datetime Float Chave primária Chave estrangeira da tabela Encomendas Valor por defeito data corrente Tabela 2- Tabela Entradas 5.2- Crie o formulário frm_entradas, baseado na tabela Entradas e no atributo N_ingrediente da tabela Encomendas. Utilize ainda um esquema de formulário em tabela 5.3- Dado o valor do número de encomenda, trate o evento N_encomenda_After_update, do controlo N_encomenda do formulário frm_entradas, preenchendo automaticamente o valor da quantidade (da entrada); O valor por defeito da quantidade será determinado com base em atributos da tabela encomendas, subtraindo a quantidade_recebida à quantidade (encomendada); 5.4- Valide o valor da quantidade introduzida no formulário frm_entradas, de modo a não permitir que seja definido um valor maior do que a quantidade que falta receber; 5.5- Trate o evento Form_AfterInsert, do formulário frm_entradas, através da actualização dos valores das tabelas ingredientes e encomendas; 5.6- Substitua o tratamento do evento anterior (Form_AfterInsert do formulário frm_entradas) por um trigger que realize as mesmas acções. Engenharia de Sistemas e Informática Sistemas de Informação e Bases de Dados 5

V 6. Gere o código necessário para implementar as seguintes acções: 6.1- Garantir que um ingrediente só possui um fornecedor utilizado por defeito: Cada ingrediente pode ser fornecido por vários fornecedores, mas só pode ter um fornecedor por defeito (Utilizado = true), para que as encomendas de ingredientes possam ser geradas automaticamente; Assim sendo, a selecção de um fornecedor a utilizar, através da caixa de verificação Utilizado, deve alterar o valor de Utilizado do fornecedor anterior para falso; (Sugestão: Para implementar esta acção mais facilmente, garantindo que um ingrediente só tem um fornecedor utilizado, só devem ser permitidas alterações do campo utilizado de falso para verdadeiro. Em caso contrário, o utilizador deve ser avisado e a alteração deve ser anulada. Esta acção deve ser implementada para os dois sub-formulários criados no ponto 3); 6.2- Garantir que um ingrediente tem sempre um fornecedor utilizado associado: Criar um botão Ver fornecedores no formulário frm_ingredientes, que abre o formulário frm_ing_forns, para visualização, alteração e definição dos fornecedores de um dado ingrediente; Forçar a definição de um fornecedor utilizado após criação de um novo ingrediente, através das acções e tratamento dos eventos convenientes. 7- Filtragem de registos da tabela ingredientes: 7.1- Crie o Formulário frm_filtro_ingredientes para especificação de critérios de filtragem de registos a apresentar no formulário frm_ingredientes; 7.2- Gere o código necessário para tratar a opção ingredientes, tendo em consideração que deve ser implementada executando as tarefas equivalentes às apresentadas na ficha nº6 para a tabela receitas; 8- Implemente a filtragem de registos do formulário frm_fornecedores através do formulário frm_filtro_fornecedores, de forma equivalente ao ponto 7. Engenharia de Sistemas e Informática Sistemas de Informação e Bases de Dados 6