Buscar

656 1328 1 SM

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

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

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ê viu 3, do total de 104 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

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

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ê viu 6, do total de 104 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

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

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ê viu 9, do total de 104 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

Prévia do material em texto

UNIVERSIDADE DO PLANALTO CATARINENSE 
DEPARTAMENTO DE CIÊNCIAS EXATAS E TECNOLÓGICAS 
CURSO DE INFORMÁTICA 
(BACHARELADO) 
 
 
 
 
 
 
SISTEMA INFORMATIZADO PARA CONTROLE DE FARMÁCIAS 
 
 
 
 
 
 
 
 
JEFFERSON OLIVEIRA VIEIRA 
 
 
 
 
 
 
LAGES, NOVEMBRO DE 2003. 
UNIVERSIDADE DO PLANALTO CATARINENSE 
DEPARTAMENTO DE CIÊNCIAS EXATAS E TECNOLÓGICAS 
CURSO DE INFORMÁTICA 
(BACHARELADO) 
 
 
 
 
 
 
 
 
SISTEMA INFORMATIZADO PARA CONTROLE DE FARMÁCIAS 
 
Relatório do Trabalho de Conclusão de 
Curso submetido à Universidade do 
Planalto Catarinense para obtenção dos 
créditos de disciplina com nome 
equivalente no curso de Informática - 
Bacharelado. 
 
JEFFERSON OLIVEIRA VIEIRA 
 
Orientador: Prof. Douglas Nazareno 
Debiazi Vargas, M. Sc. 
 
 
 
 
 
LAGES, NOVEMBRO DE 2003
SISTEMA INFORMATIZADO PARA CONTROLE DE FARMÁCIAS 
 
JEFFERSON OLIVEIRA VIEIRA 
 
ESTE RELATÓRIO, DO TRABALHO DE CONCLUSÃO DE CURSO, FOI 
JULGADO ADEQUADO PARA OBTENÇÃO DOS CRÉDITOS DA 
DISCIPLINA DE TRABALHO DE CONCLUSÃO DE CURSO DO VIII 
SEMESTRE, OBRIGATÓRIA PARA OBTENÇÃO DO TÍTULO DE: 
 
BACHAREL EM INFORMÁTICA 
 
 
 
Prof. Douglas Debiazi Nazareno Vargas, M.Sc. 
Orientador 
 
 
BANCA EXAMINADORA: 
 
 
 
Prof. Alexandre Perin De Souza, M.Sc. 
UNIPLAC 
Prof. Edson Roberto de Souza Paes, M.Sc. 
UNIPLAC 
 
 
 
Prof. Angelo Augusto Frozza, Esp. 
Supervisor de TCC 
Prof. Alexandre Perin de Souza, M.Sc. 
Coordenador de Curso 
 
 
 
 
 
Lages, 03 de dezembro de 2003 
 iv 
SUMÁRIO 
SUMÁRIO ................................................................................................................... IV 
LISTA DE ILUSTRAÇÕES ..................................................................................... VII 
LISTA DE SIGLAS .................................................................................................... IX 
RESUMO ....................................................................................................................... X 
ABSTRACT ................................................................................................................ XI 
1 INTRODUÇÃO ........................................................................................................... 1 
1.1 Apresentação ............................................................................................................. 1 
1.2 Definição do problema .............................................................................................. 2 
1.3 Justificativa ................................................................................................................ 3 
1.4 Objetivo geral ............................................................................................................ 4 
1.5 Objetivos específicos ................................................................................................... 5 
1.6 Metodologia ............................................................................................................... 5 
2 FUNDAMENTOS E PROJETO DE SISTEMAS ................................................................... 7 
2.1 Introdução à análise ................................................................................................... 7 
2.2 Sistemas automatizados ............................................................................................. 7 
2.3 A informação ............................................................................................................. 8 
2.4 Conceito de sistema ................................................................................................... 8 
2.4.1 Principais objetivos do sistema ......................................................................................... 9 
2.4.2 Ambiente dos sistemas.................................................................................................... 10 
2.4.3 Recursos utilizados pelo sistema .................................................................................... 10 
2.4.4 Controles do sistema ...................................................................................................... 10 
2.4.5 Sistema de informações .................................................................................................. 11 
2.5 Conclusão ................................................................................................................ 12 
3 CONCEITOS GERAIS DE BANCO DE DADOS ................................................................ 13 
3.1 Conceitos ................................................................................................................. 13 
3.2 Visões do banco de dados ........................................................................................ 13 
3.3 Vantagens do banco de dados em relação à arquitetura tradicional ........................ 15 
3.3.2 Vantagens do banco de dados ........................................................................................ 15 
3.4 Normalização de dados ............................................................................................ 17 
3.4.1 Primeira forma normal (1FN) ......................................................................................... 18 
3.4.2 Segunda forma normal (2FN).......................................................................................... 18 
3.4.3 Terceira forma normal (3FN).......................................................................................... 18 
 v 
3.5 Modelo de entidade e relacionamento ..................................................................... 18 
3.5.1 Cardinalidade de relacionamentos ................................................................................. 20 
3.5.2 Atributos do relacionamento ........................................................................................... 22 
3.5.3 Grau do relacionamento .................................................................................................. 23 
3.5.4 Relacionamento binário .................................................................................................. 23 
3.5.5 Relacionamento ternário ................................................................................................. 23 
3.6 O banco de dados Interbase .................................................................................... 24 
3.7 A ferramenta IBConsole .......................................................................................... 26 
3.4 Conclusão ............................................................................................................... 27 
4 PROJETO DO SISTEMA ............................................................................................... 28 
4.1 Introdução ................................................................................................................ 28 
4.2 Descrição do problema ............................................................................................ 28 
4.3 Engenharia de requisitos .......................................................................................... 28 
4.3.1 Atores ............................................................................................................................... 28 
4.4 Diagrama de Use-Case ............................................................................................ 29 
4.4.1 Cadastro .......................................................................................................................... 30 
4.4.2 Entradas ..........................................................................................................................33 
4.4.3 Relatórios ........................................................................................................................ 33 
4.4.4 Atualização ...................................................................................................................... 36 
4.4.5 Vendas ............................................................................................................................. 36 
4.4.6 Contas .............................................................................................................................. 38 
4.4.7 Caixa ................................................................................................................................ 39 
4.4.8 Manutenção ..................................................................................................................... 40 
4.5 Diagrama entidade relacionamento ......................................................................... 42 
4.6 Conclusão ................................................................................................................ 43 
5 SISTEMA INFORMATIZADO PARA FARMÁCIA ........................................................... 44 
5.1 Criação do banco de dados ...................................................................................... 44 
5.1.1 Criação de domínio ......................................................................................................... 45 
5.1.2 Criação de tabelas ........................................................................................................... 45 
5.1.3 Criação de generator ...................................................................................................... 46 
5.1.4 Criação de trigger ........................................................................................................... 46 
5.1.5 Criação de índices ........................................................................................................... 46 
5.2 Desenvolvimento da aplicação ................................................................................ 47 
5.2.1 Implementação do projeto ............................................................................................... 47 
5.2.2 Data module .................................................................................................................... 48 
5.2.3 Tela de cadastro .............................................................................................................. 49 
5.2.4 Especificação de hardware ............................................................................................. 60 
5.3 Conclusão ................................................................................................................ 60 
6 FUNCIONALIDADES DO SISTEMA ............................................................................... 61 
6.1 Cadastros ................................................................................................................. 61 
6.2 Entradas ................................................................................................................... 62 
6.3 Lançamento de receitas em caixa ............................................................................ 63 
6.4 Contas a pagar ......................................................................................................... 63 
6.4.1 Lançamento ..................................................................................................................... 63 
6.4.2 Pagamentos ..................................................................................................................... 64 
6.5 Vendas ..................................................................................................................... 64 
 vi 
6.6 Contas à receber....................................................................................................... 66 
6.6.1 Recebimentos crediário ................................................................................................... 66 
6.6.2 Recebimentos convênio.................................................................................................... 67 
6.7 Relatórios ................................................................................................................. 67 
6.7.1 Relatório contas à pagar ................................................................................................. 68 
6.7.2 Relatório de faltas ........................................................................................................... 68 
6.7.3 Relatório de produtos ...................................................................................................... 69 
6.7.4 Relatório de vendas ......................................................................................................... 69 
6.7.5 Relatório clientes ............................................................................................................. 70 
6.8 Atualização .............................................................................................................. 71 
6.9 Caixa ........................................................................................................................ 71 
6.10 Conclusão .............................................................................................................. 72 
7 CONSIDERAÇÕES FINAIS ............................................................................................ 73 
REFERÊNCIAS BIBLIOGRÁFICA......................................................................... 77 
APÊNDICES ................................................................................................................ 78 
APÊNDICE DOMÍNIOS ............................................................................................ 79 
APÊNDICE TABELAS ............................................................................................... 80 
APÉNDICE GENERATOR ....................................................................................... 87 
APÊNDICE TRIGGER .............................................................................................. 88 
APÊNDICE INDEX .................................................................................................... 92 
ANEXO A ..................................................................................................................... 93 
 
 vii 
LISTA DE ILUSTRAÇÕES 
FIGURA 1 - Representação gráfica de entidade ................................................... 19 
FIGURA 2 - Representação gráfica de atributos .................................................. 19 
FIGURA 3 - Representação gráfica de relacionamento ........................................ 20 
FIGURA 4 - Representação de ligação aluno e disciplina .................................... 20 
FIGURA 5 - Representação gráfica ligação homem e mulher ............................. 21 
FIGURA 6 - Representação gráfica de empregados e departamentos .................. 21 
FIGURA 7 - Representação de ligação aluno e disciplina .................................... 22 
FIGURA 8 - Representação atributos e relacionamentos ..................................... 22 
FIGURA 9 - Representação de relacionamento binário ....................................... 23 
FIGURA 10 - Representação de relacionamento ternário (1) ................................. 23 
FIGURA 11 - Representação de relacionamento ternário (2) ................................. 24 
FIGURA 12 - Representação de relacionamento ternário (3) ................................. 24 
FIGURA 13 - Ferramenta IBConsole...................................................................... 26 
FIGURA 14 - Use-Case do Sistema .......................................................................29 
FIGURA 15 - Use-Case Cadastro ........................................................................... 30 
FIGURA 16 - Use-Case Entradas ........................................................................... 33 
FIGURA 17 - Use-Case Relatórios ......................................................................... 34 
FIGURA 18 - Use-Case Atualização ...................................................................... 36 
FIGURA 19 - Use-Case Vendas ............................................................................. 37 
FIGURA 20 - Use-Case Contas a pagar e receber .................................................. 38 
FIGURA 21 - Use-Case Caixa ................................................................................ 40 
FIGURA 22 - Use-Case Manutenção ..................................................................... 41 
FIGURA 23 - Diagrama Entidade Relacionamento ................................................ 42 
FIGURA 24 - Ambiente Delphi 6 inÍcio do projeto ............................................... 47 
FIGURA 25 - Data Module .................................................................................... 48 
FIGURA 26 - Ambiente de cadastro do sistema ..................................................... 49 
FIGURA 27 - Representação do DBGrid ............................................................... 52 
FIGURA 28 - Representação do Qreport ............................................................... 52 
FIGURA 29 - Cadastros do sistema ........................................................................ 61 
FIGURA 30 - Entrada de mercadorias do sistema .................................................. 62 
FIGURA 31 - Entrada de receita do sistema ........................................................... 63 
FIGURA 32 - Lançamento de contas a pagar ......................................................... 63 
FIGURA 33 - Pagamentos de contas ...................................................................... 64 
FIGURA 34 - Formulário de vendas ....................................................................... 65 
 viii 
FIGURA 35 - Formulário fechamento de vendas ................................................... 65 
FIGURA 36 - Contas receber crediário................................................................... 66 
FIGURA 37 - Contas receber convênio .................................................................. 67 
FIGURA 38 - Relatório de contas a pagar .............................................................. 68 
FIGURA 39 - Gerar relatório de faltas.................................................................... 68 
FIGURA 40 - Relatório de faltas ............................................................................ 69 
FIGURA 41 - Relatório de produtos ....................................................................... 69 
FIGURA 42 - Relatório de vendas .......................................................................... 70 
FIGURA 43 - Relatório de compras cliente ............................................................ 70 
FIGURA 44 - Formulário de atualização ................................................................ 71 
FIGURA 45 - Formulário de caixa ......................................................................... 72 
QUADRO 1 - Visões de banco de dados ................................................................ 14 
QUADRO 2 - Criação do banco de dados .............................................................. 45 
QUADRO 3 - Criação de domínios......................................................................... 45 
QUADRO 4 - Criação de tabelas ............................................................................ 45 
QUADRO 5 - Criação de generator ........................................................................ 46 
QUADRO 6 - Criação de trigger ............................................................................. 46 
QUADRO 7 - Criação de index ............................................................................... 47 
QUADRO 8 - Código de inserção de dados ............................................................ 50 
QUADRO 9 - Código de alteração de dados .......................................................... 51 
QUADRO 10 - Código de exclusão de dados ........................................................... 52 
QUADRO 11 - Código de pesquisa .......................................................................... 52 
QUADRO 12 - Código de entrada ............................................................................ 54 
QUADRO 13 - Código de saídas .............................................................................. 54 
QUADRO 14 - Código do caixa ............................................................................... 55 
QUADRO 15 - Código contas a pagar ...................................................................... 56 
QUADRO 16 - Código lançamento de contas a pagar .............................................. 56 
QUADRO 17 - Código contas a receber ................................................................... 57 
QUADRO 18 - Código da atualização ...................................................................... 57 
QUADRO 19 - Código de manutenção de valores ................................................... 59 
QUADRO 20 - Código de manutenção de quantidades ............................................ 60 
 ix 
LISTA DE SIGLAS 
CPD -Central de processamento digital 
CPU -Unidade central de processamento 
DCB -Denominação comum brasileira 
DEC -Digital equipament corporation 
DFD -Diagrama de fluxo de dados 
DDL -Linguagem de definição de dados 
DML -Linguagem de manipulação dos dados 
ER -Entidade relacionamento 
FN -Forma normal 
MER -Modelo entidade relacionamento 
SGDB -Sistema de gerenciamento de banco de dados 
SGDBR -Sistema de gerenciamento de banco de dados relacional 
SQL -Strucured query linguage 
 x 
RESUMO 
Este trabalho tem como objetivo mostrar a importância de um sistema informatizado 
para o ramo farmacêutico: realizando estudos, aplicando metodologias e 
implementando um sistema, através do qual, seja possível controlar algumas das 
particularidades de um sistema para farmácias tais como: preços tabelados, 
denominação comum brasileira, grupo de medicamentos (éticos, similares, portarias, 
perfumarias e outros). A falta de um gerenciamento administrativo pode causar vários 
problemas para uma empresa nesse ramo, problemas esses que dificultam a realização 
de tarefas básicas dentro de uma farmácia. Baseado em informações obtidas junto a 
estabelecimentos do ramo farmacêutico, pôde-se observar que na ausência de um 
sistema de gerenciamento de informações há uma dificuldade de manter em dia tarefas 
essenciais para o cotidiano da empresa. Com o uso de um sistema informatizado estas 
tarefas podem ser mais facilmente controladas. Com as informações obtidas junto às 
farmácias, foram efetuados diversos passos para atingir o objetivo. Inicialmente foi 
feita análise do sistema (fazendo a análise de requisitos e diagramas, utilizando 
ferramentas UML), com isto foram definidos as tabelas e seus atributos. A seguir foi 
criado o banco de dados, realizando a análise das informações que o banco de dados 
vai armazenar, e definindo o SGBD como sendo o Interbase 6.0. Após ter feito a 
análise de dados e criado o banco de dados foi utilizado do ambiente de programação 
Delphi 6 para implementação do sistema. Através deste sistema, pode-se ter acesso a 
diversas operações realizadas dentro do estabelecimento, facilitando o controle, 
oferecendo maior precisão dando aos usuários a praticidade de ter informaçõesatualizadas no sistema. 
 
 
Palavras-chave: Desenvolvimento de sistemas; Sistema de gerenciamento; Banco de 
Dados; Farmácias; 
 xi 
ABSTRACT 
The main goal of this project is to show the importance of a computer system 
in the druggist branch: performing studies, applying methodologies and implementing 
a system through which it becomes possible to control some peculiarities of a 
drugstore system, such as: control of prices, Brazilian common denomination, group of 
medicines (ethic, similar, governmental decrees, perfumery and other aspects). The 
lack of administrative management may cause several problems to a company in this 
field, such problems may make it difficult to perform some basic tasks in a drugstore. 
Based on information acquired from druggist establishments, we can notice that the 
lack of an information management system causes some difficulties in keeping up 
essential tasks in the company’s everyday. With the use of a computer system, these 
tasks can be more easily controlled. From the information obtained, several steps were 
followed to achieve the goal. First, the system was analyzed (performing the analysis 
of requirements and diagrams, using UML tools), then, tables and attributes were 
defined. Afterwards, the database was created, performing the analysis of information 
that will be stored, and defining the Interbase 6.0 as the database management system 
(DBMS). After the system analysis and the creation of a database, the Delphi 6 
programming environment was used to implement the system. Through this computer 
system for drugstores, we can access several operations performed inside the 
establishment, facilitating the control, offering more accuracy and providing the users 
the easiness of having updated information in the system. 
 
 
Key Words: Development of system; Management System; Database; Pharmacy. 
 
 
 
1 INTRODUÇÃO 
1.1 Apresentação 
O surgimento de novos produtos, mercadorias e legislações contribuem para 
mudanças no dia-a-dia de todos. Estas alterações de cotidiano afetam os mais 
diferentes tipos de pessoas e profissionais, principalmente os comerciantes, pois eles 
trabalham com a compra e venda de produtos e devem estar sempre preparados para os 
acontecimentos que ocorrem ao longo dos anos. 
Após um longo período de altos índices de inflação, troca de moeda e 
constantes remarcações de valores, os comerciantes acostumaram-se a fazer suas 
atualizações de preço com menor freqüência, por causa da estabilidade da econômia. 
Esta estabilização fez com que os valores das mercadorias fossem 
atualizados com um intervalo maior de tempo. Nesta época o comerciante poderia 
esperar um representante do fornecedor para obter uma nova listagem de preços, com a 
qual uma ou mais pessoas poderiam conferir, produto por produto, para atualizar seu 
novo preço de venda. 
Como se nota hoje neste período a realidade é que as mercadorias são 
reajustadas mês a mês e é preciso de agilidade e bom atendimento, o que pode ser 
conquistado com o uso da informática, utilizando as tecnologias de informações. 
Um programa de computador traz mais facilidade em efetuar varias tarefas 
em muitas áreas de uma empresa. E o trabalho dos profissionais ficam mais rápidos e 
confiáveis. 
A empresa pode estar perdendo dinheiro se não tiver um atendimento com 
 2 
 
rapidez e qualidade nos serviços. Com a informática pode-se ter estes benefícios, pois 
esta tem ganhado um mercado cada vez maior, garantindo praticidade e a agilidade do 
trabalho, tanto em empresas de pequeno porte quanto em empresa de grande porte. 
Assim, a informática tem capacidade de permitir a automatização de um 
serviço completo e confiável em qualquer área de comércio. Todo este controle tem 
como objetivo o maior lucro possível nas vendas, visando o crescimento e organização 
da empresa como um todo. 
1.2 Definição do problema 
O ramo farmacêutico tem um diferencial em relação a outros ramos de 
comércio, pois tem três grupos distintos de mercado, para os quais existe um 
tratamento diferenciado. 
Existe o um tipo de grupo de mercadorias que é formado por produtos 
controlados, os quais devem estar sempre atualizados com a tabela fornecida aos 
fabricantes pelo Governo Federal, uma vez que não pode haver diferença de preços 
nestes medicamentos ou mercadorias. 
Existe outro grupo de mercadorias em que somente o valor de custo é 
monitorado, sendo assim, o valor de venda é liberado a critério do estabelecimento. 
Há, ainda, o grupo no qual os valores de custo e venda são liberados. Estes 
produtos são comercializados com os preços livres: o valor de compra de determinado 
fornecedor adicionado da margem de lucro estipulada pelo estabelecimento, resulta no 
valor de venda final do produto. 
Com esta diferenciação de grupos faz com que os controles de entradas, de 
saída, de estoque e de preço, se tornem complexos para os proprietários do ramo 
farmacêutico. 
Com as constantes variações de preços que ocorrem devido à falta de 
estabilidade econômica, todo o ramo de comércio tem dificuldades de manter 
atualizados os preços das mercadorias. Estas atualizações normalmente são feitas 
manualmente, o que demanda um tempo muito grande para o término do serviço. 
 3 
 
Além do tempo necessário para executar o processo de atualização nos 
produtos existentes em um comércio, precisa-se, também, de mais pessoas trabalhando 
nesta função. Este tipo de atualização, ainda assim, pode ter na maioria das empresas 
uma grande margem de erro, decorrente do trabalho manual feito por diferentes 
funcionários. Isto pode acarretar custos para a empresa, com a venda de produtos com 
preços desatualizados. 
As empresas estão cada vez mais em busca da perfeição dos serviços 
prestados e na comodidade, tanto para os seus clientes como para a própria empresa. 
Mas, esta perfeição ou comodidade muitas vezes é quebrada na hora da contagem e 
manutenção do estoque, dificuldade esta que os proprietários de estabelecimentos 
comerciais quase nunca sabem ao certo o que se têm em estoque, o que está faltando, o 
que teve saída em um dia de trabalho. No momento de fazer um pedido precisam 
verificar de prateleira em prateleira para saber os produtos que devem ser repostos. 
Este trabalho de controle de estoque é o modelo de trabalho de um estabelecimento 
sem a tecnologia da informática. 
1.3 Justificativa 
A rotina de trabalho no controle do movimento de estoque, de caixa, de 
funcionários em uma empresa de comércio é feita com muitos papéis, etiquetas e 
digitação. 
É certo que, para o proprietário de um comércio que não tem um sistema de 
gerenciamento, fica mais complicado obter o controle das movimentações de um dia 
de trabalho. Além destes problemas, a atualização dos valores das mercadorias quando 
acontece um reajuste, demanda muito trabalho por ser uma tarefa manual. 
Tendo em vista estas dificuldades é que foi idealizado este trabalho, através 
do qual pretende-se facilitar o dia-a-dia de um comerciário, permitindo que ele tenha 
mais controle dos produtos vendidos dentro do seu estabelecimento. 
A informática apresenta-se como uma fiel parceira, que pode ajudar os 
empresários em vários setores, tanto do comércio como da indústria. Ela pode dar mais 
 4 
 
tranqüilidade para controlar o estoque e a empresa como um todo. 
Num comércio, há muitas mercadorias que não podem estar faltando, por 
este motivo deve-se ter um controle de estoque mais eficiente. 
Os valores devem estar sempre atualizados conforme a tabela fornecida pelo 
Governo Federal e, sem o auxílio de um computador, esta tarefa torna-se mais difícil. 
O controle não atesta somentea quantidade de itens existentes no estoque de 
uma empresa de comércio, mas envolve controle de caixa, de estoque, de entradas e de 
saídas de mercadorias e a atualização de preços. 
Voltado para o ramo farmacêutico, este trabalho pretende facilitar a 
manutenção de estoque dentro de uma farmácia ou drogaria. O objetivo é criar um 
sistema para gerenciamento ou controle do estoque, controle de entradas e saídas, 
controle de contas, controle de pedidos, suporte a vendas e também a atualizar 
automaticamente os preços das mercadorias com o distribuidor que a empresa preferir, 
dispensando o trabalho manual. 
Com o sistema proposto, o proprietário ou pessoa autorizada poderá 
conectar-se ao distribuidor que escolher e fazer a atualização de preços. 
1.4 Objetivo geral 
Este trabalho tem por objetivo fornecer para o proprietário de um ramo de 
comércio farmacêutico um melhor gerenciamento sobre o controle de estoque, 
controle financeiro, suporte a vendas e as compras e atualização de preços dos 
produtos, através de um sistema informatizado. 
O sistema tem a finalidade de facilitar o gerenciamento de uma farmácia, 
tendo em vista que uma das principais dificuldades existente neste ramo no momento 
de reajuste das mercadorias. 
Sabendo-se que a aleração de preços dos produtos depende esforço físico e 
tempo de serviço, o sistema oferece a opção de atualizar os valores dos produtos 
através de uma conexão direta com o fornecedor, permitindo assim a alteração 
automática. 
 5 
 
Este método de atualização de preços dos produtos traz uma facilidade para o 
gerenciamento do ramo de comércio, dispensando gastos com funcionários que fazem 
esta atualização. 
1.5 Objetivo específico 
Dentro do objetivo geral, podem-se destacar os seguintes objetivos 
específicos: 
a) Facilitar o dia-a-dia do proprietário de um ramo de comércio com uma 
maneira mais prática de controle de estoque; 
b) Atualizar os dados do estoque, por meio de conexão direta ou via 
arquivos enviados pelo fornecedor e manter assim seu estoque em dia 
com os seus respectivos valores legais; 
c) Controlar entrada e saída de mercadorias no estoque do estabelecimento, 
para saber os movimentos diários. 
1.6 Metodologia 
O trabalho foi desenvolvido observando as seguintes etapas: 
a) Pesquisa no ramo farmacêutico sobre as necessidades do mercado e 
banco de dados; 
b) Pesquisa nos fornecedores existentes para colher informações sobre 
layout de listas de preços; 
c) Pesquisa bibliográfica sobre os assuntos abordados no decorrer do 
trabalho; 
d) Comentário sobre redes de computadores, sistemas de bancos de dados, 
análise e projetos de sistemas; 
e) O projeto foi desenvolvido no ambiente de programação Delphi, pois ele 
suporta as tecnologias que serão utilizadas; 
f) Os testes foram realizados conforme o desenvolvimento do projeto; 
 6 
 
g) A validação do projeto foi realizada na etapa final, após serem realizados 
os testes necessários; 
h) A redação final do trabalho deu-se após a realização da validação; 
i) Foram utilizados para a realização do projeto recursos pessoais e alguns 
disponíveis pela UNIPLAC (Universidade do Planalto Catarinense); 
 7 
 
2 Fundamentos e projeto de sistemas 
Neste capitulo são abordados conceitos sobre sistemas automatizados, a 
informação, conceito, objetivos, ambiente, recursos e controles de sistema. 
2.1 Introdução à análise 
A análise de sistemas representa o estudo detalhado de uma área de trabalho ou 
processo, que acontece antes de uma ação que, quase sempre, implica no 
desenvolvimento de um conjunto de programas integrados, onde se forma um sistema 
destinado à execução controle e acompanhamento do processo. 
Processo: É uma série de acontecimentos sucessivos com uma relação de 
causa e efeito, por exemplo, em uma empresa tem uma série de causas e efeitos, 
matérias primas, recursos humanos, tecnologia etc, que geram um efeito (PERES, 
1994). 
Programa: Escrito em códigos que em conjunto formam uma serie de ações 
que manipulam as informações e executam tarefas (PERES, 1994). 
2.2 Sistemas automatizados 
Os sistemas automatizados, são compostos por vários componentes: 
 Hardware de computadores: Estes são CPUs (computadores que 
processam informações), processadores, terminais, impressoras, unidades 
de fita magnéticas etc., que auxiliam na execução do sistema de 
computador (KUGLER,1990). 
 8 
 
 Pessoas: Aquelas que operam o sistema, que fornecem as entradas e 
utilizam as saídas e as que desempenham atividades de processamento 
manual em um sistema, para que ocorra tudo muito certo na execução do 
programa (KUGLER,1990). 
 Dados: São informações armazenadas em um hardware, as quais o 
sistema conserva por um período de tempo, fazendo com estes vários 
procedimentos, determinações e instruções formais para a operação do 
sistema de computador específico (PERES, 1994). 
2.3 A informação 
A princípio, as informações, de uma maneira geral, eram manipuladas com o 
uso do computador sem a preocupação de haver ou não redundâncias das informações. 
Por isso, era comum nas empresas existirem diversos arquivos com informações 
repetidas, o que dificultava a sua atualização. 
O que ocorria nas informações de grande parte das empresas, era transferir 
transações manuais para os computadores, sem se preocupar com a verificação e 
administração das informações. 
Entretanto, com a nova idéia empresarial baseada na performance dos 
processos administrativos e produtivos, bem como na qualidade dos serviços 
executados, as atividades relacionadas a processamento de dados, ou melhor o 
gerenciamento de informações, está ganhando seu espaço merecido. 
As informações mais confiáveis e rápidas servem para tomadas de decisões a 
todo instante nas empresas de uma forma geral. Com isso, o computador tornou-se 
uma ferramenta muito importante. 
Portanto, atualmente é impossível imaginar o crescimento ou a 
automatização de qualquer organização sem a presença de um computador. 
 
2.4 Conceito de sistema 
 9 
 
É muito comum se ouvir as expressões: sistema respiratório, sistema 
circulatório, sistemas de navegação e, mais especificamente nas empresas, sistema de 
folha de pagamento, sistema de contas a receber, sistemas de contabilidade, sistemas 
de planejamento de produção, entre outros. 
Os sistemas de computadores são construídos e administrados pelo homem, 
objetivando sempre um fim específico que normalmente está explícito em seu próprio 
nome. 
Segundo KUGLER (1990), para se ter uma idéia do que é um sistema, 
imaginando-se um conjunto de órgãos que operam de forma conjunta e coordenada. 
Por outro lado podemos imaginar um sistema de processamento de dados 
que de suporte à gerência do departamento de folha de pagamento de uma empresa. 
Fazendo todos os cálculos necessários, emitindo demonstrativos individuais de 
pagamento de funcionários, relatórios analíticos de todos os funcionários, relatórios 
gerenciais de uma forma geral, além de consultas nível de tela. 
Entretanto, pode-se definir sistema como um conjunto de partes que 
interagem, visando um objetivo especifico. Em processamento de dados pode-se 
conceituar sistema como sendo um conjunto de programas e rotinas de computação, 
que operam de forma conjunta realizando um objetivo especifico. 
2.4.1 Principais objetivos do sistema 
Existem casos em que a diretoria das empresas fixam os objetivos a serem 
alcançados, inclusive as diretrizes a serem seguidas, mas por um motivo ou outro 
muda todo o percurso procurando-se não prejudicar a organização. 
Portanto, para se avaliar os objetivos de um sistema é indispensável que se 
convivacom os problemas e soluções diárias naquele ambiente de trabalho. 
Com estes exemplos, conclui-se que o analista que é interessado em avaliar 
um determinado sistema, deve começar obtendo informações verbais, registrando-as e, 
após suas considerações, fazer as devidas confrontações com o que na prática 
acontece. 
 10 
 
2.4.2 Ambiente dos sistemas 
Quando se fala em um ambiente de sistemas, imagina-se uma sala com um 
monte de computadores, impressoras, todas as ferramentas de um CPD. Na verdade, o 
ambiente de sistemas é constituído por uma infinidade de fatores, inclusive os citados, 
que influenciam de forma direta ou indireta no funcionamento de um determinado 
sistema, podendo estes fatores serem internos ou externos ao sistema. 
Os fatores internos são aqueles que fazem parte do próprio sistema e os 
externos são os que, mesmo estando fora, influenciam na sua performance. 
Portanto, o ambiente de sistema é um conjunto de fatores que interferem 
direta ou indiretamente no seu funcionamento, estando dentro ou fora dele 
(POMPILHO, 1994). 
2.4.3 Recursos utilizados pelo sistema 
Para o desenvolvimento de um determinado software, bem como, para 
implementações de um sistema até sua colocação em funcionamento, sem sombra de 
dúvidas, é preciso recursos financeiros, computadores, pessoal especializado, 
formulários, salas e outros suprimentos em geral. 
Sem esses meios, é óbvio que o sistema não pode nem mesmo existir. 
Portanto, a esse conjunto de fatores, chama-se de recursos utilizados pelo sistema 
(POMPILHO, 1994). 
2.4.4 Controles do sistema 
Em todo e qualquer sistema, para que as informações geradas tenham um 
certo grau de confiabilidade, devem ser definidos controles para entradas de dados. É 
claro que se os dados de entradas estão corretos, as informações de saída devem ser 
corretas. 
Portanto, é indispensável que se faça consistência dos dados de entrada, isto 
é, que se determine parâmetros para validar os dados de entrada. Por exemplo, se o 
sistema permite a entrada de dados em branco, datas inválidas, valores inconsistentes, 
 11 
 
pode-se imaginar o que irá obter-se de informações de saída, certamente informações 
erradas.. 
Diante dessas situações, torna-se indispensável uma profunda análise de 
dados de entrada para garantir informações de saída corretas. 
2.4.5 Sistema de informações 
Em toda e qualquer organização empresarial, seus administradores 
necessitam tomar decisões a todo instante dependendo de cada situação existente e, é 
claro, baseado em informações que chegam às suas mãos. 
Normalmente, essas informações são coletadas através de diversos meios, 
variando pouco de empresa para empresa. Os meios mais comuns para essas operações 
são: 
 Comunicações internas; 
 Cartas; 
 Relatórios; 
 Terminais eletrônicos e outros. 
Evidentemente, é imprescindível que tais informações mereçam uma grande 
confiabilidade, caso contrário perde totalmente o seu sentido. É melhor não ter 
informações do que tê-las de forma incorreta ou desatualizada (KUGLER,1990). 
Se imaginar os danos que podem causar uma informação incorreta ou 
atrasada, conclui-se qual a sua importância para a organização. 
Os sistemas de informações de toda e qualquer organização são 
importantíssimos, inclusive para sua própria sobrevivência, e podem ser conceituados 
como sendo um conjunto de fatores coordenados que geram informações de qualquer 
natureza e com alguma finalidade prática. 
As informações, de uma forma geral, podem ser classificadas de acordo com 
a sua origem em internas ou externas. 
As informações internas são aquelas geradas dentro da própria empresa, no 
seu dia-a-dia, e as externas são as que vêm de fora da organização, como por exemplo, 
extratos bancários, correspondências de clientes, órgãos públicos e outras 
 12 
 
(DEMARCO, 1989). 
2.5 Conclusão 
Neste capítulo foram abordados sistemas automatizados, conceitos, 
objetivos, controles de ambiente e recursos dos sistemas, sistemas de informações e o 
papel do analista de sistema, que é o solucionador dos problemas que venham a 
ocorrer no sistema. Estes nos trazem as informações que foram essenciais para a 
implementação deste projeto, como por exemplo os dados que o sistema proposto vai 
trabalhar. 
 13 
 
3 Conceitos gerais de banco de dados 
Este capítulo aborda conceitos de banco de dados, tipos de visões, 
linguagens, vantagens e desvantagens, normalização de banco de dados, diagramas de 
entidade e relacionamento, diagrama de fluxo de dados e componentes do mesmo. 
3.1 Conceitos 
Um sistema de banco de dados é, basicamente, um sistema computadorizado 
de armazenamento de dados e registros. É um sistema computadorizado, cujo intuito é 
armazenar informações e permitir ao usuário buscar e atualizar estas informações 
quando necessário ou solicitado. 
Dado - É o valor do campo quando é armazenado no Banco de Dados. Por 
exemplo: O valor do campo "nome do cliente" para quem está fazendo a entrada de 
dados (FERREIRA, 2001). 
Banco de dados - Representa o arquivo físico de dados, armazenado em 
dispositivos periféricos, onde estão gravados os dados de diversos sistemas, para 
consulta e atualização pelo usuário (FERREIRA, 2001). 
Tabelas lógicas - Representam as estruturas de armazenamento de dados 
(arquivos) dos sistemas (FERREIRA, 2001). 
3.2 Visões do banco de dados 
Os bancos de dados podem ser vistos a partir de diferentes tipos de visões: 
 Visão Interna - É aquela vista pelo responsável pela manutenção e 
 14 
 
desenvolvimento do SGBD (Sistema de gerenciamento de banco De 
dados). Existe a preocupação com a forma de recuperação e manipulação 
dos dados dentro do banco de dados. 
 
 Visão Conceitual - É a visão do analista de desenvolvimento e do 
administrador das bases de dados. Existe a preocupação na definição de 
normas e procedimentos para manipulação dos dados, para garantir a sua 
segurança e confiabilidade, o desenvolvimento de sistemas e programas 
aplicativos e a definição, no banco de dados, de novos arquivos e campos. 
Na visão conceitual, existem 2 (duas) linguagens de operação que são: 
Linguagem de definição dos dados (DDL) - Linguagem que define as 
aplicações, arquivos e campos que irão compor o banco de dados 
(comandos de criação e atualização da estrutura dos campos dos 
arquivos); 
Linguagem de manipulação dos dados (DML) - Linguagem que define os 
comandos de manipulação e operação dos dados (comandos de consulta 
e atualização dos dados dos arquivos). 
Visão Externa - É a visão do usuário que opera os sistemas aplicativos, 
através de interfaces desenvolvidas pelo analista (programas), buscando o atendimento 
de suas necessidades. 
QUADRO 1: Visões de banco de dados 
UTILIZAÇÃO DAS APLICAÇÕES 
DESENVOLVIDAS 
VISÃO EXTERNA 
DESENVOLVIMENTO DE 
APLICAÇÕES 
UTILIZANDO RECURSOS DO 
S.G.B.D. 
VISÃO CONCEITUAL 
DESENVOLVIMENTO DO 
S.G.B.D. 
VISÃO INTERNA 
 
 
 15 
 
3.3 Vantagens do banco de dados em relação à arquitetura tradicional 
Sistema tradicional - São aqueles em que os dados do sistema estão 
armazenados fisicamente separados um do outro. O acesso é feito pelos programas de 
aplicação, associando o nome externo dos arquivos e definindo todo o registro 
independente da utilização dos campos. 
Sistema de banco de dados - É aquele em que os dados são definidos para o 
SGBD através da DDL (linguagem de definição de dados). Fisicamente estão 
armazenados em um único local, sendo o acesso realizado apenas através do SGBD. 
Nos programas de aplicação, é necessário apenas definir os campos que serão 
utilizados pelo programa. 
SGDB- É o software responsável pelo gerenciamento (armazenamento e 
recuperação) dos dados no Banco de Dados (FERREIRA, 2001). 
Modelo de banco de dados - Modelo Relacional, Modelo Hierárquico e 
Modelo em Rede. Representa a estrutura física no qual o armazenamento dos dados foi 
projetado. O modelo identifica a estrutura interna de recuperação e armazenamento 
dos dados no qual o SGBD foi projetado (FERREIRA, 2001). 
O banco de dados do sistema na qual está sendo desenvolvido foi projetado 
no modelo hierárquico. 
3.3.2 Vantagens do banco de dados 
Segundo FERREIRA (2001), entre as vantagens de se utilizar bancos de 
dados têm-se: 
a) Redução ou eliminação de redundâncias - Possibilita a eliminação de 
dados privativos de cada sistema. Os dados, que eventualmente são 
comuns a mais de um sistema, são compartilhados por eles, permitindo o 
acesso a uma única informação sendo consultada por vários sistemas. 
b) Eliminação de inconsistências - Através do armazenamento da 
informação em um único local com acesso descentralizado e, sendo 
compartilhada a vários sistemas, os usuários estarão utilizando uma 
 16 
 
informação confiável. A inconsistência ocorre quando um mesmo campo 
tem valores diferentes em sistemas diferentes. Exemplo, o estado civil de 
uma pessoa é solteiro em um sistema e casado em outro. Isto ocorre 
porque esta pessoa atualizou o campo em um sistema e não o atualizou 
em outro. Quando o dado é armazenado em um único local e 
compartilhado pelos sistemas, este problema não ocorre. 
c) Compartilhamento dos dados - Permite a utilização simultânea e segura 
de um dado por mais de uma aplicação ou usuário, independente da 
operação que esteja sendo realizada. Deve ser observado apenas o 
processo de atualização concorrente, para não gerar erros de 
processamento (atualizar simultaneamente o mesmo campo do mesmo 
registro). Os aplicativos são, por natureza, multi-usuário. 
d) Restrições de segurança - Define para cada usuário o nível de acesso a 
ele concedido (leitura e gravação ou sem acesso) ao arquivo e/ou campo. 
Este recurso impede que pessoas não autorizadas utilizem ou atualizem 
um determinado arquivo ou campo. 
e) Padronização dos dados - Permite que os campos armazenados na base 
de dados sejam padronizados segundo um determinado formato de 
armazenamento (padronização de tabela, conteúdo de campos etc.) e o 
nome de variáveis seguindo os critérios e os padrões pré-estabelecido 
pela empresa. Por exemplo: Para o campo "Sexo" somente será permitido 
armazenamento dos conteúdos "M" ou "F". 
f) Independência dos dados - Representa a forma física de armazenamento 
dos dados no banco de dados e a recuperação das informações pelos 
programas de aplicação. Esta recuperação deverá ser totalmente 
independente da maneira com que os dados estão fisicamente 
armazenados. Quando um programa retira ou inclui dados o SGBD 
compacta-os para que haja um menor consumo de espaço no disco. Este 
conhecimento do formato de armazenamento do campo é totalmente 
transparente para o usuário. A independência dos dados permite os 
 17 
 
seguintes recursos: 
 Os programas de aplicação definem apenas os campos que serão 
utilizados independente da estrutura interna dos arquivos 
 Quando há inclusão de novos campos no arquivo, será feita manutenção 
apenas nos programas que utilizam esses campos, não sendo necessário 
mexer nos demais programas. 
Observação: Nos sistemas tradicionais, este tipo de operação requer a 
alteração no layout de todos os programas do sistema que utilizam o arquivo. 
 
g) Manutenção da integridade - Consiste em impedir que um determinado 
código ou chave em uma tabela não tenha correspondência em outra 
tabela. Por exemplo: um código de uma determinada disciplina na tabela 
“Histórico Escolar” sem a sua descrição na tabela “Disciplina”. 
 
3.4 Normalização de dados 
A normalização dos dados consiste em definir o formato lógico adequado 
para as estruturas de dados identificados no projeto lógico do sistema, com o objetivo 
de minimizar o espaço utilizado pelos dados e garantir a integridade e confiabilidade 
das informações. 
A normalização é feita através da análise dos dados que compõem as 
estruturas, utilizando o conceito chamado "Formas Normais (FN)". As FN são 
conjuntos de restrições nos quais os dados devem satisfazê-las. Por exemplo, pode-se 
dizer que a estrutura está na primeira forma normal (1FN) se os dados que a compõem 
satisfizerem as restrições definidas para esta etapa. 
A normalização completa dos dados é feita seguindo as restrições das quatro 
formas normais existentes, sendo que a passagem de uma FN para outra é feita tendo 
como base o resultado obtido na etapa anterior, ou seja, na FN anterior. 
Para realizar a normalização dos dados é primordial que seja definido um 
 18 
 
campo chave para a estrutura, campo este que permite irá identificar os demais campos 
da estrutura. 
3.4.1 Primeira forma normal (1FN) 
Consiste em retirar da estrutura os elementos repetitivos, ou seja, aqueles 
dados que podem compor uma estrutura de vetor. Pode-se afirmar que uma estrutura 
está normalizada na 1FN se não possuir elementos repetitivos. 
3.4.2 Segunda forma normal (2FN) 
Consiste em retirar das estruturas que possuem chaves compostas (campo 
chave sendo formado por mais de um campo) os elementos que são funcionalmente 
dependentes de parte da chave. Pode-se afirmar que uma estrutura está na 2FN se ela 
estiver na 1FN e não possuir campos que são funcionalmente dependente de parte da 
chave. 
3.4.3 Terceira forma normal (3FN) 
Consiste em retirar das estruturas os campos que são funcionalmente 
dependentes de outros campos que não são chaves. Pode-se afirmar que uma estrutura 
está na 3FN se ela estiver na 2FN e não possuir campos dependentes de outros campos 
não chaves. 
Após a normalização, as estruturas dos dados estão projetadas para eliminar 
as inconsistências e redundâncias dos dados, eliminando, desta forma, qualquer 
problema de atualização e operacionalização do sistema. A versão final dos dados 
poderá sofrer alguma alteração, para atender às necessidades específicas do sistema, a 
critério do analista de desenvolvimento durante o projeto físico do sistema. 
3.5 Modelo de entidade e relacionamento 
O modelo de entidade de relacionamento (MER) consiste em mapear o 
 19 
 
mundo real do sistema em um modelo gráfico que irá representar o modelo e o 
relacionamento existente entre os dados. Na seqüência serão apresentados conceitos 
relacionados com o MER e suas formas de representação gráfica. 
Entidade - Identifica o objeto de interesse do sistema e tem "vida" própria, 
ou seja, a representação abstrata de um objeto do mundo real sobre o qual desejamos 
guardar informações como exemplo: Clientes, Fornecedores, Alunos, Funcionários, 
Departamentos etc. não são entidades: 
 Entidade com apenas um elemento; 
 Operações do sistema; 
 Saídas do sistema; 
 Pessoas que realizam trabalhos (usuários do sistema); 
 Cargos de direção 
 
 
Figura 1 : Representação gráfica de entidade 
 
Instância de Entidade - São os elementos da entidade, por exemplo: 
Cliente 10, Funcionário João, Aluno Pedro etc. 
Atributo - Informações que se deseja guardar sobre a instância de entidade, 
por exemplo: Nome do aluno, Número da turma, Endereço do fornecedor, Sexo do 
funcionário etc. 
 
 
 
Figura 2 : Representação gráfica de atributo 
 
Domínio do atributo - Universo de valores que um atributo pode armazenar, 
por exemplo: 
 Conjunto de valores do atributo sexo do funcionário: M ou F; 
 Conjunto de valores do atributo nome do aluno: 40 caracteresalfanumérico. 
 Conjunto de valores do atributo salário: inteiro maior que 5000 
 20 
 
Relacionamento - Representa a associação entre os elementos do conjunto de 
uma entidade com outra entidade. 
 
 
 
Figura 3 : Representação gráfica de relacionamento 
 
Conteúdo do campo - É o valor do campo armazenado no Banco de Dados. 
Ex. O valor do campo "nome do cliente" sem estar, momentaneamente, sendo 
utilizado (FERREIRA, 2001). 
Informação - É o valor que este campo representa para as atividades da 
empresa. Por exemplo, a resposta de uma consulta. Qual os nomes dos clientes 
localizados no Rio de Janeiro? (KUGLER, 1990). 
Um exemplo do modelo entidade relacionamento pode ser descrito como: 
O João está matriculado na disciplina de Banco de Dados 
Onde: 
João – É um elemento do conjunto de valores do atributo “Nome do aluno” 
da entidade “Aluno”; 
Banco de Dados – É um elemento do conjunto de valores do atributo “Nome 
da disciplina” da entidade “Disciplina”; 
Matriculado – É a ligação existente entre um aluno e uma disciplina. 
 
 
 
 
Figura 4 : Representação de ligação aluno e disciplina 
3.5.1 Cardinalidade de relacionamentos 
Representa a freqüência com que existe o relacionamento como por 
exemplo: 
MATRICULADO ALUNO DISCIPLINA 
 21 
 
 Relacionamento 1:1 - O João é casado com a Maria. 
Onde: 
João - Elemento do conjunto de valores do atributo Nome da entidade 
Homem; 
Maria - Elemento do conjunto de valores do atributo Nome da entidade 
Mulher; 
Casado - Ligação entre um homem e uma mulher, sendo que um homem 
pode ser casado com uma e apenas uma mulher, assim como uma mulher pode ser 
casada com um e apenas um homem. 
 
 
 
Figura 5 : Representação gráfica ligação homem e mulher 
 
 Relacionamento 1:N ou N:1 - O Pedro trabalha no Departamento 
Pessoal Onde: 
Pedro - Elemento do conjunto de valores do atributo Nome da entidade 
Funcionário. 
Departamento Pessoal - Elemento do conjunto de valores do atributo Nome 
do departamento da entidade Departamento. 
Trabalha - Ligação entre um Funcionário e um Departamento, onde um 
funcionário pode trabalhar em um e somente um departamento e um departamento 
pode ter vários funcionários. 
 
 
 
Figura 6 : Representação gráfica de empregados e departamento 
 
 Relacionamento N : M - O Antônio está matriculado na disciplina 
Banco de Dados Onde: 
Antônio - Elemento do conjunto de valores do atributo Nome da entidade 
N 1 
EMPREGADOS DEPARTAMENTO LOTAÇÃO 
HOMEM MULHER CASAMENTO 
1 1 
 22 
 
Aluno. 
Banco de Dados - Elemento do conjunto de valores do atributo Nome da 
Disciplina da entidade Disciplina. 
Matriculado - Ligação existente entre um aluno e uma disciplina, onde um 
aluno pode estar matriculado em várias disciplinas e cada disciplina pode ter vários 
alunos matriculados. 
 
 
 
 
Figura 7 : Representação de ligação aluno e disciplina 
3.5.2 Atributos do relacionamento 
Quando um determinado relacionamento possui atributos, também é 
conhecido como relacionamento valorado. Esta situação ocorre apenas em 
relacionamentos N : M. 
Por exemplo: Pedro trabalha no projeto Alfa 30 horas. 
Pedro - Elemento do conjunto de valores do atributo Nome da entidade 
Funcionário. 
Alfa - Elemento do conjunto de valores do atributo Nome do Projeto da 
entidade Projeto. 
Trabalha - Ligação existente entre um funcionário e um projeto. Neste caso, 
este funcionário trabalha 30 horas neste projeto, porém, este mesmo funcionário 
poderá trabalhar outro número de horas em outro projeto, assim como outro 
funcionário trabalha outro número de horas no mesmo projeto Alfa. Pode-se concluir 
que ás 30 horas é o atributo que pertence a Pedro no projeto Alfa. 
 
 
 
 Figura 8 : Representação atributos de relacionamento 
 TRABALHA FUNCIONÁRIO PROJETO 
N M 
HORAS 
 
DISCIPLINA 
 
ALUNOS 
MATRICULADO
. 
N M 
 23 
 
3.5.3 Grau do relacionamento 
Indica o número de entidade que se relacionam. 
3.5.4 Relacionamento binário 
Quando existe o relacionamento entre apenas duas entidades. 
Exemplo: Um fornecedor comercializa materiais que são utilizados em 
diversos projetos. 
 
 
 
 
 
 
 
Figura 9 : Representação de relacionamento binário 
3.5.5 Relacionamento ternário 
Quando existe o relacionamento entre três entidades. 
Exemplo: Um fornecedor comercializa materiais que são utilizados em 
projetos específicos. 
 
 
 
 
 
Figura 10 : Representação de relacionamento ternário (1) 
 
Exemplos de Relacionamento: 
O Professor Alberto leciona Estrutura de Dados e o aluno Pedro cursa 
Linguagem de Programação 
FORNECEDORES MATERIAIS 
PROJETOS 
UTILIZADO 1 N 
N 
COMERCIALIZA 
UTILIZAM 
FORNECEDOR MATERIAIS 
 
PROJETOS 
 
N M 
M 
N 
 24 
 
 
 
 
 
 
Figura 11 : Representação de relacionamento ternário (2) 
 
Pedro comprou 1 Kg. de banana do vendedor Manoel 
 
 
 
 
 
Figura 12 : Representação de relacionamento ternário (3) 
 
Observação: Para que haja uma venda, tem que haver um cliente, um produto 
e um vendedor. 
3.6 O banco de dados Interbase 
O Interbase é um SGBDR (Sistema Gerenciador de Banco de Dados 
Relacional) e foi desenvolvido para ser um banco de dados independente de sistema 
operacional e plataforma. 
Segundo RODRIGUES (2003), o Interbase foi desenvolvido no ano de 1985 
por engenheiros da DEC (Digital Equipament Corporation), onde era chamado de 
Groton. 
A partir de 1986 passou a ser chamado de Interbase inicialmente na versão 2.0., 
com o desafio de tornar–se um SGBDR que incorporasse os benefícios inexistentes 
nos concorrentes da época (RODRIGUES, 2003). 
A Borland na versão 6 do Interbase resolveu adotar uma estratégia para 
aumentar a popularidade do seu produto. Ela tornou o seu produto de “Código Aberto” 
LECIONA 
CURSA 
PROFESSOR DISCIPLINA 
ALUNO 
N M 
N 
M 
1 
VENDA 
CLIENTES PRODUTOS 
VENDEDORES 
1 
N 
 25 
 
(Open Source), ou seja, na versão 6 o Interbase passou a fornecer licenças de 
utilização e distribuição de graça, free (RODRIGUES, 2003), pela Internet. Com o 
Interbase sendo um produto gratuito os desenvolvedores de sistemas passam a contar 
com um banco de dados, segundo RODRIGUES (2003) “poderoso, eficiente e seguro 
e seu cliente não vai precisar pagar nada a mais por isso”. 
Certamente, o fator custo é uma das grandes vantagens do Interbase em relação 
aos seus concorrentes, além disso, o Interbase possuí as seguintes características: 
a) Muti-plataformas: O Interbase é compatível com a maioria das plataformas e 
sistemas operacionais existentes, dentre eles os principais são: Windows 9x, 
Windows NT, Linux, Solaris (RODRIGUES, 2003). 
b) Gerenciamento de Transações: Uma transação ou um conjunto de transações é 
um grupo de operações que geralmente numa situação de falhas deve se realizar 
por completo (sucesso) ou não se realizar (insucesso), no banco de dados 
(SILVA, 2000, p. 4). O Interbase gerencia essas transações permitindo que 
aplicações-clientes iniciem diversas transações simultâneas (SILVA, 2000, p. 
4); 
c) Acesso Multi-usuário: O Interbase dá suporte à execução de diversas aplicações 
clientes em acessos de forma simultânea em um mesmo banco de dados 
(SILVA, 2000, p. 3). Essas mesmas aplicações podem ter acesso a vários 
bancos de dados ao mesmo tempo; 
d) Nível de Bloqueio: Quando dois ou mais usuários tentam atualizar ou acessar a 
mesma faixa de dados podem surgir problemas ameaçando a integridade do 
banco de dados. Em sistemas multi-usuárioesse tipo de problema é freqüente e 
chamado de concorrência (SILVA, 2000, p. 4). Existem duas estratégias 
atualmente para solucionar o problema da concorrência, são as estratégias de 
“bloqueio pessimista” e de “bloqueio otimista”. A estratégia de “bloqueio 
pessimista” é utilizada geralmente em bancos de dados locais como o Paradox 
(SILVA, 2000, p. 4). Já a estratégia de “bloqueio otimista” é utilizada pela 
maioria dos servidores SQL (Structured Query Language), inclusive o 
Interbase. 
 26 
 
 
 
3.7 A ferramenta IBConsole 
 A ferramenta IBConsole é uma interface que foi desenvolvida em Delphi 6.0 e 
que agrupa duas interfaces que se destacaram em versões anteriores do Interbase, são 
ela: 
Interbase Server Manager e Interbase Interactive SQL (SILVA, 2000, p. 14). 
 A IBConsole, segundo SILVA (2000, p. 14), apresenta as seguintes 
características: 
a) Administrar a segurança do servidor; 
b) Fazer backup de bancos de dados e restaurar backups; 
c) Analisar estatísticas sobre servidores e bancos de dados; 
d) Verificar a integridade dos bancos de dados. 
Na figura 13 é mostrada a tela principal do IBConsole. 
 
 
 Figura 13 : Ferramenta IBConsole 
 27 
 
3.4 Conclusão 
Como se pode ver neste capítulo, a implementação de um banco de dados é 
necessário para que se tenha uma maior integridade do sistema. Com o auxílio de um 
sistema de gerenciamento de banco de dados (SGDB) pode-se ter melhor controle das 
informações contidas no banco de dados. Com o gerenciamento dos dados pode-se 
fazer as operações (seleção, exclusão, gatilhos e outros), com maior confiança de que 
está tratando o dado correto. 
 28 
 
4 PROJETO DO SISTEMA 
4.1 Introdução 
Neste capítulo é descrita a modelagem de um sistema de gerenciamento para 
farmácias, onde são mostrados todos os passos utilizados para a implementação do 
sistema de gerenciamento, engenharia de requisitos, atores, diagrama de Use-Case e 
diagrama de entidade relacionamento, fazendo a descrição dos mesmos e o projeto de 
banco de dados. 
4.2 Descrição do problema 
Esta modelagem, foi feita com base nos problemas que ocorrem em 
estabelecimentos de farmácias, nos quais todas as ações efetuadas ainda são manuais 
como mostrado no anexo A. Levando em consideração este tipo de acontecimento é 
que foi projetado este sistema, tendo como principal fator um controle mais eficiente 
de um estabelecimento do ramo de farmácia. 
4.3 Engenharia de requisitos 
4.3.1 Atores 
Foram definidos dois atores que terão ação neste projeto, os atores são: o ator 
gerente, com acesso a todas as funções do sistema, e o ator usuários, com as suas 
 29 
 
permições mostradas na figura 15 mostrada abaixo. 
4.4 Diagrama de Use-Case 
Feitos com base nas informações obtidas em estabelecimentos de farmácia, 
os diagramas de Use-Cases mostram como é utilizado o sistema de informatização de 
farmácia. Para que fosse possível visualizar a atividades que ocorrem no dia-a-dia na 
farmácia, foi utilizado uma ferramenta de Use-Case o (Rational Rose Demo 4). A 
demonstração das tarefas do sistema mostrada na figura 14. 
 
 
Cadastros 
Entradas 
Relatórios 
Atualização 
Vendas 
Usuário 
Manutenção 
Contas 
Gerente 
Caixa 
 
Figura 14 : Use-Case do Sistema 
 
O Use-Case vizualizado na figura 14, mostra os atores e suas atividades 
realizadas durante o dia-a-dia em uma farmácia. Este sistema possui dois tipos de 
usuários, sendo eles o gerente, com acesso a todos os benefícios do sistema, e o 
 30 
 
usuário simples, ou funcionário, que tem acesso somente em alguns recursos do 
sistema. 
Os casos citados na figura 14, sendo eles cadastros, entradas, caixa etc. 
Todos estes casos tem as suas expanções e suas funções especificas como mostra os 
Use-Cases abaixo relacionados. 
4.4.1 Cadastro 
Conforme apresentado no Use-Case da figura 15, o gerente e o usuário 
podem fazer cadastros dentro do sistema, mostrado nos fluxos abaixo a descrição de 
seu funcionamento. 
 
 
Fornecedores 
Clientes 
Produtos 
Funcionarios 
Empresas 
Laboratório 
Codigo DCB 
Taxa Juros 
Forma Pgto 
Senhas 
Grupo Clientes 
Codigo Barrras 
Codigo No Fornecedor 
Grupo Clientes 
Gerente 
Usuário 
Cadastro 
Cad Fornecedor 
Cad Clientes 
Cad Funcionarios 
Cad Empresa 
Cad Laboratorio 
Cad Cod DCB 
Cad Tx Juros 
Cad Forma Pgto 
Cad Senhas 
Cad Grupo Med 
Cad Cod Barras 
Cad Cod Fornecedor 
M 
M 
M 
Cad Grupo Clientes 
Cad Produtos 
 
Figura 15 : Use-Case do Cadastro 
 31 
 
 
Fluxo Principal: O sistema em sua tela principal apresenta um menu de 
cadastro, neste menu o usuário pode fazer qualquer cadastro que ali estiver. 
Fluxo Alternativo: Cadastro de Produtos 
Após a escolha da opção por cadastro de produtos o sistema abrirá uma tela, 
onde o usuário pode cadastrar qualquer produto, sendo alguns campos de 
preenchimento obrigatórios para o sucesso do cadastro. 
Fluxo Alternativo: Cadastro de Clientes 
Após a escolha da opção por cadastro de clientes o sistema abrirá uma tela 
onde o usuário preencherá os campos em branco e quando todos campos estiverem 
preenchidos gravará os dados do referido cliente, sendo que o mesmo poderá ser de 
qualquer grupo de clientes. 
Fluxo Alternativo: Cadastro de Fornecedores 
Após a escolha da opção por cadastro de fornecedores o sistema abrirá uma 
tela onde o usuário preencherá os campos em branco, e quando todos os campos 
estiverem preenchidos o usuário gravará os dados do referido fornecedor. 
Fluxo Alternativo: Cadastro de Funcionários 
Após a escolha da opção por cadastro de funcionários o sistema abrirá uma 
tela onde o usuário preencherá os campos em branco, e quando todos campos 
estiverem preenchidos o usuário gravará os dados do referido funcionário. 
Fluxo Alternativo: Cadastro de Empresas 
Após a escolha da opção por cadastro de empresas o sistema abrirá uma tela 
onde o usuário preencherá os campos em branco, e quando todos campos estiverem 
preenchidos o usuário gravará os dados da referida empresa. 
Fluxo Alternativo: Cadastro de Laboratório 
Após a escolha da opção por cadastro de laboratório o sistema abrirá uma 
tela onde o usuário preencherá o campo em branco, e quando o campo estiver 
preenchido o usuário gravará os dados do referido laboratório. 
Fluxo Alternativo: Cadastro de Código DCB 
Após a escolha da opção por cadastro de Código DCB o sistema abrirá uma 
 32 
 
tela onde o usuário preencherá o campo em branco, e quando o campo estiver 
preenchido o usuário gravará o Código DCB. 
Fluxo Alternativo: Cadastro de Taxa de Juros 
Após a escolha da opção por cadastro de taxa de juros o sistema abrirá uma 
tela onde o usuário preencherá os campos em branco e, quando todos campos 
estiverem preenchidos, o usuário gravará os dados da taxa de juros. 
Fluxo Alternativo: Cadastro de Forma de Pagamento 
Após a escolha da opção por cadastro de forma de pagamento o sistema 
abrirá uma tela onde o usuário preencherá os campos em branco e, quando todos 
campos estiverem preenchidos, o usuário gravará os dados da forma de pagamento. 
Fluxo Alternativo: Cadastro de Senhas 
Após a escolha da opção por cadastro de Senhas o sistema abrirá uma tela 
onde o usuário preencherá os campos em branco e, quando todos campos estiverem 
preenchidos, o usuário gravará a senha pessoal. 
Fluxo Alternativo: Cadastro de Grupo de Clientes 
Após a escolha da opção por cadastro de grupo de clientes o sistema abrirá 
uma tela onde o usuário preencherá o campo em branco e, quando o campo estiver 
preenchidos, o usuário gravará o grupo. 
FluxoAlternativo: Cadastro de Grupo de Medicamentos 
Após a escolha da opção por cadastro de grupo de medicamentos o sistema 
abrirá uma tela onde o usuário preencherá o campo em branco e, quando o campo 
estiver preenchidos, o usuário gravará o grupo. 
Fluxo Alternativo: Cadastro de Código de Barras 
Após a escolha da opção por cadastro de código de barras o sistema abrirá 
uma tela onde o usuário preencherá os campos em branco e, quando os campos 
estiverem preenchidos, o usuário gravará o código de barras do referido produto, sendo 
que um produto pode ter mais de um código de barras cadastrados. 
Fluxo Alternativo: Cadastro de Código do Produto no Fornecedor 
 Após a escolha da opção por cadastro de Código do Produto no Fornecedor 
o sistema abrirá uma tela onde o usuário preencherá os campos em branco e, quando 
 33 
 
os campos estiverem preenchidos, o usuário gravará o código do produto no 
fornecedor referido de onde foi adquirido o produto. 
4.4.2 Entradas 
Conforme apresentado no Use-Case da figura 16, o gerente e usuário podem 
lançar as entradas dentro do sistema. Segue abaixo a descrição de seu funcionamento. 
 
Gerente
Usuário
Mercadorias
Entradas
Compra
Receitas
Entrada de valores
 
Figura 16 : Use-Case de Entradas 
 
Fluxo Principal: O sistema apresenta na sua tela principal um menu onde tem a 
opção de entradas, neste o usuário tem a possibilidade de dar entrada de mercadorias 
(quantidade) e valores extras em caixa. 
Fluxo Alternativo: Entrada de Mercadorias 
Após o usuário ter a opção de entrada de mercadorias, o sistema apresenta uma 
tela onde o usuário vai digitar o código do fornecedor, número da nota fiscal de 
entrada, valor de ICMS, valor do repasse e valores extras da nota, a partir de então o 
usuário começa a inserir ítens na nota de entrada digitando o código do produto no 
fornecedor. 
Fluxo Alternativo: Entrada de Receita 
Após o usuário escolher a opção de entrada de receitas o usuário vai inserir 
valores extras no caixa, precisando também apresentar um motivo para efetuar a 
referida entrada. 
4.4.3 Relatórios 
 34 
 
Conforme apresentado no Use-Case da figura 17, o gerente e usuário podem 
emitir os relatórios do sistema. A descrição de seu funcionamento é apresentada a 
seguir. 
Usuário
Gerente
Contas Pagar
Mercadorias em Faltas
Produtos
Vendas
Clientes
Inandiplentes
Extrato Crediario
Extrato Convênio
Compras
Relatórios
Extrato Compra
Extrato Convenio
Extrato Crediario
Inandiplentes
Clientes
Vendas
ProdutosFaltas
Dividas
 
Figura 17 : Use-Case Relatórios 
 
Fluxo Principal: Relatórios 
O sistema apresentará na tela principal e nele um menu de opções contendo a 
opção de relatórios, nesta opção de menu existem as opções de relatórios de contas a 
pagar, mercadorias em falta, produtos, vendas, clientes, inadimplentes, extrato de 
crediário e extrato de convênio. 
Fluxo Alternativo: Contas a Pagar 
Escolhendo esta opção de relatório, o usuário, vai visualizar uma tela, na qual 
terá que entrar com a data inicial e data final do período em que ele quer saber o 
quanto está devendo e vai ter o resultado em uma grade na tela. 
Fluxo Alternativo: Mercadorias em Falta 
Escolhendo esta opção de relatório, o usuário, vai visualizar uma tela, na qual 
terá que entrar com os códigos dos grupos, os quais ele quer saber os medicamentos 
que estão faltando no estoque, ou seja, todos os produtos em que o estoque estiver 
menos que o estoque mínimo. 
 35 
 
Fluxo Alternativo: Estoque 
Escolhendo esta opção de relatório, o usuário, vai visualizar uma tela, na qual 
terá que entrar com o código do grupo de produtos em que ele quer ter acesso listando 
o que tem em estoque e que estão ativos. Se o usuário digitar o código igual a ‘0’ 
(zero), o sistema vai dar o entender que o usuário quer visualizar todos os grupos, 
sendo assim será visualizado em uma grade com todos os produtos. 
Fluxo Alternativo: Vendas 
Escolhendo esta opção de relatório, o usuário, vai visualizar uma tela, na qual 
terá que entrar com a data do dia em que quer saber as vendas. Após ter escolhido a 
data, o usuário visualizará na tela todas as vendas realizadas no dia selecionado. 
Fluxo Alternativo: Inadimplentes 
Escolhendo esta opção de relatório, o usuário, vai visualizar uma tela, onde terá 
o nome dos clientes que tem suas compras com a data de vencimento em atraso. 
Fluxo Alternativo: Extrato de Crediário 
Escolhendo esta opção de relatório, o usuário, vai visualizar uma tela, na qual 
terá que entrar com a data inicial e data final do período em que ele quer saber o 
quanto o cliente está devendo, e também as compras efetuadas pelo cliente neste 
período de tempo selecionado, o resultado será ilustrado em uma grade na tela. 
Fluxo Alternativo: Extrato de Convênio 
Escolhendo esta opção de relatório, o usuário, vai visualizar uma tela, na qual 
terá que entrar com o código da empresa conveniada e o código do cliente, sendo que 
se o usuário digitar o código ‘0’ (zero) no campo de código de cliente, o sistema vai 
entender que está se pedindo o extrato de todos os clientes da referida empresa, e o 
período em que quer visualizar os débitos dos referidos clientes da referida empresa, 
sendo assim vai ter o resultado na tela. 
Fluxo Alternativo: Compras 
Escolhendo esta opção de relatório, o usuário vai visualizar uma tela, na qual 
terá que entrar com o código do fornecedor e a data do período em que quer saber. 
Assim, vai ter na tela a relação de compras efetuadas no dado período com o total 
geral do referido fornecedor, tendo a opção de fazer o pagamento das compras feitas 
 36 
 
no referido período. 
4.4.4 Atualização 
Conforme apresentado no Use-Case da figura 18, o gerente e usuário podem 
fazer a atualização de preços do sistema. A descrição de seu funcionamento é a seguir 
apresentada. 
 
Atualizar Preço Usuário 
 
Figura 18 : Use-Case Atualização 
 
Fluxo Principal: Atualizar Preço 
O sistema apresentará na tela principal um menu de opções contendo a opção de 
atualização, nesta opção de menu existe a opção de atualizar, na qual o usuário vai 
digitar o código do fornecedor que ele quer atualizar os preços de seu estoque, e 
posteriormente o usuário vai digitar o código dos grupos que ele quer que atualize os 
preços. Após preenchidos os campos e presionando o botão de atualizar, o sistema vai 
realizar a atualização, e quando terminar o processo o sistema gera uma mensagem de 
atualização completa. 
4.4.5 Vendas 
Conforme apresentado no Use-Case da figura 19, o gerente e usuário podem 
fazer qualquer tipo de venda no sistema. A descrição de seu funcionamento é abaixo 
apresentada. 
 
 37 
 
Usuário
Avista
A Prazo
Convênio
Vendas
Vda Avista
Vda Prazo
Vda Convênio
 
Figura 19 : Use-Case Vendas 
 
Fluxo Principal: Vendas 
O sistema apresentará na tela principal e nele um menu de opções contendo a 
opção de vendas, nesta opção de menu existem as opções de vendas, e no fechamento 
de uma venda o usuário vai ter uma opção de venda a vista, venda a prazo e venda no 
convênio. 
Fluxo Alternativo: A vista 
Escolhendo esta opção no fechamento de uma venda o usuário vai digitar: o 
código do funcionário, código da venda (que será padrão o código número ‘1’), forma 
de pagamento, condição de pagamento, desconto, arredondamento, acréscimos (se 
houver) e o sistema vai mostrar o valor final da venda, tendo a opção de imprimir ou 
não imprimir. 
Fluxo Alternativo: A Prazo 
Escolhendo esta opção no fechamento de uma venda o usuário vai digitar o 
código do funcionário, código da venda (que

Outros materiais