72
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

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E … · controles e cálculos) com a finalidade de controlar o estoque de seus produtos. A sistematização destas informações, ajudará

  • 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.

EPÍGRAFE

"Somos quem podemos ser,

sonhos que podemos ter.”

Engenheiros do Hawaii

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.

31

Ilustração 9: Modelo ER

Fonte: Os autores, 2014

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.

70

Ilustração 53: Financeiro

Fonte: Os autores, 2014

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.