Upload
trandat
View
212
Download
0
Embed Size (px)
Citation preview
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
CATARINENSE- CAMPUS AVANÇADO SOMBRIO
GUILHERME PEREIRA DE MORAES
RAFAEL DAMIANI ALVES
SISTEMA GERENCIADOR DE COMÉRCIO DE BEBIDAS
Sombrio (SC)
2014
GUILHERME PEREIRA DE MORAES
RAFAEL DAMIANI ALVES
SISTEMA GERENCIADOR DE COMÉRCIO DE BEBIDAS
Trabalho de Conclusão de Curso apresentado como
requisito para obtenção de título de Técnico em
Informática Integrado ao Ensino Médio, no Curso de
Técnico em Informática Integrado ao Ensino Médio,
do Instituto Federal de Educação, Ciência e
Tecnologia Catarinense – Campus Avançado
Sombrio.
Orientador Me Iuri Sônego Cardoso
Coorientadora Aline Valdati
Sombrio (SC)
2014
GUILHERME PEREIRA DE MORAES
RAFAEL DAMIANI ALVES
SISTEMA GERENCIADOR DE COMÉRCIO DE BEBIDAS
Esta produção Técnico-Científica foi julgada
adequada para obtenção do título de Técnico em
Informática e aprovada pelo curso de Técnico em
Informática integrado ao Ensino Médio do Instituto
Federal Catarinense - Campus Avançado Sombrio
Área de concentração: Desenvolvimento de
Software
Sombrio, 14 de dezembro de 2014.
Prof. Me. Iuri Sônego Cardoso
Instituto Federal Catarinense – Campus Sombrio
Orientador
Prof. Aline Valdati
Instituto Federal de Educação Ciência e Tecnologia
Catarinense – Campus Sombrio
Coorientadora
Prof. Me. Lucas Spillere Barchinski
Instituto Federal de Educação Ciência e Tecnologia
Catarinense – Campus Sombrio
Membro
AGRADECIMENTOS
Agradecemos primeiramente ao nosso professor orientador Iuri Sônego
Cardoso por ter nos auxiliado durante todo o trabalho. Agradecemos também a
todos nossos colegas, em especial ao Lucas dos Santos Lameira e Marco Antônio
Ferreira Pascoali, por terem nos ajudado na construção do nosso sistema e por ter
dado apoio nos momentos necessários. Agradecemos também as nossas famílias, e
por último, mas não menos especial ao Ramon William Tramontin.
RESUMO
O presente trabalho apresenta o desenvolvimento de um software que tem
como objetivo auxiliar o comércio de uma loja de bebidas. O projeto foi realizado
com base nas informações obtidas a partir da análise de requisitos feitos com o
dono da empresa. Além das funcionalidades essenciais para atender determinados
requisitos da empresa tais como cadastros, balanços financeiros, consultas,
compras e vendas, o programa também conta com um sistema de login e senha,
para restringir o acesso ao dono e seus funcionários. O projeto contempla a
descrição dos requisitos levantados, o modelo entidade-relacionamento, o modelo
relacional e as telas que compõem o software.
Palavras-Chave: Software, Sistema, Desenvolvimento.
ABSTRACT
This paper presents the development of software that aims to help trade in a
liquor store. The project was based on information obtained from the analysis of
requirements made with the owner of the company. In addition to the essential
features to meet specific business requirements such as records, financial
statements, queries, purchases and sales, the program also has a login and
password system to restrict access to the owner and their staff. The project includes
the description of the identified requirements, the entity-relationship model, the
relational model and the screens that make up the software.
Keywords: Software, System, Development.
LISTA DE SIGLAS
BD Banco de Dados DDL Data Defination Language (Linguagem de Definição de Dados) DER Diagrama Entidade-Relacionamento DML Data Manipulation Language (Linguagem de Manipulação de Dados) ER Entidade-Relacionamento SGBD Sistema Gerenciador de Banco de Dados SQL Structured Query Language (Linguagem de Consulta Estruturada) TCC Trabalho de Conclusão de Curso
LISTA DE ILUSTRAÇÕES
Ilustração 1: Exemplo de Algoritmo ........................................................................... 18
Ilustração 2: Exemplo de código Java ....................................................................... 20
Ilustração 3: Entidade ................................................................................................ 21
Ilustração 4: Relacionamento entre Entidade ............................................................ 22
Ilustração 5: Cardinalidades ...................................................................................... 23
Ilustração 6: Atributos ................................................................................................ 23
Ilustração 7: Tabela no modelo relacional ................................................................. 25
Ilustração 8: Utilização do comando CREATE .......................................................... 26
Ilustração 9: Modelo ER ............................................................................................ 31
Ilustração 10: Modelo Relacional .............................................................................. 32
Ilustração 11: cliente ................................................................................................. 33
Ilustração 12: venda .................................................................................................. 34
Ilustração 13: itemvenda ........................................................................................... 35
Ilustração 14: produto ................................................................................................ 36
Ilustração 15: itemcompra ......................................................................................... 36
Ilustração 16: compra ................................................................................................ 37
Ilustração 17: contaspagar ........................................................................................ 38
Ilustração 18: fornecedor ........................................................................................... 39
Ilustração 19: empréstimo ......................................................................................... 40
Ilustração 20: itemesmpréstimo ................................................................................. 41
Ilustração 21: produtoempréstimo ............................................................................. 41
Ilustração 22: contasreceber ..................................................................................... 42
Ilustração 23: login .................................................................................................... 43
Ilustração 24: Cadastro de usuário para login ........................................................... 45
Ilustração 25: Tela de login ....................................................................................... 46
Ilustração 26: Menu Inicial ......................................................................................... 47
Ilustração 27: Cadastro de Clientes .......................................................................... 48
Ilustração 28: Cadastro de Fornecedores ................................................................. 49
Ilustração 29: Cadastro de produtos para venda ....................................................... 50
Ilustração 30: Cadastro de produto para empréstimos .............................................. 51
Ilustração 31: Tela de Compra .................................................................................. 52
Ilustração 32: Seleção de produto pra compra .......................................................... 53
Ilustração 33: Seleção de fornecedor para compra ................................................... 54
Ilustração 34: Geração de parcelas da compra ......................................................... 55
Ilustração 35: Menu de Consultas ............................................................................. 56
Ilustração 36: Consulta de compras .......................................................................... 57
Ilustração 37: Consulta de fornecedores ................................................................... 57
Ilustração 38: Tela de Venda..................................................................................... 58
Ilustração 39: Seleção de cliente para venda ............................................................ 59
Ilustração 40: Seleção de produtos a serem vendidos .............................................. 59
Ilustração 41: Consulta de vendas ............................................................................ 60
Ilustração 42: Consulta de clientes ............................................................................ 61
Ilustração 43: Consulta de produtos em estoque ...................................................... 61
Ilustração 44: Tela de empréstimo ............................................................................ 62
Ilustração 45: Seleção de produto para empréstimo ................................................. 63
Ilustração 46: Consulta de empréstimos ................................................................... 64
Ilustração 47: Consulta de produtos para empréstimos ............................................ 64
Ilustração 48: Menu financeiro .................................................................................. 65
Ilustração 49: Tela de Contas a Receber .................................................................. 66
Ilustração 50: Consulta de contas a receber ............................................................. 67
Ilustração 51: Contas a pagar ................................................................................... 68
Ilustração 52: Consulta de contas a pagar ................................................................ 69
Ilustração 53: Financeiro ........................................................................................... 70
SUMÁRIO
1 INTRODUÇÃO ......................................................................................................... 14
2 OBJETIVOS............................................................................................................. 15
2.1 Objetivo Geral .......................................................................................................... 15
2.2 Objetivos Específicos ............................................................................................... 15
3 REFERENCIAL TEÓRICO ....................................................................................... 16
3.1 Levantamento de Requisitos .................................................................................... 16
3.1.1 Requisitos Funcionais .............................................................................................. 16
3.1.2 Requisitos Não Funcionais ....................................................................................... 17
3.2 Programação de Computadores............................................................................... 17
3.2.1 Algoritmo .................................................................................................................. 17
3.2.2 Linguagens de Programação ................................................................................... 18
3.2.3 Java ......................................................................................................................... 19
3.3 Banco de Dados ....................................................................................................... 20
3.3.1 Modelo Entidade-Relacionamento (ER) ................................................................... 21
3.3.2 Modelo Relacional .................................................................................................... 24
3.3.3 SQL .......................................................................................................................... 25
3.3.4 Sistema Gerenciador de Banco de Dados (SGBD) .................................................. 26
4 MATERIAIS E MÉTODOS ....................................................................................... 27
4.1 Materiais .................................................................................................................. 27
4.1.1 Java ......................................................................................................................... 27
4.1.2 Netbeans .................................................................................................................. 28
4.1.3 BrModelo .................................................................................................................. 28
4.1.4 MySQL ..................................................................................................................... 28
4.1.5 Photoshop CS6 ........................................................................................................ 28
4.1.6 Ireport....................................................................................................................... 29
4.2 Métodos ................................................................................................................... 29
4.2.1 Levantamento de Requisitos .................................................................................... 29
4.2.2 Modelagem do Banco de Dados .............................................................................. 30
4.2.3 Dicionário de Dados ................................................................................................. 33
4.2.4 Desenvolvimento e Testes do Sistema ..................................................................... 44
5 RESULTADOS E DISCUSSÕES ............................................................................. 45
5.1 Login ........................................................................................................................ 45
5.2 Menu Inicial .............................................................................................................. 47
5.3 Cadastros ................................................................................................................. 47
5.4 Módulo de Compra ................................................................................................... 51
5.4.1 Relatórios de Compra .............................................................................................. 55
5.5 Módulo de Venda ..................................................................................................... 58
5.5.1 Relatórios de Venda ................................................................................................. 60
5.6 Módulo de Empréstimo ............................................................................................ 62
5.6.1 Relatórios de empréstimo......................................................................................... 63
5.7 Módulo de contas a receber ..................................................................................... 65
5.7.1 Relatórios de contas a receber ................................................................................. 66
5.8 Módulo de Contas a Pagar ....................................................................................... 67
5.8.1 Relatórios de contas a pagar .................................................................................... 68
5.9 Módulo do Financeiro ............................................................................................... 69
6 CONSIDERAÇÕES FINAIS ..................................................................................... 71
14
1 INTRODUÇÃO
Este trabalho de conclusão de curso (TCC) trata do desenvolvimento de um
software, com o intuito de auxiliar os cadastros de clientes, fornecedores,
mercadorias, e também de gerenciar as compras, vendas e empréstimos feitos por
cada funcionário que está empregado na empresa COBED, que trabalha com o
comércio de bebidas. O sistema desenvolvido auxiliará os funcionários e o dono,
pois atualmente os seus trabalhos são feitos em papéis, e por meio de uma planilha
no Excel (Este último é utilizado principalmente para construir tabelas, fazer
controles e cálculos) com a finalidade de controlar o estoque de seus produtos. A
sistematização destas informações, ajudará o trabalho a ficar mais organizado e
seguro.
As disciplinas que foram aprendidas no curso técnico em informática, em
especial as de Banco de Dados e Programação, foram muito importantes para o
desenvolvimento deste trabalho.
O sistema é explicado detalhadamente no decorrer do trabalho, onde em
cada seção estão sendo explanados como foi feita a sua criação. O capítulo 2
mostra os objetivos do trabalho. O referencial teórico, que está no capítulo 3 é
responsável por detalhar as áreas da informática que foram usadas para a criação
do software. No capítulo 4 são apresentados os materiais e métodos empregados no
trabalho. Os resultados e discussões são apresentados no capítulo 5 e as
considerações finais no capítulo 6.
15
2 OBJETIVOS
2.1 Objetivo Geral
Desenvolver um sistema para uma empresa de comércio de bebidas,
permitindo o controle de compras, vendas, financeiro, empréstimo de produtos e
gerenciamento de estoque, possibilitando que a empresa tenha uma melhor
organização e tornando estes processos mais ágeis.
2.2 Objetivos Específicos
Os objetivos específicos elencados a seguir são necessários para atingir o
objetivo geral:
Realizar uma análise de requisitos com o dono da empresa, podendo assim
saber o que será necessário para a confecção do software;
Criar o modelo entidade-relacionamento para obter um projeto do
armazenamento de dados do sistema;
Criar um banco de dados relacional para armazenar os dados do sistema;
Codificar o sistema.
16
3 REFERENCIAL TEÓRICO
Para entender melhor como o Sistema Gerenciador de Comércio de Bebidas
funciona, é preciso adquirir um conhecimento maior sobre áreas da informática que
se relacionaram com o programa.
3.1 Levantamento de Requisitos
Segundo Sommerville (2011), o levantamento de requisitos é a forma como o
cliente vai poder descrever as funcionalidades do sistema, seus serviços e suas
restrições, onde depois de obtidas essas informações, essas funcionalidades serão
colocadas no software criado.
3.1.1 Requisitos Funcionais
Conforme Sommerville (2011), os requisitos funcionais de um sistema são
responsáveis pela descrição do que o software fará. Esses requisitos vão depender
de seu usuário e de como ele vai fazer o pedido das funcionalidades. Eles podem
ser descritos tanto de uma forma mais abstrata, onde poucos detalhes serão dados
sobre o programa, assim o cliente corre risco de receber o software sem algumas
coisas que seriam necessárias a ele, como também podem ser feitos de uma forma
mais específica, onde nesse caso os requisitos são descritos de forma bem
detalhada, para melhor entendimento do programador. Deste modo as chances de
haver ausência de alguma função são menores. Um exemplo de requisito funcional
é o cadastramento de um cliente da loja.
17
3.1.2 Requisitos Não Funcionais
“Os requisitos não funcionais, como o nome sugere, são requisitos que não
estão diretamente relacionados com os serviços específicos oferecidos pelo sistema
a seus usuários”. (SOMMERVILLE, 2011, p.60).
Segundo Sommerville (2011), os requisitos não funcionais, como o
desempenho, a proteção e a disponibilidade do programa, são os responsáveis de
certa forma, por especificar ou restringir as características do sistema como um todo.
3.2 Programação de Computadores
Para entender melhor como foi programado o software de comércio de
bebidas é necessário entender algumas áreas que estão diretamente ligadas com a
programação de computadores.
3.2.1 Algoritmo
“Algoritmo é a descrição de uma sequência de passos que deve ser seguida
para a realização de uma tarefa” (ASCENCIO,1999, p.2).
“É importante entender que um algoritmo descreve uma possível solução para
um problema. Isto significa que um algoritmo pode não resolver o problema de forma
satisfatória”. (BENEDUZZI e METZ, 2010, p.10).
18
Ilustração 1: Exemplo de Algoritmo
Algortimo: “Média real de dois números”
Var
a,b: real;
media: real
inicio
escreva (“Nota 1: ”)
leia (a)
escreva (“Nota 2: “)
leia (b)
media <- (a+b) / 2;
escreva (media)
fimalgoritmo
Fonte: Os autores, 2014.
Na Ilustração 1, pode ser observado um exemplo de algoritmo, que tem a
função de calcular uma média aritmética entre dois números. Neste algoritmo o
serão escritos dois números, e partir da leitura desses números, eles serão somados
e sua média será calculada.
3.2.2 Linguagens de Programação
“As linguagens de programação são utilizadas para descrever algoritmos, de
modo que os comandos que compõem esses algoritmos possam ser posteriormente
convertidos em linguagem de máquina” (BENEDUZZI e METZ, 2010, p.116).
Segundo Morimoto (2007), a vantagem de se usar a linguagem de
programação, ao invés de fazer um programa todo em números binários, é que o
programador poderá trabalhar com instruções como if, else, etc, coisa que antes
dela não existia, e se caso ele queira fazer um programa diretamente em números
binários, ele precisaria decorar muitas sequências binárias para cada instrução que
quisesse dar ao computador. Assim irá fazer com que o código fique menos extenso,
19
facilitando até mesmo a compreensão dele. Algumas das mais importantes
linguagens de programação são: C, C++, C#, PHP, JavaScript e Java.
3.2.3 Java
Segundo Deitel, P. e Deitel, M. (2010), em 1991 a empresa Sun Microsystems
financiou um projeto de pesquisa corporativa interna que resultou em uma
linguagem baseada em C++, que foi inicialmente chamada de “OAK”, onde essa
linguagem seria implementada em aparelhos com inteligência própria, e que fosse
versátil. Mas algum tempo depois foi descoberto que já existia uma linguagem com
esse nome. Então, a partir de uma reunião entre funcionários da empresa, essa
linguagem de programação passou a ser chamada de Java.
Ainda segundo Deitel, P. e Deitel, M. (2010), somente no ano de 1995 o Java
foi formalmente apresentado pela Sun. Inicialmente ele chamou a atenção das
comunidades de negócios por causa de seu enorme interesse na Web. Atualmente
essa linguagem é destinada além da Web, mas também para grande parte dos
aplicativos utilizados no mercado.
“Linguagens como Java são linguagens orientadas a objeto. A programação
nessa linguagem, chamada programação orientada a objetos, permite-lhe
implementar um design orientado a objetos como um sistema funcional.” (Deitel, M e
Deitel, P, p16).
Na Ilustração 2, pode ser analisada a implementação em Java do algoritmo
apresentado na Ilustração 1.
20
Ilustração 2: Exemplo de código Java
public class media {
public static void main(String[] args) {
Scanner leitura = new Scanner(System.in);
real num1, num2, soma, media;
System.out.println("Nota 1:");
num1 = leitura.getFloat();
System.out.println("Nota 2:");
num2 = leitura.getFloat();
soma = num1 + num2;
media = soma / 2;
System.out.print (media);
}
}
Fonte: Os autores, 2014
3.3 Banco de Dados
“Ao conjunto de arquivos integrados que atendem a um conjunto de sistemas
dá-se o nome de banco de dados (BD)” (HEUSER, 2009, p.22).
Com base em Heuser (2009), bancos de dados permitem restrição de acesso
e promovem a integridade de dados. É isso o que faz com que o armazenamento de
dados desta maneira seja mais seguro que em arquivos.
21
Um Banco de Dados é importante para um software, já que ele pode fazer o
armazenamento de dados que são gerados na execução do programa. Por exemplo,
em um programa para uma loja, quando se cadastra um cliente, todas as
informações são salvas em um banco de dados, que está relacionado com o
programa, podendo ser acessadas posteriormente.
3.3.1 Modelo Entidade-Relacionamento (ER)
A primeira parte para a criação de um banco de dados é a modelagem deste.
A partir dela torna-se mais compreensivo o entendimento do banco de dados que
será produzido.
Segundo Heuser (2009), a técnica mais utilizada para a modelagem de dados
é a abordagem entidade-relacionamento. Esta técnica é representada através de um
diagrama entidade-relacionamento, que fará uma representação gráfica do modelo
ER.
Conforme Heuser (2009), uma entidade é um conjunto de objetos da
realidade modelada, onde interessam apenas os objetos em que se pode manter
informações.
Em um DER, uma entidade é representada por um retângulo, onde dentro
dela haverá o nome dessa entidade. Como pode ser visto na Ilustração 3, onde há
como exemplo a entidade com o nome Cliente.
Ilustração 3: Entidade
Fonte: Os autores, 2014.
22
O relacionamento de entidades permite e torna possível saber quais
entidades estão associadas. (HEUSER, 2009).
“Em um DER, um relacionamento é representado através de um losango,
ligado por linhas aos retângulos representativos das entidades que participam do
relacionamento.” (HEUSER, 2009, p. 36).
Na Ilustração 4, demonstra-se o relacionamento entre as entidades Cliente e
Compras. Como a entidades cliente e compras estão se relacionando, isso faz com
que o cliente possa fazer compras, devido a essa ligação.
Ilustração 4: Relacionamento entre Entidade
Fonte: Os autores, 2014.
Uma propriedade importante para um relacionamento entre as entidades são
as cardinalidades. Estas são o número de ocorrências de uma entidade que estão
associadas a outra entidade. Podem ser considerados dois tipos de cardinalidades:
a cardinalidade máxima e a cardinalidade mínima. (HEUSER, 2009).
De acordo com Heuser (2009) a cardinalidade mínima ou máxima, é o
número de vezes mínimo ou máximo em que pode ocorrer uma ocorrência entre as
entidades. A cardinalidade mínima é representada pelos números 0 e 1, e a
cardinalidade máxima poder ser representada por 1 ou n, onde a letra n não tem um
valor máximo definido.
Na Ilustração 5, evidencia-se as cardinalidades no relacionamento entre as
entidades Cliente e Compras em que as cardinalidades estão representadas dentro
dos parênteses.
23
Ilustração 5: Cardinalidades
Fonte: Os autores, 2014.
Neste caso, as cardinalidades estão representando que um cliente pode fazer
nenhuma (representado pelo 0) ou várias compras (representado pela letra n), e as
compras devem ter no mínimo um cliente (representado pelo número 1), podendo ter
vários clientes (representado pela letra n).
Segundo Heuser (2009), um modelo ER permite a especificação das
propriedades de entidades, onde essas especificações são chamadas de atributos.
Atributos servem para detalhar uma ocorrência de outra em uma entidade. Na
Ilustração 5, Cliente é uma entidade, e Nome e Código são os seus atributos.
Ainda de acordo com Heuser (2009), as entidades possuem atributos
identificadores, que distinguem uma ocorrência de outra em uma mesma entidade,
onde pode ocorrer casos com um ou mais identificações. Esses atributos são
representados por um círculo preto em um DER.
Na Ilustração 6, pode ser reparado o uso de atributos, que são os círculos
ligados as entidades. Os atributos identificadores são os círculos preenchidos.
Ilustração 6: Atributos
Fonte: Os autores, 2014.
24
3.3.2 Modelo Relacional
Segundo Heuser (2009), o modelo relacional é composto por um conjunto de
tabelas, onde cada tabela é caracterizada por um conjunto não ordenado de linhas.
Em cada uma dessas linhas são encontradas uma série de campos, onde em cada
um deles é armazenado uma informação. A identificação de cada campo pode ser
feita no cabeçalho de uma tabela.
Ainda segundo Heuser (2009), para identificar uma linha de uma tabela e
estabelecer relações entre as mesmas são usadas chaves, que podem ser
encontradas de três tipos diferentes. São eles: Chave primária, chave alternativa e
chave estrangeira.
“Uma chave primária é uma coluna ou uma combinação de colunas cujos
valores distinguem uma linha das demais dentro de uma tabela” (HEUSER, 2009,
p.122).
Uma chave estrangeira é o que torna capaz a implementação de
relacionamentos em um banco de dados relacional e está contida na tabela que tem
n ocorrências para cada ocorrência da outra tabela. Os valores da chave estrangeira
são os mesmos que os da chave primária que está contida na outra tabela
relacionada (HEUSER, 2009).
De acordo com Heuser (2009), em algumas tabelas podem ocorrer de que em
mais de uma coluna possa se distinguir linhas. Para isso ocorrer então uma das
colunas é escolhida como chave primária, e as demais como chaves alternativas.
Novamente segundo Heuser (2009), um banco de dados relacional pode ser
representado por diagramas, onde em sua maioria estão descritos como o descrito a
seguir.
Uma tabela é representada por um retângulo, onde nesses estarão
representadas as colunas de uma tabela. Nele podem ser feitas descrições sobre
cada elemento que está contido em uma linha, como por exemplo, dizendo se ele é
um valor inteiro, qual seu tamanho e também seu tipo. Também podem conter
25
anotações das chaves primárias e estrangeiras. Na Ilustração 7 pode se analisar um
exemplo dessa tabela, que foi criada a partir da Ilustração 6.
Ilustração 7: Tabela no modelo relacional
Fonte: Os autores, 2014
3.3.3 SQL
De acordo com Silberschatz, Korth e Sudarshan (2012), SQL é uma
linguagem que apesar de ser chamada de “linguagem de consulta” não serve
apenas para fazer consultas, mas também para definir a estrutura de um banco de
dados, alterá-lo e ainda especificar restrições de segurança.
Ainda com base em Silberschatz, Korth e Sudarshan (2012), a linguagem
SQL é composta por duas divisões de comandos, que são a linguagem DML e a
linguagem DDL, onde cada uma tem funções diferentes, sendo a primeira utilizada
para a manipulação de dados, que possui comandos como INSERT (utilizado para
inclusões), SELECT (utilizado para fazer consultas), UPDATE (utilizado para fazer
alterações de valores) e DELETE (utilizado para fazer exclusões). Já a segunda é
utilizada para fazer a definição de dados, e possui dois comandos básicos como o
CREATE (cria um objeto dentro de uma base de dados) e o DROP (apaga um objeto
do banco de dados). Na Ilustração 8 pode ser notado como é feita a criação de uma
tabela por meio do comando CREATE.
26
Ilustração 8: Utilização do comando CREATE
Fonte: Os autores, 2014
3.3.4 Sistema Gerenciador de Banco de Dados (SGBD)
“O sistema gerenciador de banco de dados é um sistema de software de uso
geral que facilita o processo de definição, construção, manipulação e
compartilhamento de banco de dados entre diversos usuários e aplicações”
(ELMASRI, 2011, p. 3 e 4).
Segundo Heuser (2009), os SGBD’s surgiram para facilitar à repetitiva tarefa
de manter um banco de dados, que se acumulavam com tantas outras funções que
poderiam dificultar a organização do código fonte de um programa.
27
4 MATERIAIS E MÉTODOS
Este trabalho utilizou-se de pesquisa bibliográfica, necessária para a
elaboração do referencial teórico (Capítulo 3), e de pesquisa descritiva, sendo esta
última aplicada ao uso das técnicas de projeto e desenvolvimento de software
Para a elaboração do software, alguns materiais precisaram ser utilizados,
onde na Seção 4.1 eles estão sendo apresentados e também são explicadas quais
as suas funções. Já na Seção 4.2, estão sendo mostrados como foram feitos os
levantamentos de requisitos, a produção do banco de dados e o desenvolvimento do
sistema.
4.1 Materiais
Nesta seção são apresentadas as tecnologias utilizadas para a confecção do
presente trabalho. As escolhas destas foram feitas a partir do que foi aprendido no
Curso Técnico em Informática, por ter sido obtido um conhecimento mais amplo
passado a partir dos professores, com exceção da ferramenta Photoshop CS6, onde
nesta foi preciso adquirir conhecimento extraclasse.
4.1.1 Java1
Foi utilizada na criação do software por ser a linguagem de programação
estudada e utilizada em sala de aula.
1 Para mais informações acesse: https://www.java.com/pt_BR
28
4.1.2 Netbeans2
Utilizou-se o NetBeans como ambiente de desenvolvimento por este atender
as necessidades que foram impostas na criação do sistema, como a implementação
do código na linguagem Java e o design das telas. Além disso, é um software
gratuito e disponível online.
4.1.3 BrModelo3
Por ser um software livre e fácil de ser utilizado, onde foi usado para criar o
modelo ER do banco de dados.
4.1.4 MySQL4
Foi escolhido por ser um SGBD livre e que é apto as necessidades a serem
aplicadas no desenvolvimento e gerência do banco de dados do sistema deste
trabalho.
4.1.5 Photoshop CS65
Para poder utilizá-lo, foi necessário obter conhecimento extraclasse. Foi
usado para fazer o design das telas do software descrito no presente trabalho.
2 Para mais informações acesse: https://netbeans.org/
3 Para mais inforamções acesse: http://sis4.com/brModelo/
4 Para mais informações acesse: http://www.mysql.com/
5 Para mais informações acesse: http://www.adobe.com/br/products/photoshop.html
29
4.1.6 Ireport6
É uma ferramenta utilizada para gerar documentos no formato PDF a partir
das informações do banco de dados e foi utilizado para fazer a geração do PDF na
parte do software, onde para ser feita a sua utilização foi necessário buscar
conhecimento fora da sala de aula.
4.2 Métodos
Esta seção descreve os levantamentos de requisitos feitos com o proprietário
da empresa. Também serão mostrados os modelos entidade-relacionamento e o
modelo relacional, onde a partir dos requisitos obtidos pode-se ter uma ideia mais
clara do que deveria ser feito, assim podendo fazer a criação do modelo ER. A partir
deste modelo, pode ser criado o relacional, e após os modelos, o programa.
4.2.1 Levantamento de Requisitos
Em conversa com o proprietário da empresa, foram levantados diversos
requisitos, sendo eles funcionais e não funcionais.
Como requisitos funcionais foram estabelecidos que o sistema deverá conter
cadastro de clientes, de fornecedores e de produtos. Também deve conter um
controle de estoque, assim como um controle de compras e vendas de bebidas e
empréstimos de mesas, cadeiras e toalhas, feitas em determinados períodos de
tempo, sendo que as compras ou empréstimos podem ser parcelados ou à vista.
Deve haver também o registro do faturamento da empresa com possibilidade de
consulta.
6 Para mais informações acesse: https://community.jaspersoft.com/project/ireport-designer
30
Já como requisitos não funcionais, o proprietário solicitou que o programa
deve ter um visual de fácil compreensão e manuseio e ainda que as informações
contidas no programa tenham segurança contra uma possível invasão de intrusos, e
para isso existe um login de usuário com senha.
4.2.2 Modelagem do Banco de Dados
Após a análise de requisitos, foi preciso a criação de um modelo entidade-
relacionamento, onde ele armazenará os dados de forma persistente, e depois pode
ser criado o modelo relacional referente ao modelo ER. A Ilustração 9, a seguir,
exibe o modelo ER, onde pode se analisado todos seus relacionamentos, entidades,
atributos, cardinalidades e as chaves primárias de cada entidade.
32
Após ser feito o modelo entidade-relacionamento, foi feito o modelo relacional,
onde nesse é possível ter uma ideia mais detalhada e de mais fácil visualização do
banco de dados, e do programa que está a ser feito. Ele pode ser observado na
Ilustração 10, onde pode ser visto o relacionamento das tabelas, suas chaves
primárias e estrangeiras, além do tipo de dados de cada campo das tabelas.
Ilustração 10: Modelo Relacional
Fonte: Os autores, 2014.
33
4.2.3 Dicionário de Dados
O dicionário de dados é uma maneira detalhada e organizada de explicar os
atributos da modelagem de banco de dados.
Ilustração 11: cliente
Nome Descrição
Tipo Tamanho
Nulo Regra(check)
Chave
Default Unique
idcliente_c
Armazena o código de identidade do cliente
INT - Não -- PK -- Não
nome_c Armazena o nome do cliente
VARCHAR 45 Não -- -- -- Não
datanasc_c
Armazena a data de nascimento do cliente
DATE 9 Não -- -- -- Sim
rg_c Armazena o RG do cliente
VARCHAR 45 Não -- -- -- Sim
sexo_c Armazena o sexo do cliente
CHAR 1 Não M-Masculino F-Feminino
-- -- Não
cidade_c Armazena a cidade do cliente
VARCHAR 45 Não -- -- -- Não
renda_c Armazena a renda do cliente
FLOAT - Não -- -- -- Não
cpf_c Armazena o CPF do cliente
VARCHAR 45 Não -- -- -- Sim
cep_c Armazena o CEP do
VARCHAR 45 Não -- -- -- Não
34
cliente bairro_c Armazen
a o bairro do cliente
VARCHAR 45 Não -- -- -- Não
estado_c Armazena o estado do cliente
VARCHAR 45 Não -- -- -- Não
limite_c Armazena o limite máximo que o cliente pode ter na contado cliente
FLOAT - Não -- -- -- Não
celular_c Armazena o celular do cliente
VARCHAR 45 Sim -- -- -- Sim
rua_c Armazena a rua do cliente
VARCHAR 45 Não - - - Não
telefone_c
Armazena o telefone do cliente
VARCHAR 45 Sim -- -- -- Sim
numerocasa_c
Armazena o número da casa do cliente
INT - Não -- -- -- Não
foto_c Armazena a foto do cliente
VARCHAR 500 Sim -- -- -- Não
Fonte: Os autores, 2014
Ilustração 12: venda
Nome Descrição
Tipo Tamanho
Nulo Regra(check)
Chave
Default Unique
35
idvenda_v
Armazena o código da venda
INT - Não -- PK -- Não
mododadvenda_v
Armazena o modo da venda
VARCHAR
45 Não -- -- -- Não
data_v Armazena a data da venda
DATE - Não -- -- -- Não
parcelas_v
Armazena as parcelasda venda
INT - Não -- -- -- Não
valortotal_v
Armazena o valor total da venda
FLOAT - Não -- -- -- Não
cliente_idcliente_c
Armazena o id da pessoa que fez uma compra a prazo na empresa
INT - Não -- -- -- Não
Fonte: Os autores, 2014
Ilustração 13: itemvenda
Nome Descrição
Tipo Tamanho
Nulo Regra(check)
Chave
Default Unique
seq_iv Armazena o código do item(produto) vendido
INT - Não -- PK -- Não
preço_iv Armazena o preço do item da venda
FLOAT - Não -- -- -- Não
quantidade_iv
Armazena a quantidade de itens a venda
INT - Não -- -- -- Não
produto_idproduto
Armazena o
INT - Não -- FK -- Não
36
_p código do produto
venda_idvenda_v
Armazena o código da venda do produto
INT - Não -- PK -- Sim
Fonte: Os autores, 2014
Ilustração 14: produto
Nome Descrição
Tipo Tamanho
Nulo Regra(check)
Chave
Default Unique
idproduto_p
Armazena a id do produto
INT - Não -- PK -- Não
nome_p Armazena o nome do produto
VARCHAR
45 Não -- -- -- Não
quantidade_p
Armazena a quantidade de produtos
INT - Não -- -- -- Não
preço_p Armazena o preço do produto
FLOAT - Não -- -- -- Não
foto_p Armazena a foto do produto
VARCHAR
500 Sim -- -- -- Não
Fonte: Os autores, 2014
Ilustração 15: itemcompra
Nome Descrição
Tipo Tamanho
Nulo Regra(check)
Chave
Default Unique
seq_ic Armazena o código de um item(produto)
INT - Não -- PK -- Não
37
comprado
preco_ic Armazena o preço do item comprado
FLOAT -- Não -- -- -- Não
quantidade_ic
Armazena a quantidade itens comprados
INT - Não -- -- -- Não
produto_idproduto_p
Armazena o código do produto
INT - Não -- FK -- Não
compra_idcompra_co
Armazena o código da compra do produto
INT -- Não -- PK -- Não
Fonte: Os autores, 2014
Ilustração 16: compra
Nome Descrição
Tipo Tamanho
Nulo Regra(check)
Chave
Default Unique
idcompra_co
Armazena o código da compra
INT - Não -- PK -- Não
mododacompra_co
Armazena o modo da compra
VARCHAR
45 Não -- -- -- Não
data_co Armazena a data da compra
DATE - Não -- -- -- Não
parcelas Armazena as parcelasda compra
INT - Não -- -- -- Não
38
valortotal_co
Armazena o valor total da compra
FLOAT - Não -- -- -- Não
Fornecedor_idfornecedor_f
Armazena o código do fornecedor que foi feita a compra
INT - Não -- -- -- Não
Fonte: Os autores, 2014
Ilustração 17: contaspagar
Nome Descrição
Tipo Tamanho
Nulo Regra(check)
Chave
Default Unique
seq_cp Armazena o código de uma conta a ser paga
INT - Não -- PK -- Não
valor_cp Armazena o valor das contas a pagar
FLOAT -- Não -- -- -- Não
datalancamento_cp
Armazena a data de lançamento da conta a pagar
DATE - Não -- -- -- Não
datavencimento_cp
Armazena a data de vencimento da conta a ser paga
DATE - Não -- -- -- Não
datapagamento_cp
Armazena a data em que foi paga a conta
DATE -- Não -- -- -- Não
compra_idcompra_co
Armazena o código da
INT - Não -- -- -- Não
39
compra que foi paga
Fonte: Os autores, 2014
Ilustração 18: fornecedor
Nome Descrição
Tipo Tamanho
Nulo Regra(check)
Chave
Default Unique
idfornecedor_f
Armazena o código de identidade do fornecedor
INT - Não -- PK -- Não
nome_f Armazena o nome do fornecedor
VARCHAR 45 Não -- -- -- Não
cidade_f Armazena a cidade do fornecedor
VARCHAR 45 Não -- -- -- Sim
estado_f Armazena o Estado do fornecedor
VARCHAR 45 Não -- -- -- Sim
cep_f Armazena o CEP do fornecedor
VARCHAR 45 Não -- -- -- Não
bairro_f Armazena o bairro do fornecedor
VARCHAR 45 Não -- -- -- Não
rua_f Armazena a rua do fornecedor
VARCHAR 45 Não -- -- -- Não
numerolocal_f
Armazena o
INT -- Não -- -- -- Sim
40
numero local do fornecedor
cnpj_f Armazena o CNPJ do fornecedor
VARCHAR 45 Não -- -- -- Não
celular_f Armazena o celular do fornecedor
VARCHAR 45 Sim -- -- -- Não
telefone_f Armazena o telefone do fornecedor
VARCHAR 45 Sim -- -- -- Não
email_f Armazena o email do fornecedor
VARCHAR 45 Sim -- -- -- Não
Fonte: Os autores, 2014
Ilustração 19: empréstimo
Nome Descrição
Tipo Tamanho
Nulo Regra(check)
Chave
Default Unique
idemprestimo_e
Armazena a id do emprestimo
INT - Não -- PK -- Não
data_e Armazena data do empréstimo
DATE -- Não -- -- -- Não
dataentrega_e
Armazena a data da entrega dos produtos emprestados
DATE - Não -- -- -- Não
valortotal_e
Armazena o valor total do
FLOAT - Não -- -- -- Não
41
empréstimo
cliente_idcliente_c
?? INT - Não -- FK -- Não
Fonte: Os autores, 2014
Ilustração 20: itemesmpréstimo
Nome Descrição
Tipo Tamanho
Nulo Regra(check)
Chave
Default Unique
seq_ie Armazena o código do item emprestado
INT - Não -- PK -- Não
preco_ie Armazena o preço do item emprestado
FLOAT -- Não -- -- -- Não
quantidade
Armazena a quantidade itens emprestados
INT - Não -- -- -- Não
produtoemprestimo_idprodutoemprestimo_pe
Armazena o código do produto emprestado
INT - Não -- FK -- Não
emprestimo_idemprestimo_e
Armazena o código do empréstimo
INT -- Não -- PK -- Não
Fonte: Os autores, 2014
Ilustração 21: produtoempréstimo
Nome Descrição
Tipo Tamanho
Nulo Regra(check)
Chave
Default Unique
42
idprodutoempresitmo_pe
Armazena o código do empréstimo
INT - Não -- PK -- Não
nome_pe Armazena o nome do produto emprestado
VARCHAR
45 Não -- -- -- Não
quantidade_pe
Armazena a quantidade de produtos emprestados
INT - Não -- -- -- Não
preco_pe Armazena o preço dos produtos emprestados
INT - Não -- -- -- Não
foto_pe Armazena a foto do produto emprestado
VARCHAR
500 Não -- -- -- Não
Fonte: Os autores, 2014
Ilustração 22: contasreceber
Nome Descrição
Tipo Tamanho
Nulo Regra(check)
Chave
Default Unique
seq_cr Armazena o código da conta a ser recebida
INT - Não -- PK -- Não
valor_cr Armazena o valor das contas a receber
FLOAT -- Não -- -- -- Não
datalancamento_cr
Armazena a data de lançamento da
DATE - Não -- -- -- Não
43
conta a receber
datavencimento_cr
Armazena a data de vencimento da conta a ser recebida
DATE - Não -- -- -- Não
datapagamento_cr
Armazena a data em que foi recebida a conta
DATE -- Não -- -- -- Não
emprestimo_itemprestimo_e
Armazena o código do item emprestado
INT - Não -- -- -- Não
venda_idvenda_v
Armazena o código da venda
INT - Não -- -- -- Não
Fonte: Os autores, 2014
Ilustração 23: login
Nome Descrição
Tipo Tamanho
Nulo Regra(check)
Chave
Default Unique
nome_l Armazena o nome do usuário
VARCHAR
45 Não -- -- -- Não
senha_l Armazena a senha do usuário
VARCHAR
45 Não -- -- -- Não
modo_l Armazena qual usuário está acessando
VARCHAR
45 Não -- -- -- Não
Fonte: Os autores
44
4.2.4 Desenvolvimento e Testes do Sistema
O programa começou a ser feito a partir dos cadastros, e após foram feitas
as consultas e depois disso os botões de editar e excluir, onde a cada tela que
era criada ia sendo testada conforme era programada.
45
5 RESULTADOS E DISCUSSÕES
Os três anos do curso de técnico em informática, e as pesquisas que
envolveram este trabalho, possibilitaram a criação deste software, que será
apresentado neste capítulo.
5.1 Login
Antes de as funcionalidades do software serem acessadas, é preciso que o
dono da empresa ou seus funcionários tenham um cadastro, pois só assim será
possível utilizar o programa. A Ilustração 24 abaixo mostra como é feito o cadastro do
usuário.
Ilustração 24: Cadastro de usuário para login
Fonte: Os autores, 2014
Como pode ser visto o usuário vai ter seu próprio código, seu nome de
usuário e sua senha. Quanto à permissão de administrador, apenas o dono da
empresa vai ter ou quem ele escolher para ser, pois só os administradores irão ter
46
acesso a todas as funcionalidades do programa sem exceção, já os usuários que
não tiverem essa permissão não terão acesso a parte financeira.
Após o usuário ser cadastrado, então este poderá ter acesso ao sistema, por
meio da tela de login, onde para acessar basta ser colocado o seu nome de usuário
e senha, como observado na Ilustração 25 abaixo.
Ilustração 25: Tela de login
Fonte: Os autores, 2014
47
5.2 Menu Inicial
Ilustração 26: Menu Inicial
Fonte: Os autores, 2014
Na Ilustração 26 está sendo apresentado o menu principal do sistema
gerenciador de comércio de bebidas, onde nele o usuário tem acesso a todas as
funcionalidades do programa, como os diversos cadastros, as compras,vendas e
empréstimos, o financeiro, e os relatórios. Essas funções contidas no sistema são
mostradas nas seções seguintes.
5.3 Cadastros
Como visto no menu principal Ilustração 26, o software conta com o cadastro
dos produtos(comprados e que serão revendidos), dos fornecedores dos produtos e
o cadastros dos clientes da empresa, que pode ser visto na Ilustração 27, abaixo.
48
Ilustração 27: Cadastro de Clientes
Fonte: Os autores, 2014
Para fazer o cadastro do cliente é necessário que os campos sejam
preenchidos corretamente, onde o campo Id, inicialmente ficará em branco, e depois
de feito o cadastro ele será preenchido automaticamente. No cadastro também pode
ser colocada uma foto do cliente, para a facilitação do reconhecimento.
O cadastro de fornecedores consiste na mesma forma de preenchimento do
cadastro de clientes, onde suas diferenças estão apenas em alguns campos. Ele
está exposto na Ilustração 28, abaixo.
49
Ilustração 28: Cadastro de Fornecedores
Fonte: Os autores, 2014
Os produtos que são vendidos pela empresa também precisam estar
cadastrados no sistema. No seu cadastro é preciso que sejam preenchidos alguns
campos. Um destes campos, o de nome quantidade, é preenchido automaticamente
pelo sistema, pois conforme o dono da empresa faz a compra deste produto, a sua
quantidade já é incrementada automaticamente. A tela do cadastro dos produtos
para a venda é mostrado na Ilustração 29.
50
Ilustração 29: Cadastro de produtos para venda
Fonte: Os autores, 2014
O sistema também conta com um cadastro de produtos específicos
(mesas,cadeiras e talheres) para os empréstimos, observado na Ilustração 30.
51
Ilustração 30: Cadastro de produto para empréstimos
Fonte: Os autores, 2014
5.4 Módulo de Compra
Para que a empresa possa fazer as vendas, que será explicado na Seção 5.4
é preciso que antes sejam feitas as compras dos produtos que serão vendidos, onde
essas compras serão feitas a partir de fornecedores.
52
Ilustração 31: Tela de Compra
Fonte: Os autores, 2014
Na Ilustração 31 pode ser observada a tela onde são feitas as compras, e
primeiramente devem ser selecionados os produtos a serem comprados. Na
Ilustração 32 pode ser analisada a tela de seleção de produtos, onde vão ser
selecionados os produtos desejados para a compra.
53
Ilustração 32: Seleção de produto pra compra
Fonte: Os autores, 2014
Após o produto ser selecionado, deve ser selecionado o fornecedor do qual a
compra vai ser feita. Na Ilustração 33 pode ser analisada como é feita a seleção do
fornecedor.
54
Ilustração 33: Seleção de fornecedor para compra
Fonte: Os autores, 2014
A compra também pode ser feita de duas maneiras: a prazo ou a vista. Se for
a vista a compra já vai ser paga na hora, e esse valor será adicionado no relatório de
contas a pagar (será explicado na Seção 5.7) com a data que foi feita a compra. Já
se for a prazo serão feitas parcelas, dependendo do acordo feito entre a empresa e
o fornecedor, e pode ocorrer de duas maneiras. A primeira parcela pode ser feita pra
ser paga no dia da realização da compra e as demais para outros dias, ou a primeira
parcela pode ser feita para alguns dias após o dia da compra, assim como as outras.
Na Ilustração 34 pode ser observada a geração das parcelas, onde é colocado o
número de parcelas, o dia da primeira parcela e quantidade de dias para a parcela
seguinte. O botão Refazer parcelas possibilita gerar as parcelas de acordo com o
que foi preenchido nos campos.
55
Ilustração 34: Geração de parcelas da compra
Fonte: Os autores, 2014
5.4.1 Relatórios de Compra
O sistema também conta com uma tela para a consulta de todas as compras
de produtos feitas, onde isso proporciona um melhor controle para a empresa. Na
Ilustração 35 pode ser visto a tela que dá acesso a todas as consultas de relatórios
possíveis, como por exemplo: a consulta das vendas, das compras, dos
empréstimos, entre outros.
56
Ilustração 35: Menu de Consultas
Fonte: Os autores, 2014
A partir do menu das consultas é possível acessar todas as consultas. Na
Ilustração 36 podem ser analisadas as consultas das compras, onde pode ser
escolhido se quer consultar as compras a prazo ou as a vista.
57
Ilustração 36: Consulta de compras
Fonte: Os autores, 2014
Além de consultar as compras feitas, o usuário também pode fazer a consulta de
todos os seus fornecedores cadastrados, como visto na Ilustração 37.
Ilustração 37: Consulta de fornecedores
Fonte: Os autores, 2014
58
5.5 Módulo de Venda
Após um produto ser comprado, a empresa poderá então fazer a venda dele
aos seus clientes em um processo parecido com o da compra. Na Ilustração 38 pode
ser observado como é feita a venda para um cliente.
Ilustração 38: Tela de Venda
Fonte: Os autores, 2014
Para uma venda ser feita é preciso que primeiramente seja inserido o cliente
a quem vai ser vendido. Na Ilustração 39 é mostrado como faz a seleção do cliente,
onde o usuário vai buscar pelo nome do cliente e selecioná-lo.
59
Ilustração 39: Seleção de cliente para venda
Fonte: Os autores, 2014
Após ser selecionado o cliente, o usuário vai selecionar o(s) produto(s) que
vão ser vendidos. Na Ilustração 40 é mostrada a tela de seleção do produto.
Ilustração 40: Seleção de produtos a serem vendidos
Fonte: Os autores, 2014
60
As vendas também podem ser feitas tanto a vista quanto a prazo, e é feita da
mesma maneira da compra de produtos, citada anteriormente na Seção 5.3.
5.5.1 Relatórios de Venda
Assim como nas compras, o dono da empresa também pode ter acesso a
todas as suas vendas feitas, onde ele pode escolher se quer ver suas vendas feitas
a vista ou a prazo, como pode ser observado na Ilustração 41.
Ilustração 41: Consulta de vendas
Fonte: Os autores, 2014
Além de consultar suas vendas ele também pode consultar todos os seus
clientes, e todos os produtos que tem em estoque, que são mostrados na Ilustração
42 e na Ilustração 43, respectivamente.
61
Ilustração 42: Consulta de clientes
Fonte: Os autores, 2014
Ilustração 43: Consulta de produtos em estoque
Fonte: Os autores, 2014
62
5.6 Módulo de Empréstimo
Além de fazer a venda de produtos, a empresa também faz o empréstimo de
alguns deles: Mesas de plásticos, cadeiras de plástico e talheres. Na Ilustração 44
pode ser observada a tela onde é feito o empréstimo dos produtos a um cliente.
Ilustração 44: Tela de empréstimo
Fonte: Os autores, 2014
O empréstimo de um produto segue basicamente o mesmo padrão da venda,
onde será selecionado o cliente (a tela de seleção do cliente é exatamente igual a da
venda, mostrada na Seção 5.4) a quem vai ser emprestado, e após deve ser
colocada a data limite para a devolução dos produtos. Na Ilustração 45 é mostrada a
tela de seleção de um produto para empréstimo.
63
Ilustração 45: Seleção de produto para empréstimo
Fonte: Os autores, 2014
O empréstimo assim como a venda também pode ser feito tanto a prazo
quanto a vista, onde o pagamento do empréstimo dos produtos vai seguir o mesmo
padrão da venda, conforme a forma de pagamento escolhida pelo cliente, e que já
foi explicada anteriormente na Seção 5.4.
5.6.1 Relatórios de empréstimo
Assim como na venda e na compra, também é possível fazer a consulta de
todos os empréstimos feitos, podendo ser escolhido pelos empréstimos que já foram
devolvidos, os que ainda não foram devolvidos, e os que estão atrasados, como
pode ser observado na Ilustração 46.
64
Ilustração 46: Consulta de empréstimos
Fonte: Os autores, 2014
O dono da empresa também pode fazer a consulta de todos seus produtos
disponíveis para empréstimo, e ter um controle de quantos deles estão em estoque,
como pode ser visto na Ilustração 47.
Ilustração 47: Consulta de produtos para empréstimos
Fonte: Os autores, 2014
65
5.7 Módulo de contas a receber
Para um melhor controle sobre as finanças da empresa, o software possibilita
que sejam feitos os pagamentos das contas a serem pagas, assim como também
são registradas as contas a serem recebidas pela empresa e também gera um
relatório financeiro do que precisa ser pago e recebido em determinadas datas. A
partir da tela do menu financeiro (Ilustração 48), é possível então que o usuário que
tem permissão de administrador escolha se quer acessar as contas a pagar, a
receber ou ver o relatório financeiro.
Ilustração 48: Menu financeiro
Fonte: Os autores, 2014
Ao clicar no botão Contas a receber, abrirá uma tela onde podem ser
registrados os pagamento dos clientes, para os quais foram efetuadas vendas ou
empréstimos de produtos. A tela pode ser vista na ilustração 49.
66
Ilustração 49: Tela de Contas a Receber
Fonte: Os autores, 2014
5.7.1 Relatórios de contas a receber
Com o software, os usuários também podem consultar um relatório de todas
contas que já foram recebidas e as que ainda precisam ser recebidas, onde são
mostradas as datas que foram realizados os pagamentos, os valores recebidos e a
data dos vencimentos, como observado na Ilustração 50.
67
Ilustração 50: Consulta de contas a receber
Fonte: Os autores, 2014
5.8 Módulo de Contas a Pagar
As contas a pagar funcionam basicamente iguais às contas a receber, onde
neste serão registradas as contas que a empresa precisa pagar, como os produtos
comprados dos fornecedores, as contas de energia, água, entre outros. A cada
pagamento realizado pela empresa, será então registrado, onde isso é feito pela tela
que é observada na ilustração 51.
68
Ilustração 51: Contas a pagar
Fonte: Os autores, 2014
5.8.1 Relatórios de contas a pagar
Assim como nas contas a receber, os usuários também podem ter acesso à
consulta de todas as contas que devem ser pagas pela empresa, e também aquelas
que já foram pagas. Nas consultas podem ser observadas as datas que foram
realizadas os pagamentos, a data de vencimento das contas e a data que foram
feitos os lançamentos das contas, que pode ser visto na Ilustração 52.
69
Ilustração 52: Consulta de contas a pagar
Fonte: Os autores, 2014
5.9 Módulo do Financeiro
O software também faz um balanço das contas que devem ser pagas e
recebidas em determinadas datas, essas escolhidas pelo usuário, e existem de duas
formas para consultar esse balanço. Com o valor real até o momento entre a data
inicial e final escolhidas, e a previsão. O valor real até o momento vai mostrar todas
as contas que já foram pagas pela empresa e todas as contas que já foram
recebidas entre as datas estipuladas. Já a previsão vai pegar todas as pagas e
recebidas, independente se a conta já foi paga mesmo ou se ela já foi recebida. Isto
pode ser observado na Ilustração 53.
71
6 CONSIDERAÇÕES FINAIS
Os objetivos do trabalho puderam ser atingidos ao final de seu
desenvolvimento. Pode ser realizado o levantamento de requisitos, que nos
proporcionou um conhecimento amplo do que deveria ser produzido, e também um
conhecimento maior sobre a empresa. Assim, facilitando o desenvolvimento e uso
de um modelo entidade-relacionamento. A partir do modelo ER pode ser criado o
modelo relacional, responsável por armazenar os dados do sistema.
O sistema desenvolvido tem a capacidade de fazer o cadastro de clientes,
mercadorias e fornecedores, controlar as compras, vendas, financeiro, empréstimo e
gerenciamento de estoque de mercadorias, como também faz o controle das contas
que devem ser pagas e recebidas pela empresa.
O software também conta com um sistema de segurança, que é um login e
senha, onde o dono da empresa tem acesso a todas as funções do programa, e os
seus funcionários também, exceto na parte de contabilidade financeira.
Como trabalhos futuros, sugere-se implantação do programa na empresa e a
implementação da funcionalidade de empréstimo de bebidas.
Com o desenvolvimento do projeto e deste relatório, puderam ser colocadas
em prática, várias áreas da informática que foram aprendidas durante os três anos
de curso, como Banco de Dados, Programação, Metodologia e Projetos de Software.
A confecção deste TCC promoveu um bom conhecimento sobre áreas da
informática, e foi de importância muito grande para o desenvolvimento pessoal, além
de que pode se obter um conhecimento mais amplo de programação e também de
programas como o PhotoShop e o Ireport que foram preciso ter conhecimento fora
de aula. As principais dificuldades encontradas foram na programação, onde tudo o
que foi aprendido no curso não foi suficiente para a conclusão do software. Até a
conclusão do trabalho, muita força de vontade teve de ser depositada para que
todos os objetivos fossem alcançados.
72
REFERÊNCIAS
ASCENCIO, Ana Fernanda Gomes; CAMPOS, Edilene Aparecida Veneruchi de. Fundamentos da programação de computadores: algoritmos, Pascal, C/C++ e Java . 2. ed. São Paulo: Pearson Prentice Hall, 2007.
BENEDUZZI, Humberto Martins; METZ, João Ariberto. Lógica e Linguagem de programação: introdução ao desenvolvimento de Software. Curitiba: Livro Técnico, 2010.
DEITEL, Harvey M.; DEITEL, Paul J. Java como programar. 8. ed. São Paulo: Pearson Prentice Hall, 2010.
ELMASRI, Ramez; NAVATHE, Shamkant B. Sistemas de banco de dados. 6. ed. São Paulo: Pearson Addison Wesley, 2010. 788 p.
HEUSER, Carlos Alberto. Projeto de banco de dados. 6. ed. Porto Alegre: Bookman, 2009.
MORIMOTO, Carlos E. Linguagens de programação. Disponível em: <http://www.hardware.com.br/artigos/linguagens/>. Acesso em 22 Abril. 2014.
SILBERSCHATZ, Abraham; KORTH, Henry F.; SUDARSHAN, S. Sistema de banco de dados. 6. ed. São Paulo, SP: Pearson Makron Books, 2012.
SOMMERVILLE, Ian. Engenharia de software. 9. ed. São Paulo: Pearson Prentice Hall, 2011.