Este é um post disponível para assinantes MVPou para quem possui Créditos DevMedia. Clique aqui para saber mais!
Artigo Clube Delphi Edição 5 - Sistema de Bibliotecas: Integridade e Relatório
Artigo da Revista Clube Delphi Edição 5.

Atenção: por essa edição ser muito antiga não há arquivo PDF para download. Os artigos dessa edição estão disponíveis somente através do formato HTML.
Curso
Sistema de Bibliotecas: Integridade e Relatório
Olá companheiro, estamos de volta com nosso pequeno sistema. Lembrando, todos os nossos cadastros e consultas estão concluídos. Durante nossa jornada, vimos os princípios básicos de construção de um sistema de controle de biblioteca e alguns recursos interessantes como transações, formulários modelo e consultas SQL. Como prometido, nossos próximos passos para conclusão são: o refinamento do controle de integridade dos dados do sistema e os relatórios. Para iniciarmos, vamos analisar as inconsciências do programa e tentar resolvê-las.
O Paradox, arquivo de dados utilizado em nossa aplicação, já possui o controle de integridade nas próprias definições das tabelas. No início da construção do sistema, não utilizamos estes controles integrados do Paradox, pois apresentam muitos problemas. Como já foi dito, estes funcionam muito bem quando tudo está ok, mas quando algum índice ou alguma tabela relacionada é corrompida, a manutenção torna-se uma tarefa muito mais complexa e demorada. Portanto, todos os nossos controles serão feitos manualmente.
Nota: Se estivéssemos utilizando uma base de dados como Oracle, MS SQL Server, MS Access, e outras, o uso do controle de integridades no próprio banco de dados seria o recomendado. Não é o nosso caso.
Fazendo o refinamento do controle de Integridade dos Dados
Neste ponto deveremos identificar as telas que estão com alguma inconsistência na integridade relacional, e corrigir o problema. A integridade relacional, ou integridade referencial, é a que garante que o “Modelo Relacional” de um banco de dados. Por exemplo, não poderia existir um empréstimo sem um cliente referente. Também não poderiam haver livros emprestados sem estarem relacionados a um empréstimo.
NOta: O caminho que estamos seguindo não é o modo correto de implementar e modelar um sistema real. Em uma situação de análise, todas as integridades e tabelas devem ser definidas antes da elaboração do sistema, e não após, como estamos fazendo. O único motivo de estarmos seguindo este caminho é o fato de este ser melhor para a didática.

Figura 1 – Estrutura da tabela de Emprestimos
Parte I – Cadastro de Leitores
Esta é para quem nos acompanhou desde o início: a tela de manutenção de leitores foi desenvolvida na primeira edição de nosso jornal. Na época, esta tela foi bem tratada, indicando ao usuário campos em branco ou campos digitados de forma incorreta.
Agora devemos garantir sua integridade não permitindo a exclusão de leitores que já tenham algum empréstimo efetuado. Para isto, primeiramente, deveremos criar um novo índice na tabela de empréstimos. Abra então o Database Desktop, clique no menu Tools | Utilities | Restructure, e em seguida selecione a tabela de empréstimos para que a estrutura da tabela seja exibida, conforme mostra a figura 1.
Escolha a opção Secondary Indexes no ComboBox à direita e clique no botão Add, para que a janela Add Index seja mostrada, conforme a figura 2.

Figura 2 – Secondary Indexes
Este é um post disponível para assinantes MVPou para quem possui Créditos DevMedia. Clique aqui para saber mais!




