CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA...

265
CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA ESCOLA TÉCNICA ESTADUAL IRMÃ AGOSTINA ADEILDO JOSÉ DE OLIVEIRA ANDERSON NASCIMENTO DOS SANTOS CLAYTON RAFAEL DOS SANTOS SOUZA NELSON MANUEL DE AZEVEDO SISVE - SISTEMA DE CONTROLE DE VENDA E ESTOQUE TÉCNICO EM INFORMÁTICA São Paulo, SP 2012

Transcript of CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA...

Page 1: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA

ESCOLA TÉCNICA ESTADUAL IRMÃ AGOSTINA

ADEILDO JOSÉ DE OLIVEIRA

ANDERSON NASCIMENTO DOS SANTOS

CLAYTON RAFAEL DOS SANTOS SOUZA

NELSON MANUEL DE AZEVEDO

SISVE - SISTEMA DE CONTROLE DE VENDA E ESTOQUE

TÉCNICO EM INFORMÁTICA

São Paulo, SP

2012

Page 2: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

ADEILDO JOSÉ DE OLIVEIRA

ANDERSON NASCIMENTO DOS SANTOS

CLAYTON RAFAEL DOS SANTOS SOUZA

NELSON MANUEL DE AZEVEDO

SISVE - SISTEMA DE CONTROLE DE VENDA E ESTOQUE

Trabalho de Conclusão do curso de Nível Médio

Técnico de Informática sob a

orientação do Professor Renato Carvalho

São Paulo - SP

2012

Page 3: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

Dedicamos este trabalho às nossas famílias e a todos aqueles que direta ou in-

diretamente nos ajudaram na sua criação...

Page 4: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

“Uma longa viagem começa com um único passo.” (Lao Tsé)

Page 5: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

Banca Examinadora

____________________________________________

____________________________________________

____________________________________________

Page 6: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

RESUMO

Este trabalho foi direcionado à criação de um software de computador para controle de

produtos em estoque e também para auxiliar no momento da venda. No qual os usuários não

levam muito tempo para a realização de consultas e vendas.

Como em qualquer outro programa do gênero, os produtos são cadastrados em tabelas

gerenciadas pelo software SQL Server Express 2008, que tem como objetivo gravar informa-

ções que lhe são fornecidas de maneira segura e rápida, durante a venda e na integridade dos

seus dados comerciais.

O sistema conta com uma interface muito intuitiva, construída na linguagem de pro-

gramação Visual Basic através do software Microsoft Visual Studio 2010 e, através dela, o

proprietário pode fazer suas consultas, seus cadastros, exclusões e alterações. Este software

tem uma aplicação que permite informar ao usuário em tempo real a quantidade dos produtos

no estoque, os itens vendidos e os que necessitam serem reposto imediatamente.

Page 7: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

ABSTRACT

This work focused on the creation of computer software for control of products

in stock and also to assist in the sale. Where users do not take much time for consul-

tations and sales.

Like any other program of its kind, the products are registered in tables ma-

naged by SQL Server Express 2008 software, which aims to record informa-tion

supplied to it in a safe and fast during the sale and integrity of your business data .

The system has a very intuitive interface, built in Visual Basic programming

language using the software Microsoft Visual Studio 2010 and through it, the owner

can make your queries, your entries, deletions and changes. This software has an

application to inform the user in real time the amount of products in stock, and sold

the items that need to be replaced immediately.

Page 8: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

LISTA DE ILUSTRAÇÕES

Gráfico 1.1 – Percentual por tamanho de empresas no Brasil .................................................. 8

Gráfico 1.2 – Média de gastos e investimentos em T.I. ........................................................... 8

Figura 1.1 – Entrada da loja ................................................................................................. 11

Figura 1.2 – Área de venda .................................................................................................. 12

Figura 1.3 – Porta de acesso para o estoque e o sanitário ...................................................... 12

Figura 1.4 – Uma das prateleiras da loja ............................................................................... 12

Figura 1.5 – Gôndola ........................................................................................................... 13

Figura 1.6 - Painel canaletado .............................................................................................. 13

Figura 1.7 - Balcão para venda e recebimento ...................................................................... 13

Figura 3.1 – W.B.S.. ............................................................................................................ 22

Figura 3.2 – Cronograma ..................................................................................................... 23

Figura 3.3 – D.E.R. .............................................................................................................. 24

Figura 3.4 – M.E.R. ............................................................................................................. 25

Figura 3.5 – Diagrama de classe ........................................................................................... 26

Figura 3.6 – Diagrama de casos de uso ................................................................................. 28

Figura 4.1 – Tela de login .................................................................................................... 30

Figura 4.2 – Tela de alteração de senha ................................................................................ 31

Figura 4.3 – Tela principal ................................................................................................... 32

Figura 4.4 – Tela de cadastro de produtos ............................................................................ 32

Figura 4.5 – Aba cadastrar da tela principal .......................................................................... 33

Figura 4.6 – Cadastro de categoria de produtos .................................................................... 34

Figura 4.7 – Cadastro da linha de produtos ........................................................................... 34

Figura 4.8 – Cadastro da marca do produto .......................................................................... 34

Figura 4.9 – Cadastro de usuários ......................................................................................... 35

Figura 4.10 – Opção de acesso ao sistema de estoque através da janela principal.................. 36

Figura 4.11 – Janela de configurações de acesso do sistema de estoque ................................ 36

Figura 4.12 – Aba das consultas de estoque da tela principal ................................................ 37

Figura 4.13 – Consulta de categoria ..................................................................................... 38

Figura 4.14 – Consulta de linha ............................................................................................ 39

Figura 4.15 – Consulta de marca .......................................................................................... 39

Figura 4.16 – Consulta geral de produtos ............................................................................. 40

Figura 4.17 – Consulta de usuário (um administrador) ......................................................... 41

Page 9: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

Figura 4.18 – Consulta de usuário (dois administradores) ..................................................... 41

Figura 4.19. – Consulta de vendas ........................................................................................ 42

Figura 4.20 – Aba de manutenção de estoque da tela principal (alteração) ............................ 43

Figura 4.21 – Alteração de categoria .................................................................................... 43

Figura 4.22 – Alteração de linha........................................................................................... 43

Figura 4.23 – Alteração de marca ......................................................................................... 44

Figura 4.24 – Alteração de produto ...................................................................................... 44

Figura 4.25 – Alteração de usuário ....................................................................................... 45

Figura 4.26 – Alteração de venda ......................................................................................... 45

Figura 4.27 – Menu de manutenção de estoque da tela principal (exclusão) .......................... 46

Figura 4.28 – Exclusão de categoria ..................................................................................... 46

Figura 4.29 – Exclusão de linha ........................................................................................... 46

Figura 4.30 – Exclusão de marca .......................................................................................... 47

Figura 4.31 – Exclusão de produto ....................................................................................... 47

Figura 4.32 – Exclusão de itens de venda ............................................................................. 47

Figura 4.33 – Aba de manutenção de estoque da tela principal (atualização) ........................ 48

Figura 4.34 – Janela de atualização do estoque ..................................................................... 48

Figura 4.35 – Aba relatório no menu principal ..................................................................... 49

Figura 4.36 – Tela de relatório de produtos .......................................................................... 49

Figura 4.37 – Tela de relatório de vendas. ............................................................................ 50

Figura 4.38 – Barra de ferramenta dos relatórios .................................................................. 50

Figura 4.39 – Menu principal, tela de acesso ao suporte e ajuda do sistema .......................... 51

Figura 4.40 – Tela de suporte técnico ................................................................................... 52

Figura 4.41 – Tela de login .................................................................................................. 53

Figura 4.42 – Tela de venda ................................................................................................. 53

Figura 4.43 – Tela de consultar produto ............................................................................... 54

Figura 4.44 – Tela de desconto ............................................................................................. 55

Figura 6.1 – Página inicial do SISVE na internet ................................................................ 256

Page 10: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

SUMÁRIO

Capítulo I - A empresa ......................................................................................................... 11

1.1 Estrutura física da empresa ................................................................................ 11

1.2 Equipe ............................................................................................................... 14

1.3 Generalização de venda de produtos .................................................................. 14

Capítulo II – Funcionamento de softwares lojista de produtos avulsos .................................. 15

2.1 Software C-Plus ................................................................................................. 15

2.2 Software Systronic Office Comercial ................................................................. 16

2.3 Software PDV-Master .......................................................................................... 17

2.4 Software TagComércio ......................................................................................... 17

2.5 Software SisAdvenPDV..................................................................................... 18

2.6 Características similares dos softwares pesquisados com o SISVE ..................... 18

Capítulo III – Escopo do projeto .......................................................................................... 20

3.1 Work breakdown structure (WBS) ..................................................................... 20

3.2 Cronograma ....................................................................................................... 23

3 3 Diagrama de Entidade e Relacionamento (DER) ................................................ 24

3.4 Modelo de Entidade e Relacionamento (MER) .................................................. 25

3.5 Diagrama de classe ............................................................................................ 26

3.6 Diagrama de casos de uso .................................................................................. 28

CAPÍTULO IV – Desenvolvimento do projeto ..................................................................... 30

4.1 Principais telas ................................................................................................... 30

4.1.1 Telas de controle de estoque ........................................................................ 30

4.1.2 Telas de controle de vendas ......................................................................... 52

4.2 Banco de dados .................................................................................................. 55

4.2.1 Código de criação do banco de dados e das tabelas ...................................... 56

4.3 Código da aplicação ........................................................................................... 58

4.3.1 Código do controle de estoque..................................................................... 58

4.3.2 Código de controle de vendas .................................................................... 242

Page 11: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

CAPÍTULO V – Requisitos mínimos ................................................................................. 255

CAPÍTULO VI – Site do projeto ........................................................................................ 256

CONCLUSÃO ................................................................................................................... 257

REFERÊNCIAS BIBLIOGRÁFICAS ................................................................................ 258

Page 12: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

8

Introdução

O Brasil possui 5,1 milhões de empresas e estima-se que até 2015 teremos 8,8 milhões,

98% destas são micro e pequenas empresas, conforme se demonstra no gráfico 1.1. Onde con-

centram mais de dois terços das ocupações do setor privado (SEBRAE-SC, 2011).

Gráfico 1.1 – Percentual por tamanho de empresas no Brasil

Para o pequeno empreendedor se manter no mercado necessita focar na qualidade de

seus produtos e serviços. E uma das formas é investindo na informatização do negócio.

Pesquisa mostra que os gastos investidos em tecnologia da informação nas médias e

grandes empresas em 2010 chegaram a quase 8% do faturamento líquido (MEIRELLES,

2011, p. 15). Veja gráfico abaixo:

Gráfico 1.2 – Média de gastos e investimentos em T.I. (MEIRELLES, 2011, p. 15)

Page 13: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

9

Essas duas pesquisas demonstraram basicamente a importância da micro e pequena em-

presa para o Brasil e a importância dada por estas à informatização.

Este trabalho teve como objetivo informatizar a venda e o estoque de uma micro empre-

sa. Foi criado um banco de dados para o controle de estoque dos produtos e um software de

venda. Tornando-a mais eficiente, rápida e organizada.

Em caso de dúvida com relação à alguma venda e ao estoque, apenas consultando o

banco de dados, através do software, tem-se suas dúvidas sanadas.

Os clientes não querem demora no atendimento, o lojista não quer sofrer na hora de ad-

ministrar o seu estoque de produtos.

Foi aplicado ao lojista um questionário (Apêndice A e B) para se ter as primeiras im-

pressões sobre ele e sobre os problemas do seu negócio, sendo esses problemas depois relata-

dos no WBS. Neste documento foi apontado de forma mais sucinta os problemas da empresa.

Em um primeiro momento, ele queria um controle melhor de seus produtos, informava

que possuía grande dificuldade em controlar tudo o que se vendia na loja e também em man-

ter um relatório geral de reposição dos produtos de forma atualizado. Normalmente consulta-

va item por item, anotando manualmente o que precisava ser reposto.

No momento da venda, passava por outro problema, que era saber se haviam produtos

de uma determinada linha e quanto custava. Consultava os preços e as quantidades em um

pequeno caderno de anotações. O que tornava sofrível a administração de seu negócio.

A loja tem uma grande diversidade de produtos avulsos para venda, como pentes, pi-

lhas, lixas de unhas, grampo, entre outros. Cada dia mais se aumenta a quantidade de itens,

tornando-se ainda mais necessário ter o controle eficiente do estoque.

A grande preocupação evidencia-se que é manter o controle de estoque. Antes de propor

a ele uma solução, o mesmo já havia procurado um dos membros do grupo, para criar uma

planilha com sua lista de produtos.

Com base em seus problemas, o grupo decidiu fazer o trabalho de conclusão de curso

em cima desta sua necessidade e foi apresentado como solução um software de banco de da-

dos relacionado à venda com baixa automática de estoque e uso de leitores ópticos, possuindo

campos como nome do produto, descrição do produto, quantidade do produto, data da compra

e entre outros.

Todos os produtos estarão catalogados e disponíveis no momento da venda. Haverá a li-

berdade de fazer consulta, cadastros, inserção e remoção de registros, atualização de todos os

seus produtos, impressão de relatórios, etc.

Page 14: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

10

O lojista poderá identificar os itens que mais vende, e os que menos vendem, se será ne-

cessário fazer descontos, definir melhor qual produto precisará ser reposto imediatamente, a

quantidade de cada tipo de produtos que há em estoque.

A principal ideia é dar-lhe um controle dos produtos a venda de maneira simples e ro-

busta. Com o programa pronto, o único trabalho será cadastrar (inserir) e depois controlar os

dados dos produtos no sistema. Gerenciando assim, uma parte deficiente do negócio.

Page 15: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

11

Capítulo I - A empresa

“Perfumaria da Praça”, empresa fundada em 21 de novembro de 2011, situa-se na Rua

Eugênio Guidugli, número 295, no bairro Jardim Castro Alves, em São Paulo, Capital.

A empresa possui como ramo principal de negócio a venda de cosméticos. Atualmente

sua estrutura é de pequeno porte.

Trabalha com os principais tipos e marcas de cosméticos existentes no mercado.

O projeto foi desenvolvido com ajuda e autorização do presidente da empresa, o Sr.

Valdinei Cruz de Lima, ao qual nos relatou que, apesar do pouco tempo de mercado, pretende

expandir e sabe que a tecnologia da informação vai ajudá-lo, embora hoje ele não disponha de

nenhuma tecnologia para este fim.

1.1 Estrutura física da empresa

Na entrada (figura 1.1) há uma vaga para estacionamento de veículos. As paredes e pi-

sos internos são revestidos com cerâmicas na cor branca.

A empresa possui uma área de venda com trinta e seis metros quadrados (figura 1.2),

um quarto de estoque medindo cinco metros quadrados (Figura 1.3) e um sanitário com três

metros quadrados, possuindo uma área útil total de quarenta e quatro metros quadrados. De

mobiliário, a empresa possui três prateleiras com 14 divisões cada (figura 1.4), três gôndolas

de produtos (figura 1.5), um painel canaletado (figura 1.6) também de exposição de produtos

e com 1 metro de altura por 3 metros de comprimento, além de um balcão utilizado tanto para

exposição de mercadorias, como para fins de guichê de recebimento (figura 1.7).

.

Figura 1.1 – Entrada da loja

Page 16: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

12

Figura 1.2 – Área de venda

Figura 1.3 – Porta de acesso para o estoque e o sanitário

Figura 1.4 – Uma das prateleiras da loja

Page 17: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

13

Figura 1.5 – Gôndola

Figura 1.6 - Painel canaletado

Figura 1.7 - Balcão para venda e recebimento

Page 18: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

14

1.2 Equipe

A empresa é composta por dois funcionários, o Sr. Valdinei Cruz de Lima, que exerce a

função de administrador e vendedor ao mesmo tempo, e por sua esposa que fica no caixa, mas

que às vezes anda pela loja auxiliando nas vendas.

1.3 Generalização de venda de produtos

Diversos são os produtos comercializados pela empresa, somando-se por tipos e mar-

cas, são aproximadamente 600 itens. Os tipos de produtos são:

Para os cabelos: xampus, condicionadores, tinturas, tonalizantes, cremes de tratamen-

tos, modeladores, alisantes, escovas e pentes;

Para o corpo: depiladores, desodorantes, hidratantes, massageadores, óleos corporais,

sabonetes e sais de banho;

Para o rosto: barbeadores, cremes e protetores solares;

Para as mãos: cremes, esmaltes, acetonas, decoração das unhas e acessórios para ma-

nicure;

Para a higiene bucal: escovas, fios, cremes e enxaguadores;

Maquiagens: máscaras, corretivos, batons, brilhos, sombras, lápis para os olhos, bases

facial, removedores de maquiagem, kits e estojos;

Além de perfumes, sabonetes íntimos, talcos para os pés, algodão, espelhos, espara-

drapos, preservativos, absorventes, fraldas descartáveis e lenços umedecidos.

Page 19: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

15

Capítulo II – Funcionamento de softwares lojista de produtos avulsos

Para a decisão sobre quais os softwares iriam ser incluídos na pesquisa, utilizou-se o site

especializado em downloads Baixaki que “segundo o Ibope, é o maior site de tecnologia brasi-

leiro, com 10 milhões de usuários” (TECMUNDO, 2012). Na busca interna deste site buscou-

se pelas palavras chaves “pdv” (ou ponto de venda) e “estoque”, depois disso classificou-se

pela maior quantidade de vezes que cada software foi baixado e selecionou-se os cinco pri-

meiros colocados.

A partir daí, acessou-se a página de internet do desenvolvedor de cada software, consul-

tando os seus manuais e catálogos. Através das informações de suas principais características,

pode-se descobrir o que está sendo oferecido atualmente no mercado relacionado a softwares

lojista de venda avulsa.

O primeiro colocado entre os mais baixados foi o C-Plus- Sistema de Gestão Comercial

Integrado versão 2.1.7.13 com 105.735 downloads. O segundo foi Systronic Office Comercial

versão 9.0 com 65.720 downloads. O terceiro foi o Sistema Programa Automação Comercial

Estoque PDV-Master versão 4.5 com 61.240 downloads. O quarto foi o TagComércio Plus

versão 2008 com 32.010 downloads.E o quinto foi o SisAdvenPDV versão 1.7 com 11.463

downloads.

Todos esses cinco softwares são disponibilizados para baixar em versões Shareware e

ou Trial, isto é, são gratuitos apenas para testes. Possuem limitações de uso e ou tempo de

expiração. Devendo posteriormente, caso o usuário goste, comprar a licença.

2.1 Software C-Plus

De acordo com o site do desenvolvedor VVS (2012), o software C-plus é um sistema

que, tem por finalidade o controle total de um comércio varejista, cuidando da venda e esto-

que, setor financeiro e de expedição.

As principais características são: administração das contas de e-mail para usuários; con-

trole de consignação; emissão de cupom fiscal; ordem de serviço; cadastro de clientes, forne-

cedores e funcionários; contas a pagar e a receber; fluxo de caixa; cobrança bancária; curva

ABC de produtos, clientes e fornecedores; impressão de etiquetas em vários formatos; contro-

le de caixas; controle de cheques; controle de compras; controle de entrega em romaneio e

etiquetagem; mala-direta para clientes e fornecedores; emissão de orçamentos e envio via e-

mail; relatórios e gráficos sintéticos e analíticos; controle de atendimento a clientes; comissão

Page 20: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

16

de vendedores; gerenciamento de recado e envio de mensagens; controle de recibos; backup

automático; fotos para produtos, cliente, fabricante; controle de estoque e controle de equipa-

mentos dos clientes; níveis de status para orçamentos, vendas e ordem de serviços; plano de

contas, forma de pagamento e seção por hierarquia; fluxo de caixa com gráficos, por período

ou plano de contas; produtos compostos, associados e informações de aplicação; cálculo au-

tomático para determinar estoque mínimo; análise do produto por gráfico de vendas, curva

ABC, etc.; criação de classificações para clientes, produtos e fornecedores; layout de relatório

editável por você de forma simplificada; vários filtros para pesquisa de produtos e clientes;

envio de orçamentos, boletos e relatórios por e-mail; ranking de vendedores, clientes, filiais,

produtos, etc.; pedidos de venda por ordem de localização no estoque; gerador de arquivo

para Sintegra e MFD; regras de cálculo de ICMS, IPI e substituição tributária; impressão de

requisição de peças no estoque; reserva de produto no estoque e aviso na tela de venda.

2.2 Software Systronic Office Comercial

De acordo com o site do desenvolvedor Systronic (2012), o software Systronic Office

Comercial, é um software para o gerenciamento e controle da sua empresa, com ferramentas

de produção, gráficos e de lucratividade. Destaca-se pela facilidade de uso e pelos poderosos

recursos que possui, principalmente para usuários leigos, ideal para todo tipo de loja de varejo

e para o comércio em geral. Ainda de acordo com o site do desenvolvedor, o Systronic é um

produto prático e funcional, podendo ser incrementados com a compra de outros módulos de

funções. Por possuir muitos recursos explanaremos apenas os relacionados à venda e estoque,

que são o que efetivamente interessam ao nosso projeto.

As principais características são: emissor de cupom fiscal (ECF); TEF discado (Módulo

Adicional); TEF dedicado (módulo Adicional); geração de parcelas para crediário; controle de

cartões de crédito; controle de cheques a prazo e a vista; controle de comissões de vendedo-

res; busca incremental de produto por qualquer parte do nome; leitura de etiquetas de pesa-

gem de balanças; leitura de código de barras do produto; alteração do preço na hora da venda

configurável; descontos e acréscimos em percentuais e valores no fechamento da venda; cal-

cula o troco automaticamente; desconto além do limite exige senha do gerente ou supervisor;

cancelamento somente com digitação de campo motivo; cancela o último cupom, porém o

valor da venda cancelada permanece para consulta do gerente; calculadora com fita detalhe no

PDV; importação de pedidos para a venda; consulta de preços sem sair do PDV; recebimento

de crediário sem sair do PDV; cliente novo pode ser cadastrado na hora da venda; emite nota

Page 21: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

17

fiscal eletrônica de vendas e serviços (módulo adicional); geração de controle de vendas con-

signadas; impressão de comprovante de entrega; impressão de carnês pré-impresso ou no cu-

pom; impressão de fatura mercantil da venda; remissão do carnê; retiradas do caixa; códigos

de barras que pode ser o do fabricante ou gerado automaticamente pelo sistema para uso in-

terno; número do lote; validade da mercadoria; alíquota de ICMS de compra e de venda, redu-

ção de base de cálculo em percentual, alíquotas para outros estados e PIS, COFINS e ISS;

departamentos, grupos e subgrupos de produtos; cálculo do custo médio; cálculo do preço de

venda; preço promocional até data específica, ao término da promoção e volta ao preço nor-

mal; etiquetas de códigos de barras em impressoras laser, jato de tinta e térmica; composição

de kits de produtos; ranking de produtos mais vendidos relatório onde você escolhe os “dez

mais” ou “vinte mais”. Além do controle de todo o setor financeiro e de compras da empresa.

2.3 Software PDV-Master

De acordo com o site do desenvolvedor Giovane informática (2012), o software Sistema

Programa Automação Comercial Estoque PDV-Master é um programa para automação co-

mercial de pequenos estabelecimentos com controle de caixa, estoque e venda rápida.

As principais características são: controle de caixa; controle de estoque; controle de u-

suário; aceita venda por código simples; código de barras ou descrição; cadastro de clientes;

aceita leitor de código de barras; aceita qualquer impressora não fiscal; imprime direto para

porta LPT1, COM1, rede ou arquivo de texto; emissor de cupom fiscal (impressora fiscal op-

cional); pode trabalhar em rede; configura logomarca na tela principal; faz backup e recupera

backup e gerencia tele-entrega; realiza pagamento parcial e pode ser executado direto de um

pendrive.

2.4 Software TagComércio

De acordo com o site do desenvolvedor Tagsoft (2012), o software TagComércio é um

software para empresas ou profissionais liberais que pode realizar todo o controle e gestão

comercial de um negócio, destacando-se por sua interface amigável, intuitiva e pela total inte-

gração de módulos. Ainda, de acordo com o desenvolvedor, diferentemente do mercado atual,

a empresa Tagsoft, optou por agregar em um só produto os principais sistemas necessários

para uma melhor administração comercial. Com isso, os clientes ganharão em economia, pois

Page 22: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

18

com a aquisição do TagComércio não será necessária a aquisição de "subsistemas" ou aplica-

tivos extras para completar funcionalidades de um sistema principal.

As principais características são: controle de estoque e de vendas; cadastros de clientes

e produtos com foto; cadastros de fornecedores, categoria de produtos, grades e kits de produ-

tos; lançamentos de pedidos de vendas, orçamentos, locações, contas a pagar e a receber; flu-

xo de caixa, com gráficos e relatórios financeiros e gerenciais; geração de etiquetas com códi-

go de barras para produtos e envio de mala-direta para clientes e fornecedores.

2.5 Software SisAdvenPDV

De acordo com o site do desenvolvedor Novavia (2012), “o software SisAdvenPDV é

um sistema para automação comercial completo, [...] parametrizado, podendo se adaptar aos

mais diversos ramos de atividades comerciais.”

As principais características são: cadastro de usuários com nível de acesso limitado con-

trolado pelo administrador do sistema; emissão de vendas e orçamentos, na mesma tela; venda

através de leitor de código barras ou pesquisa rápida por descrição via teclado; emissão de

cupom fiscal configurável; impressão de pedidos em cupom não fiscal ou em formulário con-

tinuo; cadastro de clientes com opção de bloqueio de clientes inadimplentes; cadastro de pro-

dutos; controle de estoque; fornecedores; controle de vendas; entrada de mercadorias; fluxo

de caixa; contas a receber, pagar e pendentes; relatório sobre quanto sua loja realmente está

lucrando por período; listagem de produtos mais vendidos; tabela de preços; total do patrimô-

nio em estoque; gráficos de estatísticas de vendas e crescimento por período; parametrização

de diversas operações; completo sistema de segurança com senhas, que proporciona um con-

trole dos acessos a todos aos módulos do sistema;backup; funcional em um único computador

independente ou em rede e funções de uso rápido via teclado ou mouse.

2.6 Características similares dos softwares pesquisados com o SISVE

Dentre as características de cada um dos cinco programas acima descritos, as que pos-

suem parecidas no SISVE - Sistema de Controle e Estoque são:

No Software C-Plus: emissão de cupom; fluxo de caixa; clientes e fornecedores; contro-

le de caixas; relatórios; controle de estoque; forma de pagamento e seção por hierarquia; cál-

culo automático para determinar estoque mínimo; criação de classificações para produtos;

Page 23: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

19

layout de relatório editável por você de forma simplificada; vários filtros para pesquisa de

produtos; ranking produtos; reserva de produto no estoque e aviso na tela de venda.

No Software Systronic Office Comercial: busca incremental de produto por qualquer

parte do nome; leitura de código de barras do produto; alteração do preço na hora da venda

configurável; descontos e acréscimos em percentuais e valores no fechamento da venda; cal-

cula o troco automaticamente; cancelar o último cupom, porém o valor da venda consulta de

preços sem sair do PDV; impressão de comprovante de entrega e ranking de produtos mais

vendidos relatório onde você escolhe os “dez mais” ou “vinte mais”.

No Software PDV-Master: controle de caixa; controle de estoque; controle de usuário;

aceita venda por código simples; código de barras ou descrição; cadastro de clientes; aceita

leitor de código de barras; aceita qualquer impressora não fiscal; imprime direto para porta

LPT1, COM1, rede ou arquivo de texto.

No Software TagComércio: controle de estoque e de vendas; cadastro de produtos; cate-

goria de produtos e fluxo de caixa com relatórios financeiros.

No Software SisAdvenPDV: cadastro de usuários com nível de acesso limitado contro-

lado pelo administrador do sistema; venda através de leitor de código barras ou pesquisa rápi-

da por descrição via teclado; impressão de pedidos em cupom não fiscal ou em formulário

continuo; cadastro de produtos; controle de estoque; controle de vendas; entrada de mercado-

rias; fluxo de caixa; tabela de preços; total do patrimônio em estoque; completo sistema de

segurança com senhas, que proporciona um controle dos acessos a todos aos módulos do sis-

tema.

Page 24: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

20

Capítulo III – Escopo do projeto

Neste capítulo será descrito o modelo de dados, além da análise de acordo com a pes-

quisa realizada, identificando as problemáticas e a real necessidade que se encaixaram no pro-

jeto final.

3.1 Work breakdown structure (WBS)

No projeto do WBS (Figura 3.1) foram definidas quatro etapas principais: Visão, Plane-

jamento, Desenvolvimento e Estabilização.

Na Visão há:

Pesquisa: feita no estabelecimento comercial, com a intenção de verificar a necessida-

de de um software e seus requisitos funcionais. Ela foi importante para um desenvolvimento

com foco nas soluções dos problemas que se apresentaram. Aplicamos um questionário ao

lojista, disponível nos Apêndices A e B.

O Planejamento é composto por:

Cronograma: Na figura 3.2 ficam demonstradas as tarefas e os tempos para as suas e-

xecuções.

Diagrama de entidade e relacionamento - Representa-se na figura 3.3 a estrutura do

banco de dados que seria construído para o projeto.

Diagrama de caso de uso: Mostra os atores e suas funções dentro do sistema. Disponí-

vel na figura 3.6.

Diagrama de classes: A figura 3.5 exibe a estrutura das relações das classes.

Modelo de entidade e relacionamento: Na figura 3.4 verifica-se as ações de um usuário

no sistema por este tipo de modelo.

Já o Desenvolvimento é composto por:

Page 25: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

21

Banco de Dados: Elaborado a partir do Diagrama de Entidade e Relacionamento

(DER).

Interface gráfica: Foi desenvolvida pelo software Visual Studio 2010.

Testes: Foram ocorrendo ao longo de todo o desenvolvimento.

E a Estabilização composta por:

Implementação: instalação do sistema na loja.

Treinamento: Explicação detalhada do uso e acompanhamento in loco ou via suporte

por e-mail ou telefone.

Page 26: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

22

Figura 3.1 – W.B.S..

Page 27: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

23

3.2 Cronograma

Figura 3.2 – Cronograma

Page 28: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

24

3 3 Diagrama de Entidade e Relacionamento (DER)

Figura 3.3 – D.E.R.

Page 29: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

25

3.4 Modelo de Entidade e Relacionamento (MER)

Figura 3.4 – M.E.R.

ATENDENTE

(usuario)

FAZ VENDA

ITENS

VENDA

CATEGORIA

PRODUTOS

POSSUI

TEM

MARCA

POSSUI

POSSUI

FORMA

PAGAMENTO

POSSUI

POSSUI

1, n

n, n

1, n

n, n

1, n n, n

n, n

n, n

1, n

n, n

1, 1

1, 1

PODE

SER

1, 1

1, 1

1, 1

LINHA

1, n

Page 30: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

26

3.5 Diagrama de classe

Figura 3.5 – Diagrama de classe

atendente

+cod_atendente integer+nome_atendente vachar+cpf_atendente integer+rg_atendente integer

+cadastrar()

produtos

+cod_produtos integer+cod_barras integer+nome_produtos varchar+descrição_produtos varchar+vlr_unitario float+qtde_estoque integer

+informar()+incluir()+excluir()+atualizar()

categoria

+cod_categoria integer+categoria varchar

+informar()+atualizar()+incluir()+excluir()

marcas

+cod_marcas integer+nome_marcas varchar

+informar()+atualizar()+incluir()+excluir()

vendas

+cod_vendas integer+data-venda date

+informar()+descontar()

1..*

*1..*

1

*

*

forma_pagamento

+cod_pagamento integer+pagamento_cartao float+pagamento_cheque float+pagamento_dinheiro float

+informar()+descontar()+cobrar()

login

+cod_login_adm integer+nome_login_adm varchar(15)+senha_login_adm varchar(8)+alt_categoria int+alt_linha int+alt_marca int+alt_itens_venda int+alt_usuario int+alt_venda int+exc_categoria int+exc_linha int+exc_marca int+exc_itens_venda int+exc_usuario int+exc_venda int+cad_categoria int+cad_linha int+cad_marca int+cad_itens_venda int+cad_usuario int+cad_venda int+atualizar int+relatorio int

+acessar_banco()+alterar_banco()+incluir()+excluir()+cadastrar()+atualiza()+consulta()+cadastra_venda()+cancela_venda()+exclui_venda()

itens_venda

+cod_itens_venda integer+qtde_venda integer+vlr_total float

linha

+cod_linha integer+nome_linha varchar

+informar()+atualizar()+incluir()+excluir()

*

*

*

*

Page 31: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

27

No diagrama de classe, representaram-se as entidades do sistema. Suas operações e seus

atributos. Cada uma das entidades deve obedecer às operações construídas neste diagrama,

seus atributos são a forma que identificaram a entidade no sistema. Com base no diagrama as

operações ficaram limitadas para o usuário, mas para o administrador não. Estas ações estão

definidas de acordo com o ilustrado no diagrama acima.

Essa construção foi feita com base no diagrama de caso de uso. Esse diagrama traz a i-

deia de como se trabalha com os atributos, suas codificações e onde cada atributo deverá de-

pender de sua entidade.

Page 32: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

28

3.6 Diagrama de casos de uso

Figura 3.6 – Diagrama de casos de uso

Page 33: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

29

O diagrama da loja de cosmético, criado através do programa Diagram Design versão

1.23, mostra como se comporta o sistema no momento da venda, o seu sistema contará com

apenas dois atores: o gerente e a forma de pagamento.

Conforme se informa no diagrama de casos de uso, o sistema conta com forma de pa-

gamento dando-lhe opções de pagamento em dinheiro, cartão ou cheque, além de opção de

desconto. Há informações dos produtos, cadastro, atualização, exclusão, inclusão, entre ou-

tras.

O que se retrata no caso de uso acima é como o sistema deverá se comportar diante dos

usuários.

Page 34: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

30

CAPÍTULO IV – Desenvolvimento do projeto

Neste capítulo será ilustrado todo o desenvolvimento do projeto, telas e funcionamento,

além dos códigos aplicados.

4.1 Principais telas

Serão apresentadas a seguir as telas do SISVE divididas em duas parte: Estoque e Ven-

das.

4.1.1 Telas de controle de estoque

Na Tela Login o usuário poderá usar a opção Alterar senha, que está disponível só antes

de se logar no sistema, mas para isto precisará saber a senha antiga para modificá-la.

Figura 4.1 – Tela de login

No momento em que “Cadastro ADM” estiver desabilitado é porque já existe um login

cadastrado e este usuário já cadastrado é o administrador do sistema. Caso não haja nenhum

login cadastrado, o sistema libera o “Cadastro ADM”. A senha do usuário pode ser alterada

de acordo com o login informado e senha antiga. É de fundamental importância que apenas o

administrador utilize a sua senha e o seu nome de usuário, pois é com tal recurso que o admi-

nistrador controla todo o software. Nenhum outro usuário pode consultar a senha dos demais,

apenas o administrador do sistema. Caso o administrador esqueça a sua própria senha, ele terá

de entrar em contato com a equipe de suporte técnico para fazer a recuperação.

Page 35: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

31

Nesta tela qualquer um dos usuários poderá alterar a sua senha. Ele digitará o nome do

usuário e a senha antiga, digita a nova senha e clica em alterar. Depois que alterar, clique em

cancelar e a tela de login será exibida novamente.

Figura 4.2 – Tela de alteração de senha

Na Tela Principal, o usuário pode, clicando em:

Botão Cadastrar: abrir a tela de cadastro de produtos.

Botão Excluir: abrir a tela de exclusão de produtos.

Botão Consulta: abrir a tela de consulta de produtos. A consulta é de forma geral, onde

todos os itens poderão ser consultados.

Botão Relatório: abrir a tela de relatório. O usuário poderá imprimir relatórios de pro-

dutos.

Botão Sair: encerrar o programa. Antes de sair o usuário ainda terá a opção de cance-

lar o encerramento se clicar no botão Sair.

Page 36: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

32

Figura 4.3 – Tela principal

As informações contidas no rodapé do software são meramente demonstrativas: mos-

tram o nome do usuário que está logado naquele momento, a data e a hora.

A Tela de cadastro é carregada no momento em que o usuário escolhe a opção Cadas-

tro. Ela possui os seguintes recursos:

Figura 4.4 – Tela de cadastro de produtos

Botão Consultar: para abrir a tela de Consulta de Geral de Produtos, caso houver a

necessidade em consultar algum item.

Os campos Marca, Linha e Categoria: cadastra em outra tela do software, mas se o

usuário digitar as teclas de atalho Ctrl+A, abrirá a tela de cadastro da Marca, Ctrl+T abrirá a

Page 37: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

33

tela de cadastro da Categoria e Ctrl+L abrirá a tela de cadastro da Linha. Esses três campos

ficam desabilitados, porém o usuário poderá selecionar os dados que ali estão para efetuar o

cadastro.

Botão Limpar: apaga todos os dados dos campos. Já os campos que estiverem no mo-

mento bloqueados, não serão apagados. A utilidade desta função no software é a de que o

usuário não precise apagar os dados de cada um dos campos, mas nada o impede de fazer essa

ação. O intuito é melhorar o cadastro, evitado que o usuário precise ir a cada campo e para

apagar determinada informação.

Botão Retornar ao Menu Principal: é um recurso intuitivo, quando clicado, a tela de

cadastro é fechada e o menu principal fica a disposição para se efetuar algo pertinente aos

módulos disponibilizados na tela principal.

Botão Cadastrar: após preencher todos os campos, o usuário pode clicá-lo, com isso o

item em questão será cadastrado.

Produto Sem Cod. Barras: para os itens sem código de barras o usuário pode selecio-

nar essa opção, com isso o software gerará um número automático para o item que for cadas-

trado. Esse número gerado automaticamente não terá repetição.

No momento do cadastro o usuário digitava as teclas de atalho para cadastrar a linha, a

marca e a categoria. No menu principal isso pode ser feito para a maioria dos módulos do

sistema com o Menu Cadastro, Menu Configurações, Menu Consulta e Menu Relatório. Mais

adiante serão demonstradas essas teclas bem como suas serão exibidas as imagens.

Figura 4.5 – Aba cadastrar da tela principal

Page 38: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

34

Nesse menu Cadastrar, há opções como mostrada na figura abaixo. Os itens deste menu

estão habilitados de acordo com as configurações de sistema que o administrador previamente

já havia escolhido. As opções são:

Nova Categoria, Nova Linha e Nova Marca: o menu de cadastro de ambas opções é

carregada de acordo com a escolha do usuário.

Figura 4.6 – Cadastro de categoria de produtos

Figura 4.7 – Cadastro da linha de produtos

Figura 4.8 – Cadastro da marca do produto

Produto: é equivalente ao clique no botão Cadastrar. O formulário de cadastro de pro-

dutos será carregado. Conforme Figura 4.4.

Usuário: o administrador poderá cadastrar usuários para o sistema, bem como suas con-

figurações de acordo com a figura 4.10 e 4.11.

Page 39: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

35

Figura 4.9 – Cadastro de usuários

Os cadastramentos estão disponíveis através do menu principal na aba Cadastrar (Figu-

ra 4.5), clicando na opção desejada ou usando teclas de atalho, são elas:

Cadastro de Categoria (Figura 4.9): teclas de atalho CTRL+T;

Cadastro da Linha de Produtos (Figura 4.7): teclas de atalho CTRL+L;

Cadastro da Marca do Produto (Figura 4.8): teclas de atalho CTRL+A;

Cadastro de Produtos (Figura 4.4): teclas de atalho CTRL+D;

Cadastro de Usuários (Figura 4.9): teclas de atalho CTRL+U.

O campo Código Usuário e o botão Consultar estão desabilitados porque esta ação se-

rá feita nas opções Alteração e Exclusão. As telas acima são executas de acordo com a esco-

lha do usuário (Figura 4.5).

Na tela a seguir, aparece a aba de Acesso do Sistema, é nela que são configurados os

tipos de acesso ao sistema. Lembrando que o usuário administrador não é consultado em ne-

nhum módulo do sistema.

Page 40: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

36

Figura 4.10 – Opção de acesso ao sistema de estoque através da janela principal

Na Figura 4.10 o usuário administrador, assim configurado, clicando na opção ou digi-

tando CRLT+S entra na janela de Configurações de Acesso do Sistema de Estoque (Figura

4.11).

Figura 4.11 – Janela de configurações de acesso do sistema de estoque

Page 41: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

37

Nesta janela, o administrador consulta o usuário e logo depois configura os acessos do

sistema, salvando as suas configurações.

O botão Salvar só poderá ser desabilitado quando todos os campos forem preenchidos

com a consulta. Sendo assim, o responsável por essa configuração deverá antes consultar o

usuário que necessita alterar os acessos para depois salvar. Deve-se resaltar que caso o res-

ponsável deixar os campos dos acessos em branco, o usuário poderá fazer apenas consultas.

Na tela abaixo (Figura 4.12). A aba Consulta demonstra os itens que poderão ser con-

sultados.

Figura 4.12 – Aba das consultas de estoque da tela principal

Na Figura 4.12 os formulários podem ser carregados de acordo de acordo com a esco-

lha, ou seja, eles poderão ser carregados clicando ou digitando determinadas teclas de atalho e

que são exibidas no menu suspenso.

Consultar Categoria (Figura 4.13): teclas de atalho CTRL+C;

Consultar Linha (Figura 4.14): teclas de atalho CTRL+L;

Consultar Marca (Figura 4.15): teclas de atalho CTRL+M;

Consultar Produto (Figura 4.16): teclas de atalho CTRL+D;

Consultar Usuário (figuras 4.17 e 4.18): teclas de atalho CTRL+U;

Consultar Vendas (Figura 4.19): teclas de atalho CTRL+V;

Essas teclas auxiliam no momento que se necessita consultar um determinado item, evi-

tando que o usuário tenha que clicar no menu e em seguida clicar no tipo de consulta que de-

Page 42: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

38

seja fazer. Salientando que a consulta de usuário só poderá ser feito pelo administrador ou por

um usuário assim configurado.

As telas de consultas do sistema SISVE são as seguintes:

Figura 4.13 – Consulta de categoria

A Figura 4.13 traz os itens disposto na tela para visualização. O usuário poderá fazer

as suas consultas digitando no campo superior em cor branca, e o item requerido será exibido

na parte inferior da tela.

Se consulta pelo código ou pelo nome da categoria do produto. Caso queira saber o úl-

timo produto cadastrado é só marcar a opção Ordem Decrescente e o último registro será exi-

bido primeiro, bem como os demais itens dispostos do menor para o maior. Já em Ordem Al-

fabética, como o próprio nome já diz, organiza em ordem alfabética. Lembrando que estas

ações modificam a forma como serão exibidas, com isso a pesquisa que havia sido feita, não

será levada em consideração, no entanto não é necessário apagar a informação digitada, caso

desmarque o tipo de ordenação a consulta se manterá como já havia sido feita.

Importante: Nenhuma das duas opções de ordenação fica marcadas por igual, ou seja,

não poderá ser feita duas ordenações ao mesmo tempo.

Ao clicar no botão Sair à tela é fechada e o menu principal se mantém em execução. O

sistema não é fechado direto.

Page 43: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

39

A informação acima discriminada para a tela Consulta de categoria (Figura 4.13) são

as mesmas para estas telas denominadas Consulta de linha (Figura 4.14), Consulta de marca

(Figura 4.15) e também para as outras que a seguir serão demonstradas.

Figura 4.14 – Consulta de linha

Figura 4.15 – Consulta de marca

Page 44: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

40

Os critérios de pesquisa e ordenação são válidos para as todas as telas de pesquisa, exce-

to para a de Consulta geral (Consulta de geral de produtos).

Clicando na aba Consulta de Produtos ou no botão Consultar, ambos disponíveis na te-

la principal, haverá o acesso a consulta geral de produtos, assim como demonstrado na tela

abaixo.

Figura 4.16 – Consulta geral de produtos

Nesta figura 4.16 os campos em branco são para pesquisa. A regra para a ordenação se

mantém, apenas para enfatizar, esta regra é válida para todas as telas.

Neste formulário, assim como nos outros, os itens são exibidos conforme cadastrado no

banco de dados. As opções aqui presentes são as de Produto, Categoria, Marca, Linha, Data,

Descrição, Código de barras, Código do produto, Valor unitário e Quantidade em estoque.

Caso alguma informação não esteja presente conforme mostrado acima, você pode mover a

barra de rolagem no rodapé da janela para a direita ou dependendo da quantidade de registro

tanto para direita quanto para baixo.

Em Data, deve digitar a data sem que seja preciso inserir a barra (/) ou o traço (-), mas o

usuário poderá digitar sem problema algum, já que o sistema conta com autopreenchimento

de data, ou seja, apenas é preciso digitar o número da data. Caso os dados pesquisados fiquem

em branco, significa que não há registros com o critério de pesquisa.

Page 45: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

41

Antes de explicar detalhadamente sobre a próxima tela, observe que há uma caixa de

verificação de senha, porém a senha não aparece. Esta ação é de exclusiva visualização do

usuário administrador.

Figura 4.17 – Consulta de usuário (um administrador)

Nenhum outro usuário poderá visualizar este campo, mesmo que seja configurado um

segundo usuário administrador, este campo não ficará visível para ele.

Observação: para as caixas de verificação, apenas os tipos de ordenação podem ficar

uma por vez. A caixa de Senhas pode e deve ficar habilitada para que seja possível a visuali-

zação da senha. Caso não queira, deixe-a desabilitada como demonstra a tela 17, e o campo

senha não aparecerá.

Observe que na Figura 4.18 a opção Senhas não aparece.

Figura 4.18 – Consulta de usuário (dois administradores)

Page 46: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

42

Para que a senha seja exibida, o usuário administrador terá que habilitar o campo Se-

nhas. Lembrando que a senha ou o login do administrador não aparecem nesta tela.

Continuando neste módulo de consulta, será agora explicada a tela Consulta de venda.

Seguindo sempre as mesmas configurações das caixas de verificação, já explicadas anterior-

mente. Há uma barra de rolagem na imagem, ou seja, ainda tem campos para ser exibidos,

neste caso, o usuário pode rola a esta barra para a direita para visualizar os demais campo.

Figura 4.19. – Consulta de vendas

Como já explicado, as ordenações se aplicam a esta tela também. Os campos que poderá

ser feito as pesquisas no formulário são: Produto, Cód.barras, Pagamento, Vendedor,

Val.Total, Quant.Venda, Hora, Data, Quant.Item, Total_Venda.

A tela abaixo demonstra os itens de alterações, dentro da aba Manutenção. Neste menu,

o usuário clicando em um dos itens para alteração terá uma tela carregada com a opção esco-

lhida.

Page 47: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

43

Figura 4.20 – Aba de manutenção de estoque da tela principal (alteração)

Figura 4.21 – Alteração de categoria

A tela 21 existe dois campos, o código da categoria e o seu nome. A consulta pode ser

feita pelos dois campos. No Código categoria informe o número a ser pesquisado e no Nome

da Categoria informe o nome da categoria ou alguma letra que seja referente a ela. O botão

Alterar só será habilitado quando houver a consulta e o botão Limpar apaga os dados dos

campos e habilita o campo código e desabilita o botão Alterar. Quando é consultado, o pri-

meiro campo fica desabilitado, mas poderá prosseguir com a sua consulta no segundo campo.

Ao fazer outra consulta, o primeiro campo é substituído com o código do item pesquisado.

O primeiro campo (Código Categoria) fica desabilitado depois que consultado porque

o código não pode ser alterado.

Quando clicado em Limpar, o botão Alterar é desabilitado por motivo de segurança para

não haver alterações inválidas, ou seja, campos nulos. Embora o software não permita este

tipo de alteração, é um recurso a mais que lhe assegura as informações de seu produto.

As explicações aqui abordadas são mantidas para as figuras 4.22, 4.23, 4.24, 4.25 e

4.26.

Figura 4.22 – Alteração de linha

Page 48: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

44

Figura 4.23 – Alteração de marca

Figura 4.24 – Alteração de produto

Na Figura 4.25, o campo Senha e Confirmação de senha ficam desabilitados porque es-

ta ação pode ser feita apenas na Figura 4.1, onde o usuário pode clicar em Alteração de senha.

Page 49: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

45

Figura 4.25 – Alteração de usuário

Figura 4.26, as caixas de verificação ficarão habilitadas assim que for feita uma pesqui-

sa. Neste formulário podem-se habilitar as três caixas de verificação ao mesmo tempo. Para

efetuar a alteração e para executar uma segunda consulta deve clicar em Limpar e os campos

ficarão habilitados.

Figura 4.26 – Alteração de venda

Page 50: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

46

Figura 4.27 – Menu de manutenção de estoque da tela principal (exclusão)

A tela acima demonstra os itens de exclusão. Nela, como na anterior, o usuário ao clicar

em um dos itens, uma tela será carregada com a opção que devidamente se relacionam ao item

escolhido. Como na figura 4.21, as configurações se mantêm para as telas de exclusão e atua-

lização, com algumas características que serão abordadas na tela de atualização.

Figura 4.28 – Exclusão de categoria

Figura 4.29 – Exclusão de linha

Page 51: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

47

Figura 4.30 – Exclusão de marca

Figura 4.31 – Exclusão de produto

Nesta tela denominada de Exclusão de itens de venda há campos com nome do produ-

to, quantidade em estoque e valor do produto. No momento em que for excluir os campos ao

lado não será excluída do banco, pois é meramente informativo.

Figura 4.32 – Exclusão de itens de venda

Page 52: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

48

A tela abaixo demonstra o item Atualizar produto. Esta função permite que atualize-se a

quantidade de um determinado produto.

Figura 4.33 – Aba de manutenção de estoque da tela principal (atualização)

Clicando, abre-se uma janela, como demonstrado abaixo, onde o usuário poderá fazer

as atualizações, quando necessária, das quantidades de produtos no estoque. Esta opção ape-

nas realiza a soma do estoque antigo com a nova quantidade informada.

Figura 4.34 – Janela de atualização do estoque

Page 53: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

49

Figura 4.35 – Aba relatório no menu principal

Conforme o que se ver na figura 4.35, localizada no Menu Principal possui a aba Rela-

tório, onde se apresenta o sub-menu de acesso ao relatório de Estoque (Produto) e o de Ven-

da. Eles também possuem tecla de atalho: Ctrl+R, acessa o relatório de Estoque e Ctrl+N

acessa o relatório de Vendas. Clicando em um dos itens dos relatórios ou digitando as teclas

de atalho você terá acesso aos relatórios já informados aqui e conforme está demonstrado nas

figuras 4.36 e 4.37.

Figura 4.36 – Tela de relatório de produtos

Page 54: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

50

Figura 4.37 – Tela de relatório de vendas.

Figura 4.38 – Barra de ferramenta dos relatórios

Na barra de ferramenta ilustrada na figura 4.38, há os botões:

Usado para consultar itens no relatório;

Para aumentar a resolução;

Imprimir;

Atualizar;

Importar (para qualquer outro tipo de arquivo mudando apenas a sua extensão);

E há o campo de número de páginas, o usuário

poderá digitar o número das páginas ou usar as setas de navegação. Atenção o usuário deverá

ter quando no campo de número de páginas estiver /1+, isto significará que haverá mais pági-

nas a serem visualizadas ou impressas. Caso não tiverem as setas de navegação, ficarão desa-

bilitadas e o número de página /1+ ficará como /1, o sinal de + aparece porque não haveria

mais de uma página para ser impressa.

Page 55: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

51

Figura 4.39 – Menu principal, tela de acesso ao suporte e ajuda do sistema

No item mostrado na figura 4.39, o usuário poderá acessar o suporte técnico enviando

um e-mail para sanar dúvidas sobre o uso do sistema.

Na figura 4.40 exibe-se a tela de solicitação de suporte. Nela, o usuário deverá infor-

mar no campo determinado os seguintes itens:

Nome: O usuário deve inserir seu nome para que o suporte possa entrar em contato di-

retamente com a pessoa que estava com a dúvida ou problema.

E-mail: O usuário deve inserir seu e-mail para que o suporte possa entrar em contato

diretamente com a pessoa que estava com a dúvida ou problema.

Assunto: O usuário deverá inserir um assunto para mensagem agilizando assim o en-

tendimento e o atendimento do suporte. Poderá informar sobre o módulo do sistema ao qual

ele tem dúvida, como por exemplo: cadastro de categoria, linha, marca, produto, consultas,

etc.

Mensagem: O usuário deve inserir a mensagem com a sua dúvida ou problema, des-

crevendo o máximo de informações possíveis para um melhor entendimento agilizando assim

o atendimento do suporte.

Barra de Progresso: Demonstrativo gráfico do progresso de envio da mensagem.

Botão Enviar: Envia a mensagem com todos os dados para o suporte SISVE.

Page 56: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

52

Figura 4.40 – Tela de suporte técnico

Com base nisso o suporte entrará em contato com o usuário e sanará as suas dúvidas de

acordo com a sua solicitação. A opção de envio de suporte também está disponível no contro-

le de venda do SISVE.

4.1.2 Telas de controle de vendas

Na tela de login do controle de vendas, há:

Campo de Login: O usuário deverá informar o seu login previamente cadastrado no

sistema.

Campo de Senha: O usuário deverá informar o sua senha previamente cadastrada no

sistema.

Botão Entrar: Após preencher os campos acima, o usuário deverá clicar em entrar pa-

ra ter acesso ao sistema. Note que se ele não preencher algum dos campos de login ou senha,

o sistema irá avisá-lo.

Page 57: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

53

Figura 4.41 – Tela de login

Figura 4.42 – Tela de venda

Na tela de vendas, possuem as seguintes opções:

Aba suporte: Acessa a tela de suporte caso o usuário tenha algum problema ou dificul-

dade com o sistema, conforme já explicado.

Barra de Produtos: Exibe informações dos produtos que estão sendo adicionadas à

compra.

Page 58: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

54

Cupom de Venda: Demonstrativo das informações dos produtos e da venda em tempo

real que é impresso ao final da transação.

Botão Consultar Produto: Para ocasiões em que o usuário desejar saber o valor ou a

quantidade disponível em estoque de um determinado produto.

Botão Abrir Venda: O usuário deverá sempre clicar neste botão ao início de cada ven-

da.

Botão Excluir Item: Caso o usuário desejar excluir algum item da venda após ter inclu-

ído o item no cupom, basta selecioná-lo e clicar em excluir item.

Botão Cancelar Venda: Caso o usuário desejar excluir algum item da venda após ter

incluído no cupom de venda, basta selecioná-lo no cupom de venda e clicar em excluir item.

Botão Desconto: Caso o usuário desejar dar um desconto no valor final da venda.

Botão Fechar Venda: Finaliza a venda e imprime o cupom.

Figura 4.43 – Tela de consultar produto

A tela para consultar produtos, tem:

Campo Cod. de Barras: O usuário deve inserir o código de barra e clicar em consultar

(ou apertar enter) para consultar as informações do produto.

Campo Produto: Exibe o nome do produto de acordo com a consulta pelo código de

barras.

Campo Preço: Exibe o preço do produto de acordo com a consulta pelo código de bar-

ras.

Campo Quantidade: Exibe a quantidade restante no estoque do produto de acordo com

a consulta pelo código de barras.

Page 59: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

55

Botão Consultar: Realiza consulta do produto pelo código de barras e exibe as infor-

mações nos respectivos campos.

Botão Limpar: Limpa todos os campos.

Figura 4.44 – Tela de desconto

A tela para conceder desconto ao clientes, possui:

Campo Porcentagem: O usuário deve inserir a porcentagem do desconto que deseja e

clicar em calcular (ou dar enter) para atualiza o valor total.

Campo Valor Total: Aqui o usuário pode alterar o valor final da compra manualmente,

efetuando assim o desconto desejado.

Botão Alterar: Quando o usuário já tiver calculado ou inserido o valor do desconto de-

ve clicar em alterar para que o sistema retorne ao tela de venda com o valor alterado.

4.2 Banco de dados

Para o gerenciamento do banco de dados do SISVE foi utilizado a ferramenta SQL 2008

Server Express versão 10 desenvolvida pela empresa Microsoft. De acordo com o site oficial,

“ela é um sistema de gerenciamento de dados avançado, que oferece um rico conjunto de re-

cursos, proteção de dados e desempenho para clientes de aplicativos incorporados” (MICRO-

SOFT, 2009). Além disso, possui distribuição gratuita, podendo ser disponível juntamente

com aplicativos.

Page 60: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

56

4.2.1 Código de criação do banco de dados e das tabelas

Abaixo está o script em SQL do banco de dados do SISVE devidamente comentado, on-

de demonstram-se a criação do banco de dados e de suas tabelas:

--Criação do banco de dados lojacosmeticos

create database lojacosmeticos;

--Criação da tabela marcas

create table marcas

(cod_marca int primary key not null auto_increment,

nome_marca varchar(255) not null);

--Criação da tabela linha

create table linha

(cod_linha int primary key not null auto_increment,

nome_linha varchar (255) not null);

--Criação da tabela categoria

create table categoria

(cod_categoria int primary key not null auto_increment,

nome_categoria varchar (255) not null);

--Criação da tabela produtos

create table produtos

(cod_produto int primary key not null auto_increment,

cod_barras int not null,

nome_produto varchar (255) not null,

descricao_produto varchar (255),

vlr_unitario float not null,

qtde_produto int not null,

cod_marca int not null,

cod_linha int not null,

cod_categoria int not null,

foreign key (cod_marca) references marcas(cod_marca),

foreign key(cod_linha) references linha(cod_linha),

foreign key(cod_categoria)references categoria(cod_categoria));

--Criação da tabela login

Page 61: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

57

create table login

(cod_login int not null primary key auto_increment,

nome_login varchar (20) not null,

senha varchar (8) not null,

alt_categoria int,

alt_linha int,

alt_marca int,

alt_itens_venda int,

alt_usuario int,

alt_venda int,

exc_categoria int,

exc_linha int,

exc_marca int,

exc_itens_venda int,

exc_usuario int,

exc_venda int,

cad_categoria int,

cad_linha int,

cad_marca int,

cad_itens_venda int,

cad_usuario int,

cad_venda int,

atualizar int,

relatorio int);

--Criação da tabela usuario

create table usuario

(cod_usuario int null primary key auto_increment,

nome_usuario varchar (50),

cpf_usuario varchar(14),

rg_usuario varchar (14),

cod_login int not null,

foreign key(cod_login)references login(cod_login));

--Criação da tabela venda

create table venda

Page 62: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

58

(cod_venda int primary key not null auto_increment,

data_venda date not null,

hora_venda time not null,

cod_usuario int not null,

vlr_total_venda float,

foreign key (cod_usuario) references usuario(cod_usuario));

--Criação da tabela itens_venda

create table itens_venda

(cod_item int not null primary key auto_increment,

cod_venda int not null,

cod_produto int not null,

qtde_item int not null,

vlr_total_item float not null,

foreign key (cod_venda) references venda(cod_venda),

foreign key (cod_produto) references produtos (cod_produto));

--Criação da tabela forma_pagamento

create table forma_pagamento

(cod_pagamento int primary key not null auto_increment,

tipo_pagamento varchar (30) not null,

cod_venda int not null);

4.3 Código da aplicação

No código de criação estão os códigos devidamente comentados e desenvolvidos na lin-

guagem Visual Basic pelo Visual Studio versão 2010 dos dois módulos da aplicação: Estoque

e Venda.

4.3.1 Código do controle de estoque

**********************************************************************

'TELA DE LOGIN

'**********************************************************************

LOGIN.VB

Page 63: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

59

'

Public Class login

Dim nomeuser, senha, nome_do_login As Object

Dim contadoru, contadors As Integer

Public Function tabela_login_vazia() 'função para verificar se há login cadastro na ta-

bela login

Try ' tratativa de erro do formulário

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'variavel de conexão

con.Open() 'abri o banco

cmd.CommandText = "select * from login" 'consulta do banco de dados

reader = cmd.ExecuteReader() 'comando para executar a reader

If reader.Read Then 'condição, se houver cadastro de login a linklabel é dasabili-

tada

LinkLabel2.Enabled = False

LinkLabel1.Enabled = True

Else

LinkLabel2.Enabled = True 'se não houver nenhum cadastro a link label é ha-

bilitada.

LinkLabel1.Enabled = False

End If

reader.Close() 'fecha a reader

con.Close() 'fecha a conexão

Catch ex As Exception

End Try

Return 1

End Function

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button1.Click

Try ' trataviva de erro do formulário

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'variavel de conexão

Page 64: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

60

con.Open() 'abri o banco

cmd.CommandText = "select * from login where nome_login = '" & Text-

Box1.Text & "'" 'consulta do banco de dados

reader = cmd.ExecuteReader() 'comando para executar a reader

reader.Read() 'variável reader para ler os dados selecionado na select

nomeuser = reader("nome_login")

senha = reader("senha")

nome_do_login = reader("nome_login")

If TextBox1.Text = nomeuser Then 'confere o login

If MaskedTextBox1.Text = senha Then 'confere a senha

acrescenta_campo = reader("cod_login")

'campos alteração

dados(0, 0) = reader("alt_categoria")

dados(0, 1) = reader("alt_linha")

dados(0, 2) = reader("alt_marca")

dados(0, 3) = reader("alt_produto")

dados(0, 4) = reader("alt_venda")

dados(0, 5) = reader("alt_usuario")

'campos exclusão

dados(0, 6) = reader("exc_categoria")

dados(0, 7) = reader("exc_linha")

dados(0, 8) = reader("exc_marca")

dados(0, 9) = reader("exc_produto")

dados(0, 10) = reader("exc_itens_venda")

dados(0, 11) = reader("exc_venda")

dados(0, 12) = reader("exc_usuario")

'campos cadastros

dados(0, 13) = reader("cad_categoria")

dados(0, 14) = reader("cad_linha")

dados(0, 15) = reader("cad_marca")

dados(0, 16) = reader("cad_produto")

dados(0, 17) = reader("cad_usuario")

'campo atualizar

dados(0, 18) = reader("atualizar")

Page 65: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

61

'campo relatório

dados(0, 19) = reader("relatorio")

reader.Close() 'fechando a reader

con.Close() 'fechando o banco de dados

Me.Hide()

principal.Label1.Text = nome_do_login

principal.Show()

TextBox1.Clear()

MaskedTextBox1.Clear()

Else

MsgBox("Senha não confere.", vbCritical) 'mensagem para senha errada

contadors = contadors + 1 'contador de erro de senha, se passar de três ten-

tativas o sistema automaciamente fecha

MaskedTextBox1.Focus()

End If

Else

MsgBox("Login não cadastrado!", vbCritical) 'mensagem para login errada

TextBox1.Focus()

End If

Catch ex As Exception

MsgBox("Usuário inválido.", vbCritical) 'mensagem quando não há login no

banco de dados

contadoru = contadoru + 1 'contador de erro de usuario, se passar de três tentata-

vias o sistema automaciamente fecha

TextBox1.Focus()

End Try

If contadoru = 3 Or contadors = 3 Then 'condição para fechar o sistema. Se passar

de três tentativas o sistema fecha.

MsgBox("Sistema encerrado.")

Application.Exit()

End If

End Sub

Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress

Page 66: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

62

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

MaskedTextBox1.Focus()

End If

End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button2.Click

sair() 'botão sair

Me.Close()

End Sub

Private Sub LinkLabel1_LinkClicked(ByVal sender As System.Object, ByVal e As

System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles LinkLabel1.LinkClicked

Hide()

AlterarSenha.Show()

End Sub

Private Sub MaskedTextBox1_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles MaskedTextBox1.KeyPress

If e.KeyChar = Chr(13) Then

Button1_Click(Me, EventArgs.Empty)

End If

End Sub

Private Sub LinkLabel2_LinkClicked(ByVal sender As System.Object, ByVal e As

System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles LinkLabel2.LinkClicked

Try ' trataviva de erro do formulário

CadastroUsuario.Button3.Text = "Cancelar" 'adicionar o text para o botão no

formulário cadastro usuário

CadastroUsuario.Button1.Enabled = False 'desabilita o botão

CadastroUsuario.Label6.Enabled = False

CadastroUsuario.TextBox3.Enabled = False 'desabilita a textbox

CadastroUsuario.Show()

Catch ex As Exception

End Try

End Sub

Page 67: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

63

Private Sub login_Load(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles MyBase.Load

tabela_login_vazia() 'Executa a função de verificação da tabela login, caso não te-

nha nenhum login o linklabel é abiitado

End Sub

End Class

„**********************************************************************

'CADASTRO DE CATEGORIA

'**********************************************************************

NOVACATEGORIA.VB

'

Imports MySql.Data.MySqlClient

Public Class NovaCategoria

Public Sub conferir_categoria() 'Função objeto. Confere se o item já esta cadastrado.

Try 'Tratando erro

If Label1.Text = "Nome da Categoria:" Then 'condição para o conferir a catego-

ria

conexao_mysql() 'procedure de conexão e comando (cmd, con)

cmd.Connection = con

con.Open() 'Abre a conexão com o banco de dados

cmd.CommandType = System.Data.CommandType.Text

If TextBox2.Text > " " Then 'Segunda condição para pequisa no banco de da-

dos

cmd.CommandText = "SELECT * FROM categoria where nome_categoria

like '%" & Trim(TextBox2.Text) & "%'" 'Função trim romove espaços iniciais e finais da

textbox

End If

reader = cmd.ExecuteReader()

reader.Read()

confere = reader("nome_categoria")

reader.Close() 'Fecha a leitura com o banco de dados

con.Close() 'Fecha a conexão com o banco de dados

ElseIf Label1.Text = "Nome da Marca:" Then 'condição para conferir a marca

Page 68: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

64

conexao_mysql() 'procedure de conexão e comando (cmd, con)

cmd.Connection = con

con.Open() 'Abre a conexão com o banco de dados

cmd.CommandType = System.Data.CommandType.Text

If TextBox2.Text > " " Then 'Segunda condição para pequisa no banco de da-

dos

cmd.CommandText = "SELECT * FROM marcas where nome_marca like

'%" & Trim(TextBox2.Text) & "%'" 'Função trim romove espaços iniciais e finais da textbox

End If

reader = cmd.ExecuteReader()

reader.Read()

confere = reader("nome_marca")

reader.Close() 'Fecha a leitura com o banco de dados

con.Close() 'Fecha a conexão com o banco de dados

ElseIf Label1.Text = "Nome da Linha:" Then 'condição para conferir a linha

conexao_mysql() 'procedure de conexão e comando (cmd, con)

cmd.Connection = con

con.Open() 'Abre a conexão com o banco de dados

cmd.CommandType = System.Data.CommandType.Text

If TextBox2.Text > " " Then 'Segunda condição para pequisa no banco de da-

dos

cmd.CommandText = "SELECT * FROM linha where nome_linha like '%"

& Trim(TextBox2.Text) & "%'" 'Função trim romove espaços iniciais e finais da textbox

End If

reader = cmd.ExecuteReader()

reader.Read()

confere = reader("nome_linha")

reader.Close() 'Fecha a leitura com o banco de dados

con.Close() 'Fecha a conexão com o banco de dados

End If

Catch ex As Exception

End Try

End Sub

Page 69: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

65

Private Sub Button2_Click(sender As System.Object, e As System.EventArgs) Han-

dles Button2.Click

Try

If Label1.Text = "Nome da Categoria:" Then 'condição para o cadastrar a cate-

goria

If TextBox2.Text > " " Then 'se a textbox não for nula ela executa as instru-

ções abaixo.

'Conferir se o item em questão já esta cadastrado.

conferir_categoria() 'objeto para conferir se já há cadastro.

If confere <> TextBox2.Text Then 'condição para inserir uma nova catego-

ria

If MsgBox("Deseja cadastrar esta categoria?", vbYesNo, "confirmação")

= vbYes Then

'Tabela produtos - CADASTRO

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.Connection = con 'conecta ao banco de dados

con.Open()

With cmd

.CommandType = System.Data.CommandType.Text

.CommandText = "INSERT into categoria (nome_categoria) VAL-

UES (?)"

.Parameters.Add("nome_categoria", OleDb.OleDbType.VarChar)

.Parameters("nome_categoria").Value = Trim(TextBox2.Text) 'fun-

ção trim remove espaços finais e iniciais.

.ExecuteNonQuery()

End With

con.Close() 'fecha a conexão

TextBox2.Clear() 'limpa a textbox

MsgBox("Cadastro efetuado com sucesso!", vbInformation)

Else

MsgBox("Cadastro não efetuado.", vbCritical)

End If

Else 'se for igual ele executa as intruções abaixo.

Page 70: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

66

MsgBox("Item já cadastrado.", vbExclamation) 'mensagem a se exibida

para o usuário quando o item for o mesmo

End If 'fim da condição para conferir o cadastro

Else

MsgBox("Campo nulo!", vbCritical)

TextBox2.Focus() 'move o cursor para a textbox

End If

ElseIf Label1.Text = "Nome da Marca:" Then 'condição para o cadastro da mar-

ca

If TextBox2.Text > " " Then

'Conferir se o item em questão já esta cadastrado.

conferir_categoria() 'objeto para conferir se já há cadastro.

If confere <> TextBox2.Text Then 'condição para inserir uma nova catego-

ria

If MsgBox("Deseja cadastrar esta Marca?", vbYesNo, "confirmação") =

vbYes Then

'Tabela marcas - CADASTRO MARCAS

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.Connection = con

con.Open() 'Abri a conexão com o banco de dados

With cmd

.CommandType = System.Data.CommandType.Text

.CommandText = "INSERT into marcas (nome_marca) VALUES

(?)" 'Comando para inserir dados no MySQL

.Parameters.Add("nome_marca", OleDb.OleDbType.VarChar)

.Parameters("nome_marca").Value = Trim(TextBox2.Text) 'função

trim. Remover os espaços iniciais e finais

.ExecuteNonQuery()

End With

con.Close() 'fecha a conexão com o banco

TextBox2.Clear() 'limpa a textbox

MsgBox("Cadastro efetuado com sucesso!", vbInformation)

Else

MsgBox("Cadastro não efetuado.", vbCritical)

Page 71: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

67

End If

Else 'se for igual ele executa as intruções abaixo.

MsgBox("Item já cadastrado.", vbExclamation) 'mensagem a se exibida

para o usuário quando o item for o mesmo

End If 'fim da condição para conferir o cadastro

Else

MsgBox("Campo nulo!", vbCritical)

TextBox2.Focus() 'move o cursor para a textbox

End If

ElseIf Label1.Text = "Nome da Linha:" Then 'condição para o cadastro da linha

If TextBox2.Text > " " Then

'Conferir se o item em questão já esta cadastrado.

conferir_categoria() 'objeto para conferir se já há cadastro.

If confere <> TextBox2.Text Then 'condição para inserir uma nova catego-

ria

If MsgBox("Deseja cadastrar esta Linha?", vbYesNo, "confirmação") =

vbYes Then

'Tabela marcas - CADASTRO MARCAS

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.Connection = con

con.Open() 'Abri a conexão com o banco de dados

With cmd

.CommandType = System.Data.CommandType.Text

.CommandText = "INSERT into linha (nome_linha) VALUES (?)"

'Comando para inserir dados no MySQL

.Parameters.Add("nome_linha", OleDb.OleDbType.VarChar)

.Parameters("nome_linha").Value = Trim(TextBox2.Text) 'função

trim. Remover os espaços iniciais e finais

.ExecuteNonQuery()

End With

con.Close() 'fecha a conexão com o banco

TextBox2.Clear() 'limpa a textbox

MsgBox("Cadastro efetuado com sucesso!", vbInformation)

Else

Page 72: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

68

MsgBox("Cadastro não efetuado.", vbCritical)

End If

Else 'se for igual ele esxecuta as intruções abaixo.

MsgBox("Item já cadastrado.", vbExclamation) 'mensagem a se exibida

para o usuário quando o item for o mesmo

End If 'fim da condição para conferir o cadastro

Else

MsgBox("Campo nulo!", vbCritical)

TextBox2.Focus() 'move o cursor para a textbox

End If

Else

MsgBox("Erro! Contate seu administrador.", vbCritical)

TextBox2.Focus() 'move o cursor para o campo especificado

End If

Catch ex As Exception

MsgBox(ex.Message)

End Try

End Sub

Private Sub Button3_Click(sender As System.Object, e As System.EventArgs) Han-

dles Button3.Click

If Button3.Text = "Menu Principal" Then 'Ação para o objeto button 3 quando o

texto dele for "Retornar ao meu principal

Close() 'Fecha o formulário

principal.Show() 'executa o menu princípal

ElseIf Button3.Text = "VOLTAR" Then 'Condição para voltar a tela de cadastro

Close() 'fecha o formulário

CadastroProduto.sele_cambobox() 'executa a select da função combobox1

CadastroProduto.sele_cambobox2() 'executa a select da segunda função combo-

box2

CadastroProduto.sele_combobox3() 'executa a select da terceira função combo-

box3

Close() 'fecha o formulário

CadastroProduto.Show() 'executa a tela de cadastro

End If

Page 73: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

69

End Sub

Private Sub TextBox2_KeyPress(sender As Object, e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox2.KeyPress

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

Button2_Click(Me, EventArgs.Empty) 'ação para o botão, quando o usuário di-

tigitar enter.

TextBox2.Focus()

End If

End Sub

Private Sub NovaCategoria_KeyDown(sender As Object, e As Sys-

tem.Windows.Forms.KeyEventArgs) Handles Me.KeyDown

If e.KeyCode = Keys.Escape Then

Button3.PerformClick()

End If

End Sub

Private Sub TextBox2_TextChanged(sender As System.Object, e As Sys-

tem.EventArgs) Handles TextBox2.TextChanged

If Len(TextBox2.Text) = 36 Then

MsgBox("Abrevie o registro. Carcateres Máximos 36")

End If

End Sub

End Class

„**********************************************************************

'TELA DE VENDAS

'*****************************************************************‟

VENDA.VB

'

Imports MySql.Data.MySqlClient

Public Class Venda

Dim cod_pagamento As Integer

Private Function limpar_dados() 'Função apagar

'Instrução para o botão apagar

Page 74: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

70

TextBox1.Clear()

TextBox2.Clear()

TextBox3.Clear()

MaskedTextBox1.Clear()

MaskedTextBox2.Clear()

TextBox1.Enabled = True 'Função abilitar, abilita determinados objetos no formu-

lário

Button1.Enabled = False

CheckBox1.Checked = False

CheckBox2.Checked = False

CheckBox3.Checked = False

CheckBox1.Enabled = False

CheckBox2.Enabled = False

CheckBox3.Enabled = False

TextBox1.Focus() 'função focus, quando o botão apagar e clickado o cursor irá pa-

ra a textbox1

Return TextBox1.Text()

End Function

Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Han-

dles Button1.Click

If Button1.Text = "Alterar" Then 'ação para o botão quando for Alterar

Try

If CInt(TextBox1.Text) > 0 And TextBox2.Text > " " And TextBox3.Text > "

" And MaskedTextBox1.Text > " " And MaskedTextBox2.Text > " " Then

If MsgBox("Deseja alterar esta venda?", vbYesNo, "confirmação") = vb-

Yes Then

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.Connection = con

con.Open() 'Abri a conexão com o banco de dados

With cmd

.CommandType = CommandType.Text

.CommandText = "UPDATE venda SET cod_usuario=?,

cod_pagamento=?, data_venda=?, hora_venda=? WHERE cod_venda = " &

Page 75: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

71

CInt(Trim(TextBox1.Text)) 'O tipo de dados dever ser integer e a função trim romove os es-

paços iniciais e finais da textbox

.Parameters.Add("cod_usuario", OleDb.OleDbType.Integer)

.Parameters("cod_usuario").Value = cod 'variavel para mudar o usuá-

rio

.Parameters.Add("cod_pagamento", OleDb.OleDbType.Integer)

.Parameters("cod_pagamento").Value = cod_pagamento 'Função trim.

Remove espaços iniciais e finais da textbox. Cint aceita apenas valor inteiro.

.Parameters.Add("data_venda", OleDb.OleDbType.Date)

.Parameters("data_venda").Value = CDate(MaskedTextBox1.Text)

'Função trim. Remove espaços iniciais e finais da textbox. Cint aceita apenas valor inteiro.

.Parameters.Add("hora_venda", OleDb.OleDbType.DBTimeStamp)

.Parameters("hora_venda").Value = CStr(MaskedTextBox2.Text)

'Função trim. Remove espaços iniciais e finais da textbox.

.ExecuteNonQuery()

End With

con.Close() 'Fecha a conexão com o banco de dados

limpar_dados() 'função limpar. Apaga os dados pesquisado após alterar

os dados e não ocorrer nenhum erro.

MsgBox("Item alterado com sucesso!", vbInformation)

Else

MsgBox("Alteração cancelada!", vbExclamation)

TextBox1.Focus() 'função focus, usado para mover o cursor para o cam-

po requerido.

End If

Else

MsgBox("Campo invalido.", vbCritical)

TextBox1.Focus() 'função focus, usado para mover o cursor para o campo

requerido.

End If

Catch ex As Exception

MsgBox(ex.Message)

TextBox1.Focus() 'função focus, usado para mover o cursor para o campo re-

querido.

Page 76: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

72

End Try

ElseIf Button1.Text = "Excluir" Then 'quando o botão estiver com o nome excluir

exeuta a instrução abaixo

Try 'Tratando erro

If CInt(TextBox1.Text) > 0 And TextBox2.Text > " " Then

If MsgBox("Deseja excluir esta venda?", vbYesNo, "confirma") = vbYes

Then

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.Connection = con

con.Open() 'Abri a conexão com o banco de dados

With cmd

.CommandType = CommandType.Text

.CommandText = "Delete FROM venda where cod_venda = " &

CInt(Trim(TextBox1.Text)) 'O tipo de dados dever ser integer e a função trim romove os es-

paços iniciais e finais da textbox

.Parameters.Add("venda", OleDb.OleDbType.VarChar)

.Parameters("venda").Value = CInt(TextBox1.Text) 'Função trim.

Romove espaços iniciais e finsais da textbox

.ExecuteNonQuery()

End With

con.Close() 'Fecha a conexão com o banco de dados

MsgBox("Registro excluído com êxito!", vbInformation)

limpar_dados() 'função para limpar os dados após a exclusão de um item.

Else

MsgBox("Exclusão cancelada!", vbExclamation)

TextBox1.Focus() 'função focus, quando a exclusão é cancelada o cursor

volta para a textbox1

End If

Else

MsgBox("Informação para exclusão inválida!", vbCritical)

TextBox1.Focus() 'função focus, quando a algum dado incorreto para pes-

quisa o cursor volta para a textbox1

End If

Catch ex As Exception

Page 77: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

73

MsgBox(ex.Message)

TextBox1.Enabled = True 'Função abilitar, abilita determinados objetos no

formulário

Button2.Enabled = False

TextBox1.Focus() 'função focus, quando a mensagem de erro é exibida na tela

o cursor volta para a textbox1

End Try

End If

End Sub

Private Sub Button2_Click(sender As System.Object, e As System.EventArgs) Han-

dles Button2.Click

Try 'Tratando erro

Dim data As Date

conexao_mysql() 'procedure de conexão e comando (cmd, con)

cmd.Connection = con

con.Open() 'Abre a conexão com o banco de dados

cmd.CommandType = System.Data.CommandType.Text

If Val(TextBox1.Text) > 0 Then 'Condição para a pesquisa no banco de dados

cmd.CommandText = "select A.*, B.cod_usuario, B.nome_usuario, C.* from

venda A inner join usuario B on (A.cod_usuario=B.cod_usuario) inner join forma_pagamento

C on (A.cod_pagamento = C.cod_pagamento) where cod_venda = " &

CInt(Trim(TextBox1.Text)) 'Só pode haver valores inteiros(número). Função trim romove

espaços iniciais e finais da textbox

Else

MsgBox("Dados inválidos para pesquisa!", vbCritical)

TextBox1.Focus() 'função focus, quando a algum campo de pesquisa inválido

o cursor é movido para a testbox1

End If

reader = cmd.ExecuteReader()

reader.Read()

TextBox1.Text = reader("cod_venda")

cod = reader("cod_usuario")

TextBox2.Text = reader("nome_usuario")

cod_pagamento = reader("cod_pagamento")

Page 78: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

74

TextBox3.Text = reader("tipo_pagamento")

data = reader("data_venda")

MaskedTextBox1.Text = data

MaskedTextBox2.Text = reader("hora_venda")

reader.Close() 'Fecha a leitura com o banco de dados

con.Close() 'Fecha a conexão com o banco de dados

If Button1.Text = "Alterar" Then

CheckBox1.Enabled = True

CheckBox2.Enabled = True

CheckBox3.Enabled = True

End If

TextBox1.Enabled = False 'Função abilitar, abilita determinados objetos no for-

mulário

Button1.Enabled = True

TextBox2.Focus() 'quando a select é executado com sucesso o cursor irá para a

textbox2 por que a textbox1 fica desabilitada

Catch ex As Exception

MsgBox(ex.Message)

TextBox1.Focus() 'função focus, move o cursor quando tem algum erro para a

textbox1

End Try

End Sub

Private Sub Button3_Click(sender As System.Object, e As System.EventArgs) Han-

dles Button3.Click

limpar_dados() 'função limpar textbox

End Sub

Private Sub Button4_Click(sender As System.Object, e As System.EventArgs) Han-

dles Button4.Click

Me.Close() 'fecha o fomuário

principal.Show() 'executa o formulário principal

End Sub

Private Sub CheckBox1_CheckedChanged(sender As System.Object, e As Sys-

tem.EventArgs) Handles CheckBox1.CheckedChanged

If CheckBox1.Checked = True Then

Page 79: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

75

MaskedTextBox1.Enabled = True

Else

MaskedTextBox1.Enabled = False

End If

End Sub

Private Sub TextBox1_KeyPress(sender As Object, e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress

If e.KeyChar = Chr(13) Then

Button2_Click(Me, EventArgs.Empty) 'Evento click, quando o usuario digita

enter o botão é clickado

TextBox2.Focus() 'após pesquisar o cursor é movido para a textbox 2

End If

End Sub

Private Sub TextBox2_KeyPress(sender As Object, e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox2.KeyPress

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

TextBox3.Focus() 'função focus, move o cursor para o campo especificado.

End If

End Sub

Private Sub TextBox3_KeyPress(sender As Object, e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox3.KeyPress

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

Button1.Focus() 'função focus, move o cursor para o campo especificado.

End If

End Sub

Private Sub TextBox2_TextChanged(sender As System.Object, e As Sys-

tem.EventArgs) Handles TextBox2.TextChanged

Try

If Val(TextBox1.Text) > 0 And TextBox3.Text > " " And MaskedText-

Box1.Text > " " Then

conexao_mysql() 'procedure de conexão e comando (cmd, con)

cmd.Connection = con

Page 80: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

76

con.Open() 'Abre a conexão com o banco de dados

cmd.CommandType = System.Data.CommandType.Text

cmd.CommandText = "select cod_usuario, nome_usuario from usuario where

nome_usuario like '%" & TextBox2.Text & "%'"

reader = cmd.ExecuteReader()

reader.Read()

TextBox2.Text = reader("nome_usuario")

cod = reader("cod_usuario")

reader.Close() 'Fecha a leitura com o banco de dados

con.Close() 'Fecha a conexão com o banco de dados

End If

Catch ex As Exception

End Try

End Sub

Private Sub CheckBox3_CheckedChanged(sender As System.Object, e As Sys-

tem.EventArgs) Handles CheckBox3.CheckedChanged

If CheckBox3.Checked = True Then

TextBox2.Enabled = True

Else

TextBox2.Enabled = False

End If

End Sub

Private Sub CheckBox2_CheckedChanged(sender As System.Object, e As Sys-

tem.EventArgs) Handles CheckBox2.CheckedChanged

If CheckBox2.Checked = True Then

TextBox3.Enabled = True

Else

TextBox3.Enabled = False

End If

End Sub

Private Sub TextBox3_TextChanged(sender As System.Object, e As Sys-

tem.EventArgs) Handles TextBox3.TextChanged

If CheckBox3.Checked = True Then

Try

Page 81: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

77

If TextBox2.Text > " " And TextBox1.Text > " " Then

conexao_mysql() 'procedure de conexão e comando (cmd, con)

cmd.Connection = con

con.Open() 'Abre a conexão com o banco de dados

cmd.CommandType = System.Data.CommandType.Text

cmd.CommandText = "select cod_pagamento from usuario where ti-

po_pagamento like '%" & TextBox3.Text & "%'"

reader = cmd.ExecuteReader()

reader.Read()

cod_pagamento = reader("cod_pagamento")

reader.Close() 'Fecha a leitura com o banco de dados

con.Close() 'Fecha a conexão com o banco de dados

End If

Catch ex As Exception

End Try

End If

End Sub

Private Sub Venda_KeyDown(sender As Object, e As Sys-

tem.Windows.Forms.KeyEventArgs) Handles Me.KeyDown

If e.KeyCode = Keys.Escape Then

Button4.PerformClick()

End If

End Sub

Private Sub Venda_Load(sender As System.Object, e As System.EventArgs) Handles

MyBase.Load

Label1.Text = Date.Today

End Sub

End Class

„**********************************************************************

'SUPORTE TÉCNICO - CONTROLE DE ESTOQUE

'**********************************************************************

SUPORTE_TECNICO.VB

'

Page 82: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

78

Imports System.Net.Mail

Public Class Suporte_tecnico

Dim smtpServer As New SmtpClient()

Dim mail As New MailMessage

Private Sub btn_enviar_Click(sender As System.Object, e As System.EventArgs)

Handles btn_enviar.Click

' Try

If txt_assunto.Text > " " And txt_mensagem.Text > " " And txt_nome.Text > " "

Then

smtpServer.Credentials = New

Net.NetworkCredential("[email protected]", "etec@etec")

ProgressBar1.Value = ProgressBar1.Value + 1

smtpServer.Port = 25

ProgressBar1.Value = ProgressBar1.Value + 1

smtpServer.Host = "smtp.live.com"

ProgressBar1.Value = ProgressBar1.Value + 1

smtpServer.EnableSsl = True

mail.From = New MailAddress("[email protected]")

mail.To.Add("[email protected]")

mail.Subject = txt_assunto.Text

mail.Body = txt_nome.Text & Chr(13) & txt_email.Text & Chr(13) &

txt_mensagem.Text

smtpServer.Send(mail)

MsgBox("Mensagem enviada com sucesso!", MsgBoxStyle.OkOnly, "Solicita-

ção de suporte")

txt_assunto.Clear()

txt_email.Clear()

txt_mensagem.Clear()

txt_nome.Clear()

Else

MsgBox("Verifique os campos e tente novamente.", vbExclamation)

End If

' Catch ex As Exception

' MsgBox(ex.Message)

Page 83: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

79

' End Try

End Sub

Private Sub btn_fechar_Click(sender As System.Object, e As System.EventArgs)

Handles btn_fechar.Click

Me.Close()

principal.Show()

End Sub

Private Sub Timer1_Tick(sender As System.Object, e As System.EventArgs) Han-

dles Timer1.Tick

ProgressBar1.Increment(1)

End Sub

End Class

„**********************************************************************

'RELATÓRIO DE VENDAS

'**********************************************************************

RELATORIO_VENDAS.VB

'

Public Class Relatorio_Venda

Private Sub SairToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles SairToolStripMenuItem.Click

Me.Close()

principal.Show()

End Sub

End Class

„**********************************************************************

'RELATÓRIO DE PRODUTOS

'**********************************************************************

RELATORIO_PRODUTO.VB

'

Public Class Relatorio_Produto

Private Sub SairToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles SairToolStripMenuItem.Click

Page 84: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

80

Me.Close()

principal.Show()

End Sub

End Class

„**********************************************************************

'PRODUTO SEM CODIGO DE BARRAS

'**********************************************************************

PRODUTO_SEM_CODBARRAS.VB

'

Module produto_sem_codBarras

Public dimi As Integer

Public Sub cod_barras()

Try

Dim cod_b As String

conexao_mysql()

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con

con.Open()

cmd.CommandText = "select cod_barras from produtos where LEN(cod_barras)

<> 14 and LEN(cod_barras) <> 13"

reader = cmd.ExecuteReader()

While reader.Read()

cod_b = reader("cod_barras")

dimi = cod_b + 1

End While

con.Close()

Catch ex As Exception

MsgBox(ex.Message & "Contate seu administrador")

End Try

End Sub

End Module

„**********************************************************************

'TELA PRINCIPAL

Page 85: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

81

'**********************************************************************

PRINCIPAL.VB

'

Public Class principal

Private Sub SairToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal

e As System.EventArgs) Handles SairToolStripMenuItem1.Click

Application.Exit()

End Sub

Private Sub LogoffToolStripMenuItem_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles LogoffToolStripMenuItem.Click

Me.Close()

login.Show()

login.TextBox1.Focus()

End Sub

Private Sub btnconsult_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles btnconsult.Click

CadastroProduto.Show()

End Sub

Private Sub CategoriasToolStripMenuItem_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles CategoriasToolStripMenuItem.Click

NovaCategoria.Show()

End Sub

Private Sub ProdutoToolStripMenuItem4_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles ProdutoToolStripMenuItem4.Click

CadastroProduto.Show()

End Sub

Private Sub UsuárioToolStripMenuItem2_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles UsuárioToolStripMenuItem2.Click

CadastroUsuario.Button1.Enabled = False

CadastroUsuario.Label6.Enabled = False

CadastroUsuario.TextBox3.Enabled = False

CadastroUsuario.Show()

End Sub

Page 86: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

82

Private Sub ProdutoToolStripMenuItem2_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles ProdutoToolStripMenuItem2.Click

Consulta_categoria.Show()

End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button2.Click

ProdutoToolStripMenuItem1.PerformClick()

End Sub

Private Sub CategoriaToolStripMenuItem1_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles CategoriaToolStripMenuItem1.Click

AlterarCategoria.Text = "EXCLUIR CATEGORIA"

AlterarCategoria.Button2.Text = "Excluir"

AlterarCategoria.Show()

End Sub

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button4.Click

sair()

End Sub

Private Sub LinhaToolStripMenuItem1_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles LinhaToolStripMenuItem1.Click

AlterarLinha.Text = "EXCLUIR LINHA"

AlterarLinha.Button2.Text = "Excluir"

AlterarLinha.Show()

End Sub

Private Sub MarcaToolStripMenuItem1_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles MarcaToolStripMenuItem1.Click

AlterarMarca.Text = "Excluir Marca"

AlterarMarca.Button2.Text = "Excluir"

AlterarMarca.Show()

End Sub

Private Sub UsuárioToolStripMenuItem1_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles UsuárioToolStripMenuItem1.Click

CadastroUsuario.Text = "EXCLUSÃO DE USUÁRIO"

CadastroUsuario.Button5.Text = "Excluir"

Page 87: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

83

CadastroUsuario.Button5.Enabled = False

CadastroUsuario.Show()

End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button1.Click

Consulta.Show()

End Sub

Private Sub LinhaToolStripMenuItem_Click(ByVal sender As System.Object, ByVal

e As System.EventArgs) Handles LinhaToolStripMenuItem.Click

AlterarLinha.Show()

End Sub

Private Sub MarcaToolStripMenuItem_Click(ByVal sender As System.Object, ByV-

al e As System.EventArgs) Handles MarcaToolStripMenuItem.Click

AlterarMarca.Show()

End Sub

Private Sub ProdutoToolStripMenuItem_Click_1(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles ProdutoToolStripMenuItem.Click

AlterarProduto.Show()

End Sub

Private Sub ProdutoToolStripMenuItem1_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles ProdutoToolStripMenuItem1.Click

AlterarProduto.Text = "EXCLUSÃO DE PRODUTO"

AlterarProduto.Button5.Text = "Excluir"

AlterarProduto.Show()

End Sub

Private Sub ProdutoToolStripMenuItem3_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles ProdutoToolStripMenuItem3.Click

Consulta.Show()

End Sub

Private Sub UsuárioToolStripMenuItem_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles UsuárioToolStripMenuItem.Click

CadastroUsuario.Text = "ALTERAÇÃO DE USUÁRIO"

CadastroUsuario.Button5.Text = "Alterar"

CadastroUsuario.Button5.Enabled = False

Page 88: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

84

CadastroUsuario.Show()

End Sub

Private Sub LinhaToolStripMenuItem2_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles LinhaToolStripMenuItem2.Click

Consulta_linha.Show()

End Sub

Private Sub MarcaToolStripMenuItem2_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles MarcaToolStripMenuItem2.Click

Consulta_Marca.Show()

End Sub

Private Sub EstoqueToolStripMenuItem_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles EstoqueToolStripMenuItem.Click

Relatorio_Produto.Show()

End Sub

Private Sub VendaToolStripMenuItem_Click(ByVal sender As System.Object, ByV-

al e As System.EventArgs) Handles VendaToolStripMenuItem.Click

Relatorio_Venda.Show()

End Sub

Private Sub NovaMarcaToolStripMenuItem_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles NovaMarcaToolStripMenuItem.Click

NovaCategoria.Text = "CADASTRO DA MARCA"

NovaCategoria.Label1.Text = "Nome da Marca:"

NovaCategoria.Show()

End Sub

Private Sub VendaToolStripMenuItem1_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles VendaToolStripMenuItem1.Click

Venda.Show() 'executa o fumulário venda

End Sub

Private Sub VendaToolStripMenuItem2_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles VendaToolStripMenuItem2.Click

Venda.Button1.Text = "Excluir"

Venda.Show()

End Sub

Page 89: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

85

Private Sub NovaLinhaToolStripMenuItem_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles NovaLinhaToolStripMenuItem.Click

NovaCategoria.Text = "CADASTRO DA LINHA"

NovaCategoria.Label1.Text = "Nome da Linha:"

NovaCategoria.Show()

End Sub

Private Sub UsuárioToolStripMenuItem3_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles UsuárioToolStripMenuItem3.Click

Consulta_Usuario.Show()

End Sub

Private Sub FunçõesDeUsuarioToolStripMenuItem_Click(ByVal sender As Sys-

tem.Object, ByVal e As System.EventArgs) Handles FunçõesDeUsuarioToolStripMenuI-

tem.Click

Acessos.Text = "Configuções do Sistema"

Acessos.Show()

End Sub

'fechar a aplicação ao clicar no botão fechar (X)

Private Sub principal_FormClosing(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing

End Sub

Private Sub principal_Load(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles MyBase.Load

If dados(0, 0) = 1 Then 'condição para habilitar alteração de categoria

CategoriaToolStripMenuItem.Enabled = True

Else

CategoriaToolStripMenuItem.Enabled = False

End If

If dados(0, 1) = 1 Then 'condição para habilitar a alteração de linha

LinhaToolStripMenuItem.Enabled = True

Else

LinhaToolStripMenuItem.Enabled = False

End If

If dados(0, 2) = 1 Then 'condição para habilitar a alteração de marca

MarcaToolStripMenuItem.Enabled = True

Page 90: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

86

Else

MarcaToolStripMenuItem.Enabled = False

End If

If dados(0, 3) = 1 Then 'condição para habilitar a alteração de produto

ProdutoToolStripMenuItem.Enabled = True

Else

ProdutoToolStripMenuItem.Enabled = False

End If

If dados(0, 4) = 1 Then 'condição para habilitar a alteração de venda

VendaToolStripMenuItem1.Enabled = True

Else

VendaToolStripMenuItem1.Enabled = False

End If

If dados(0, 5) = 1 Then 'condição para habilitar a alteração de usuário

UsuárioToolStripMenuItem.Enabled = True

Else

UsuárioToolStripMenuItem.Enabled = False

End If

'exclusão

If dados(0, 6) = 1 Then 'condição para habilitar a exclusão de categoria

CategoriaToolStripMenuItem1.Enabled = True

Else

CategoriaToolStripMenuItem1.Enabled = False

End If

If dados(0, 7) = 1 Then 'condição para habilitar a exclusão de linha

LinhaToolStripMenuItem1.Enabled = True

Else

LinhaToolStripMenuItem1.Enabled = False

End If

If dados(0, 8) = 1 Then 'condição para habilitar a exclusão de marca

MarcaToolStripMenuItem1.Enabled = True

Else

MarcaToolStripMenuItem1.Enabled = False

End If

Page 91: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

87

If dados(0, 9) = 1 Then 'condição para habilitar a exclusão de produto

ProdutoToolStripMenuItem1.Enabled = True

Button2.Enabled = True

Else

ProdutoToolStripMenuItem1.Enabled = False

Button2.Enabled = False

End If

If dados(0, 10) = 1 Then 'condição para habilitar a exclusão de Itens venda

ItensVendaToolStripMenuItem1.Enabled = True

Else

ItensVendaToolStripMenuItem1.Enabled = False

End If

If dados(0, 11) = 1 Then 'condição para habilitar a exclusão de venda

VendaToolStripMenuItem2.Enabled = True

Else

VendaToolStripMenuItem2.Enabled = False

End If

If dados(0, 12) = 1 Then 'condição para habilitar a exclusão de usuario

UsuárioToolStripMenuItem1.Enabled = True

Else

UsuárioToolStripMenuItem1.Enabled = False

End If

'cadastro

If dados(0, 13) = 1 Then 'condição para habilitar o cadastro de nova categoria

CategoriasToolStripMenuItem.Enabled = True

Else

CategoriasToolStripMenuItem.Enabled = False

End If

If dados(0, 14) = 1 Then 'condição para habilitar o cadastro de nova categoria

NovaLinhaToolStripMenuItem.Enabled = True

Else

NovaLinhaToolStripMenuItem.Enabled = False

End If

If dados(0, 15) = 1 Then 'condição para habilitar o cadastro de nova marca

Page 92: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

88

NovaMarcaToolStripMenuItem.Enabled = True

Else

NovaMarcaToolStripMenuItem.Enabled = False

End If

If dados(0, 16) = 1 Then 'condição para habilitar o cadastro de produto

ProdutoToolStripMenuItem4.Enabled = True

btnconsult.Enabled = True

Else

ProdutoToolStripMenuItem4.Enabled = False

btnconsult.Enabled = False

End If

If dados(0, 17) = 1 Then 'condição para habilitar o cadastro de usuário

UsuárioToolStripMenuItem2.Enabled = True

Else

UsuárioToolStripMenuItem2.Enabled = False

End If

'habilitar configuração de sistema

If dados(0, 0) = 1 And dados(0, 1) = 1 And dados(0, 2) = 1 And dados(0, 3) = 1

And dados(0, 4) = 1 And dados(0, 5) = 1 And dados(0, 6) = 1 And dados(0, 7) = 1 And da-

dos(0, 8) = 1 And dados(0, 9) = 1 And dados(0, 10) = 1 And dados(0, 11) = 1 And dados(0,

12) = 1 And dados(0, 13) = 1 And dados(0, 14) = 1 And dados(0, 15) = 1 And dados(0, 16) =

1 And dados(0, 17) = 1 And dados(0, 18) = 1 Then

FunçõesDeUsuarioToolStripMenuItem.Enabled = True

Else

FunçõesDeUsuarioToolStripMenuItem.Enabled = False

End If

'habilitar consulta de usuário

If dados(0, 5) = 1 Or dados(0, 12) = 1 And dados(0, 17) = 1 Then

UsuárioToolStripMenuItem3.Enabled = True

Else

UsuárioToolStripMenuItem3.Enabled = False

End If

'habilitar a função atualizar

If dados(0, 18) = 1 Then

Page 93: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

89

AtualizarToolStripMenuItem.Enabled = True

Else

AtualizarToolStripMenuItem.Enabled = False

End If

'habilitar a função relatório

If dados(0, 19) = 1 Then

Button3.Enabled = True

EstoqueToolStripMenuItem.Enabled = True

VendaToolStripMenuItem.Enabled = True

Else

Button3.Enabled = False

EstoqueToolStripMenuItem.Enabled = False

VendaToolStripMenuItem.Enabled = False

End If

Label4.Text = Date.Today

End Sub

Private Sub CategoriaToolStripMenuItem_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles CategoriaToolStripMenuItem.Click

AlterarCategoria.Show()

End Sub

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Timer1.Tick

Label3.Text = TimeString

End Sub

Private Sub VendasToolStripMenuItem_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles VendasToolStripMenuItem.Click

Consulta_venda.Show()

End Sub

Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Timer2.Tick

confere_qtde() 'método que confere a contida no banco de dados

End Sub

Private Sub ItensVendaToolStripMenuItem1_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles ItensVendaToolStripMenuItem1.Click

Page 94: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

90

Itens_Venda.Show()

End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button3.Click

Relatorio_Produto.Show()

End Sub

Private Sub AtualizarToolStripMenuItem_Click_1(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles AtualizarToolStripMenuItem.Click

AtualizarProduto.Show()

End Sub

Private Sub ContatarOSuporteToolStripMenuItem_Click(ByVal sender As Sys-

tem.Object, ByVal e As System.EventArgs) Handles ContatarOSuporteToolStripMenuI-

tem.Click

Suporte_tecnico.ShowDialog()

End Sub

Private Sub AjudaToolStripMenuItem_Click(ByVal sender As System.Object, ByVal

e As System.EventArgs) Handles AjudaToolStripMenuItem.Click

System.Diagnostics.Process.Start("C:\Users\Adeildo\Desktop\Perfumaria -

1.0(Beta) sql_server\Perfumaria - 1.0(Beta)\Perfumaria -

1.0(Beta)\Resources\ajuda_estoque.htm")

End Sub

End Class

„**********************************************************************

'CONSULTA GERAL

'**********************************************************************

CONSULTA.VB

'

Public Class Consulta

Dim dacad, data_froma As Date

Dim tabcategoria, tablinha, tabmarca, prod, codigop, descricao, VLR_UNITARIO,

BARRAS As String

Dim qtde As Integer

Private Sub consulta_grid() 'método para para preencher o datagrid

Page 95: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

91

reader = cmd.ExecuteReader()

While (reader.Read)

codigop = reader("cod_produto")

BARRAS = reader("cod_barras")

prod = reader("nome_produto")

descricao = reader("descricao_produto")

qtde = reader("qtde_produto")

VLR_UNITARIO = Format(reader("vlr_unitario"), "Currency")

tabcategoria = reader("nome_categoria")

tabmarca = reader("nome_marca")

tablinha = reader("nome_linha")

dacad = reader("data_cads_prod")

DataGridView1.Rows.Add(New String() {codigop, BARRAS, prod, descricao,

qtde, VLR_UNITARIO, tabcategoria, tabmarca, tablinha, dacad})

End While

con.Close()

End Sub

Private Sub limpar_campos() 'método para limpar os campos.

TextBox1.Clear()

TextBox2.Clear()

TextBox3.Clear()

TextBox4.Clear()

TextBox6.Clear()

TextBox7.Clear()

TextBox8.Clear()

TextBox9.Clear()

TextBox10.Clear()

End Sub 'fim do método limpar

Private Sub desabilitar_checbox() 'método apra desabailitar a checagem da checkbox

CheckBox1.Checked = False

CheckBox2.Checked = False

CheckBox3.Checked = False

End Sub 'fim do método check

Page 96: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

92

Private Sub instrucao_checbox() 'método para checbox. será executa as instrções a-

baixo quando o checar for verdadeiro

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecta ao banco de dados

con.Open() 'abrre a conexão

'Pesquida feita pela data de cadastro do produto

If CheckBox1.Checked = True Then

cmd.CommandText = "select A.*,B.*,C.*, D.* from produtos A inner join mar-

cas B on(A.cod_marca=B.cod_marca)inner join linha C on(A.cod_linha=C.cod_linha) inner

join categoria D on(A.cod_categoria=D.cod_categoria) order by nome_produto"

DataGridView1.Rows.Clear() 'limpa os dados e carrega o grid novamente

consulta_grid() 'Método consulta, adiciona dados da pesquia ao grid.

limpar_campos() 'método para limpar as textbox. No momento em que é habili-

tado o objeto checkbox3 os campos são limpos.

ElseIf CheckBox2.Checked = True Then

cmd.CommandText = "select A.*,B.*,C.*, D.* from produtos A inner join mar-

cas B on(A.cod_marca=B.cod_marca)inner join linha C on(A.cod_linha=C.cod_linha) inner

join categoria D on(A.cod_categoria=D.cod_categoria) order by cod_produto desc"

DataGridView1.Rows.Clear() 'limpa os dados e carrega o grid novamente

consulta_grid() 'Método consulta, adiciona dados da pesquia ao grid.

limpar_campos() 'método para limpar as textbox. No momento em que é habili-

tado o objeto checkbox3 os campos são limpos.

ElseIf CheckBox3.Checked = True Then

cmd.CommandText = "select A.*,B.*,C.*, D.* from produtos A inner join mar-

cas B on(A.cod_marca=B.cod_marca)inner join linha C on(A.cod_linha=C.cod_linha) inner

join categoria D on(A.cod_categoria=D.cod_categoria) order by data_cads_prod desc"

DataGridView1.Rows.Clear() 'limpa os dados e carrega o grid novamente

consulta_grid() 'Método consulta, adiciona dados da pesquia ao grid.

limpar_campos() 'método para limpar as textbox. No momento em que é habili-

tado o objeto checkbox3 os campos são limpos.

Else

grid_default() 'método defaul para datagrid

DataGridView1.Rows.Clear() 'limpa os dados e carrega o grid novamente

Page 97: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

93

consulta_grid() 'Método consulta, adiciona dados da pesquia ao grid.

End If

End Sub 'fim do método para as checbox - ordenação.

Private Sub TextBox10_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox10.KeyPress

Dim KeyAscii As Short = CShort(Asc(e.KeyChar))

KeyAscii = CShort(SoNumeros(KeyAscii)) 'função para desabilitar texto na text-

box

'condição para habilitar os números. zero número, 1 texto.

If KeyAscii = 0 Then

e.Handled = True

End If

'condição para desabilitar a barra de espaço na textbox (código de barras do produ-

to)

If KeyAscii = 32 Then

e.Handled = True

End If

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

TextBox1.Focus()

End If

End Sub

Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress

Dim KeyAscii As Short = CShort(Asc(e.KeyChar))

KeyAscii = CShort(SoNumeros(KeyAscii)) 'função para desabilitar texto na text-

box

'condição para habilitar os números. zero número, 1 texto.

If KeyAscii = 0 Then

e.Handled = True

End If

'condição para desabilitar a barra de espaço na textbox (código de barras do produ-

to)

If KeyAscii = 32 Then

Page 98: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

94

e.Handled = True

End If

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

TextBox3.Focus()

End If

End Sub

Private Sub TextBox3_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox3.KeyPress

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

TextBox2.Focus()

End If

End Sub

Private Sub TextBox2_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox2.KeyPress

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

TextBox9.Focus()

End If

End Sub

Private Sub TextBox9_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox9.KeyPress

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

TextBox7.Focus()

End If

End Sub

Private Sub TextBox7_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox7.KeyPress

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

TextBox8.Focus()

End If

Page 99: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

95

End Sub

Private Sub TextBox8_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox8.KeyPress

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

TextBox6.Focus()

End If

End Sub

Private Sub TextBox6_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox6.KeyPress

Dim KeyAscii As Short = CShort(Asc(e.KeyChar))

KeyAscii = CShort(SoNumeros(KeyAscii)) 'função para desabilitar texto na text-

box

'condição para habilitar os números. zero número, 1 texto.

If KeyAscii = 0 Then

e.Handled = True

End If

'condição para desabilitar a barra de espaço na textbox (código de barras do produ-

to)

If KeyAscii = 32 Then

e.Handled = True

End If

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

TextBox4.Focus()

End If

End Sub

Private Sub TextBox4_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox4.KeyPress

Dim KeyAscii As Short = CShort(Asc(e.KeyChar))

KeyAscii = CShort(SoNumeros(KeyAscii)) 'função para desabilitar texto na text-

box

'condição para habilitar os números. zero número, 1 texto..

If KeyAscii = 0 Then

Page 100: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

96

e.Handled = True

End If

'condição para desabilitar a barra de espaço na textbox (código de barras do produ-

to)

If KeyAscii = 32 Then

e.Handled = True

End If

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

TextBox10.Focus()

End If

If e.KeyChar = "/" Or e.KeyChar = "-" Then

e.Handled = True

SendKeys.Send("")

End If

If Len(TextBox4.Text) = 2 Then

TextBox4.Text = "-" + TextBox4.Text

Else

TextBox1.Clear()

End If

If Len(TextBox4.Text) = 5 Then

TextBox4.Text = "-" + TextBox4.Text

End If

End Sub

Private Sub Consulta_KeyDown(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyEventArgs) Handles Me.KeyDown

If e.KeyCode = Keys.Escape Then

Button3.PerformClick()

End If

End Sub

Private Sub Consulta_Load(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles MyBase.Load

Try

With DataGridView1

Page 101: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

97

'campos do datagrid

.Columns.Add("1", "Código")

.Columns.Add("2", "Cod.Barras")

.Columns.Add("3", "Produto")

.Columns.Add("4", "Descrição")

.Columns.Add("5", "Quantidade")

.Columns.Add("6", "Valor Unit.")

.Columns.Add("7", "Categoria")

.Columns.Add("8", "Marca")

.Columns.Add("9", "Linha")

.Columns.Add("10", "Data Cadastro")

'cor de fundo

.BackgroundColor = Color.White

'Cabeçalho

.EnableHeadersVisualStyles = False

.ColumnHeadersDefaultCellStyle.Font = New Font("Bookman Old Style", 14,

FontStyle.Bold)

.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlign-

ment.MiddleCenter

.RowHeadersWidthSizeMode = DataGridViewRowHeadersWidthSize-

Mode.AutoSizeToAllHeaders 'auto dimensiona o cabeçalho

.ColumnHeadersDefaultCellStyle.ForeColor = Color.White

.ColumnHeadersDefaultCellStyle.BackColor = Color.Black

'linha

.AlternatingRowsDefaultCellStyle.BackColor = Color.DarkGray

.AlternatingRowsDefaultCellStyle.ForeColor = Color.Purple

.AlternatingRowsDefaultCellStyle.Font = New Font("Bookman Old Style",

12, FontStyle.Regular)

.AlternatingRowsDefaultCellStyle.Alignment = DataGridViewContentA-

lignment.MiddleLeft

'colunha

.DefaultCellStyle.Font = New Font("Bookman Old Style", 12,

FontStyle.Regular)

.DefaultCellStyle.ForeColor = Color.Black

Page 102: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

98

.DefaultCellStyle.BackColor = Color.DarkCyan

.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft

End With

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecta ao banco de dados

con.Open() 'abrre a conexão

cmd.CommandText = "select A.*,B.*,C.*, D.* from produtos A inner join mar-

cas B on(A.cod_marca=B.cod_marca)inner join linha C on(A.cod_linha=C.cod_linha) inner

join categoria D on(A.cod_categoria=D.cod_categoria)"

consulta_grid() 'método para enviar as informações do banco de dados para o

datagrid

Catch erro As Exception

MsgBox(erro.Message & "Contate seu administrador.", vbCritical)

End Try

End Sub

Private Sub TextBox2_TextChanged(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles TextBox2.TextChanged

Try

If TextBox2.Text <> " " Then

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecta ao banco de dados

con.Open() 'abrre a conexão

'Pesquida feita pelo nome do produto

cmd.CommandText = "select A.*,B.*,C.*, D.* from produtos A inner join

marcas B on(A.cod_marca=B.cod_marca)inner join linha C on(A.cod_linha=C.cod_linha)

inner join categoria D on(A.cod_categoria=D.cod_categoria) where nome_produto like '%" &

Trim(TextBox2.Text) & "%'"

DataGridView1.Rows.Clear() 'limpa os dados e carrega o grid novamente

consulta_grid() 'método para enviar as informações do banco de dados para o

datagrid

desabilitar_checbox() 'método para desabilitar as checkbox.

End If

Page 103: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

99

Catch ex As Exception

MsgBox(ex.Message)

End Try

End Sub

Private Sub TextBox9_TextChanged(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles TextBox9.TextChanged

Try 'Tratando erro

If TextBox9.Text <> " " Then

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecta ao banco de dados

con.Open() 'abrre a conexão

' Pesquisa feita pela marca do produto

cmd.CommandText = "select A.*,B.*,C.*, D.* from marcas A inner join pro-

dutos B on(B.cod_marca=A.cod_marca)inner join linha C on(B.cod_linha=C.cod_linha) inner

join categoria D on(B.cod_categoria=D.cod_categoria) where nome_marca like '%" &

Trim(TextBox9.Text) & "%'"

DataGridView1.Rows.Clear() 'limpa os dados e carrega o grid novamente

consulta_grid() 'Método consulta, adicionar dados pesquisa ao grid.

desabilitar_checbox() 'método para desabilitar as checkbox.

End If

Catch ex As Exception

MsgBox(ex.Message) 'mesagem de trativa de erro

End Try 'fim da trativa de erros.

End Sub

Private Sub TextBox8_TextChanged(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles TextBox8.TextChanged

Try 'Tratando erro

If TextBox8.Text <> " " Then

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecta ao banco de dados

con.Open() 'abrre a conexão

'Pesquida feita pela linha do produto

Page 104: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

100

cmd.CommandText = "select A.*,B.*,C.*, D.* from linha A inner join produ-

tos B on(B.cod_linha=A.cod_linha) inner join marcas C on(B.cod_marca=C.cod_marca) in-

ner join categoria D on(B.cod_categoria=D.cod_categoria) where nome_linha like '%" &

Trim(TextBox8.Text) & "%'"

DataGridView1.Rows.Clear() 'limpa os dados e carrega o grid novamente

consulta_grid() 'Método consulta, adiciona dados da pequisa no grid.

desabilitar_checbox() 'método para desabilitar as checkbox.

End If

Catch ex As Exception

MsgBox(ex.Message) 'mesagem de trativa de erro

End Try 'fim da trativa de erros.

End Sub

Private Sub TextBox7_TextChanged(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles TextBox7.TextChanged

Try 'Tratando erro

If TextBox7.Text <> " " Then

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecta ao banco de dados

con.Open() 'abrre a conexão

'Pesquis feita categoria do produto

cmd.CommandText = "select A.*,B.*,C.*, D.* from categoria A inner join

produtos B on(B.cod_categoria=A.cod_categoria) inner join marcas C

on(B.cod_marca=C.cod_marca) inner join linha D on(B.cod_linha=D.cod_linha) where

nome_categoria like '%" & Trim(TextBox7.Text) & "%'"

DataGridView1.Rows.Clear() 'limpa os dados e carrega o grid novamente

consulta_grid() 'Método consulta, adiciona os dados pesquisa ao grid.

desabilitar_checbox() 'método para desabilitar as checkbox.

End If

Catch ex As Exception

MsgBox(ex.Message) 'mesagem de trativa de erro

End Try 'fim da trativa de erros.

End Sub

Page 105: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

101

Private Sub TextBox3_TextChanged(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles TextBox3.TextChanged

Try 'Tratando erro

If TextBox3.Text <> " " Then

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecta ao banco de dados

con.Open() 'abrre a conexão

'Pesquida feita pela descrição do produto

cmd.CommandText = "select A.*,B.*,C.*, D.* from produtos A inner join

marcas B on(A.cod_marca=B.cod_marca)inner join linha C on(A.cod_linha=C.cod_linha)

inner join categoria D on(A.cod_categoria=D.cod_categoria) where descricao_produto like

'%" & Trim(TextBox3.Text) & "%'"

DataGridView1.Rows.Clear() 'limpa os dados e carrega o grid novamente

consulta_grid() 'Método consulta, adiciona dados da pesquia ao grid.

desabilitar_checbox() 'método para desabilitar as checkbox.

End If

Catch ex As Exception

MsgBox(ex.Message) 'mesagem de trativa de erro

End Try 'fim da trativa de erros.

End Sub

Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles TextBox1.TextChanged

Try 'Tratando erro

If TextBox1.Text <> " " Then

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecta ao banco de dados

con.Open() 'abrre a conexão

'Pesquisa feita pelo código de barras

cmd.CommandText = "select A.*,B.*,C.*, D.* from produtos A inner join

marcas B on(A.cod_marca=B.cod_marca)inner join linha C on(A.cod_linha=C.cod_linha)

inner join categoria D on(A.cod_categoria=D.cod_categoria) where cod_barras like '%" &

Trim(TextBox1.Text) & "%'"

Page 106: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

102

DataGridView1.Rows.Clear() 'limpa os dados e carrega o grid novamente

consulta_grid() 'Método consulta, adiciona dados da pesquia ao grid.

desabilitar_checbox() 'método para desabilitar as checkbox.

End If

Catch ex As Exception

MsgBox(ex.Message) 'mesagem de trativa de erro

End Try 'fim da trativa de erros.

End Sub

Private Sub TextBox4_TextChanged(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles TextBox4.TextChanged

Try

If TextBox4.Text <> " " Then

'TextBox4.Text = Format(TextBox4.Text, " - - ")

'inverte_data = Format(CType(TextBox4.Text, Date), "yyyy-MM-dd")

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecta ao banco de dados

con.Open() 'abrre a conexão

'Pesquida feita pela data de cadastro do produto

cmd.CommandText = "select A.*,B.*,C.*, D.* from produtos A inner join

marcas B on(A.cod_marca=B.cod_marca)inner join linha C on(A.cod_linha=C.cod_linha)

inner join categoria D on(A.cod_categoria=D.cod_categoria) where data_cads_prod like '%"

& Trim(TextBox4.Text) & "%'"

DataGridView1.Rows.Clear() 'limpa os dados e carrega o grid novamente

consulta_grid() 'Método consulta, adiciona dados da pesquia ao grid.

desabilitar_checbox() 'método para desabilitar as checkbox.

End If

Catch ex As Exception

'MsgBox(ex.Message) 'mesagem de trativa de erro

End Try 'fim da trativa de erros.

End Sub

Private Sub TextBox10_TextChanged(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles TextBox10.TextChanged

Try 'Tratando erro

Page 107: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

103

If TextBox10.Text <> " " Then

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecta ao banco de dados

con.Open() 'abrre a conexão

'Pesquisa feita pelo código do produto

cmd.CommandText = "select A.*,B.*,C.*, D.* from produtos A inner join

marcas B on(A.cod_marca=B.cod_marca)inner join linha C on(A.cod_linha=C.cod_linha)

inner join categoria D on(A.cod_categoria=D.cod_categoria) where cod_produto like '%" &

Trim(TextBox10.Text) & "%'"

DataGridView1.Rows.Clear() 'limpa os dados e carrega o grid novamente

consulta_grid() 'Método consulta, adiciona dados da pesquia ao grid.

desabilitar_checbox() 'método para desabilitar as checkbox.

End If

Catch ex As Exception

MsgBox(ex.Message) 'mesagem de trativa de erro

End Try 'fim da trativa de erros.

End Sub

Private Sub TextBox6_TextChanged(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles TextBox6.TextChanged

Try 'Tratando erro

If TextBox6.Text <> " " Then

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecta ao banco de dados

con.Open() 'abrre a conexão

'Pesquisa feita pela quantidade produto

cmd.CommandText = "select A.*,B.*,C.*, D.* from produtos A inner join

marcas B on(A.cod_marca=B.cod_marca)inner join linha C on(A.cod_linha=C.cod_linha)

inner join categoria D on(A.cod_categoria=D.cod_categoria) where qtde_produto like '%" &

Trim(TextBox6.Text) & "%'"

DataGridView1.Rows.Clear() 'limpa os dados e carrega o grid novamente

consulta_grid() 'Método consulta, adiciona dados da pesquia ao grid.

desabilitar_checbox() 'método para desabilitar as checkbox.

Page 108: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

104

End If

Catch ex As Exception

MsgBox(ex.Message) 'mesagem de trativa de erro

End Try 'fim da trativa de erros.

End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button3.Click

Me.Close() 'fecha o formuário

principal.Show() 'executa o formulário principal

End Sub

Private Sub CheckBox3_CheckedChanged(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles CheckBox3.CheckedChanged

Try

'ordena por data

instrucao_checbox() 'método para ordenar em ordem alfabética, descrecente e

por data

Catch ex As Exception

MsgBox(ex.Message) 'mesagem de trativa de erro

End Try 'fim da trativa de erros.

End Sub

Private Sub CheckBox2_CheckedChanged(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles CheckBox2.CheckedChanged

Try

'ordena por ordem descrecente

instrucao_checbox() 'método para ordenar em ordem alfabética, descrecente e

por data

Catch ex As Exception

MsgBox(ex.Message)

End Try

End Sub

Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles CheckBox1.CheckedChanged

Try

'ordena alfabeticamente

Page 109: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

105

instrucao_checbox() 'método para ordenar em ordem alfabética, descrecente e

por data

Catch ex As Exception

MsgBox(ex.Message)

End Try

End Sub

Private Sub CheckBox2_Click(ByVal sender As Object, ByVal e As Sys-

tem.EventArgs) Handles CheckBox2.Click

CheckBox1.Checked = False

CheckBox3.Checked = False

End Sub

Private Sub CheckBox1_Click(ByVal sender As Object, ByVal e As Sys-

tem.EventArgs) Handles CheckBox1.Click

CheckBox2.Checked = False

CheckBox3.Checked = False

End Sub

Private Sub CheckBox3_Click(ByVal sender As Object, ByVal e As Sys-

tem.EventArgs) Handles CheckBox3.Click

CheckBox1.Checked = False

CheckBox2.Checked = False

End Sub

End Class

„**********************************************************************

'EXCLUSÃO DE ÍTENS DE VENDAS

'**********************************************************************

ITENS_VENDAS.VB

'

Public Class Itens_Venda

Dim total As Double

Dim quantidade, qtde2, venda As Integer

Private Function limpar_dados() 'Função apagar

'Instrução para o botão apagar

TextBox1.Clear()

Page 110: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

106

TextBox2.Clear()

TextBox3.Clear()

TextBox4.Clear()

TextBox5.Clear()

TextBox6.Clear()

TextBox7.Clear()

TextBox8.Clear()

TextBox1.Enabled = True 'Função abilitar, abilita determinados objetos no formu-

lário

TextBox3.Enabled = True

Button1.Enabled = False

TextBox1.Focus() 'função focus, quando o botão apagar e clickado o cursor irá pa-

ra a textbox1

Return TextBox1.Text()

End Function

Private Function consulta_banco() 'função executa para a atulização da quantidade e

valor na textbox 6 e 7 deste fórmulário.

conexao_mysql() 'procedure para a de conexção com o banco de dados e variaveis

cmd e con

cmd.Connection = con

con.Open()

cmd.CommandType = System.Data.CommandType.Text

cmd.CommandText = "select qtde_produto, vlr_unitario from produtos where

cod_produto = " & cod

reader = cmd.ExecuteReader()

reader.Read()

TextBox6.Text = reader("qtde_produto")

TextBox7.Text = reader("vlr_unitario")

reader.Close() 'Fecha a leitura com o banco de dados

con.Close() 'Fecha a conexão com o banco de dados

Return 1

End Function

Private Sub excluir()

TextBox1.Enabled = False

Page 111: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

107

TextBox2.Enabled = False

TextBox3.Enabled = False

TextBox5.Enabled = False

Button1.Enabled = True

End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button1.Click

Try 'Tratando erro

If CInt(TextBox1.Text) > 0 And CInt(TextBox2.Text) > 0 Then

If MsgBox("Deseja excluir esta categoria?", vbYesNo, "confirma") = vbYes

Then

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.Connection = con

con.Open() 'Abri a conexão com o banco de dados

With cmd

.CommandType = CommandType.Text

.CommandText = "Delete FROM itens_venda where cod_item = " &

CInt(Trim(TextBox1.Text)) 'O tipo de dados dever ser integer e a função trim romove os es-

paços iniciais e finais da textbox

.Parameters.Add("itens_venda", OleDb.OleDbType.VarChar)

.Parameters("itens_venda").Value = CInt(TextBox1.Text) 'Função trim.

Romove espaços iniciais e finsais da textbox

.ExecuteNonQuery()

End With

con.Close() 'Fecha a conexão com o banco de dados

MsgBox("Registro excluído com êxito!", vbInformation)

limpar_dados() 'função para limpar os dados após a exclusão de um item.

TextBox6.Clear() 'limpa a textbox

TextBox7.Clear() 'limpa as textbox

Else

MsgBox("Exclusão cancelada!", vbExclamation)

TextBox1.Focus() 'função focus, quando a exclusão é cancelada o cursor

volta para a textbox1

End If

Page 112: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

108

Else

MsgBox("Informação para exclusão inválida!", vbCritical)

TextBox1.Focus() 'função focus, quando a algum dado incorreto para pesqui-

sa o cursor volta para a textbox1

End If

Catch ex As Exception

MsgBox(ex.Message)

TextBox1.Enabled = True 'Função abilitar, abilita determinados objetos no for-

mulário

Button2.Enabled = False

TextBox1.Focus() 'função focus, quando a mensagem de erro é exibida na tela o

cursor volta para a textbox1

End Try

End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button2.Click

Try 'Tratando erro

conexao_mysql() 'procedure de conexão e comando (cmd, con)

cmd.Connection = con

con.Open() 'Abre a conexão com o banco de dados

cmd.CommandType = System.Data.CommandType.Text

If Val(TextBox1.Text) > 0 Then 'Condição para a pesquisa no banco de dados

cmd.CommandText = "select A.*, B.qtde_produto, B.vlr_unitario,

B.nome_produto from itens_venda A inner join produtos B on

(A.cod_produto=B.cod_produto) where cod_item = " & CInt(Trim(TextBox1.Text)) 'Só pode

haver valores inteiros(número). Função trim romove espaços iniciais e finais da textbox

ElseIf Val(TextBox3.Text) > 0 Then

cmd.CommandText = "select A.*, B.qtde_produto, B.vlr_unitario,

B.nome_produto from itens_venda A inner join produtos B on

(A.cod_produto=B.cod_produto) where qtde_item = " & CInt(Trim(TextBox3.Text))

Else

MsgBox("Dados inválidos para pesquisa!", vbCritical)

TextBox1.Focus() 'função focus, quando a algum campo de pesquisa inválido

o cursor é movido para a testbox1

Page 113: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

109

End If

reader = cmd.ExecuteReader()

reader.Read()

TextBox1.Text = reader("cod_item")

TextBox2.Text = reader("cod_venda")

TextBox5.Text = reader("cod_produto")

cod = reader("cod_produto")

TextBox3.Text = reader("qtde_item")

TextBox4.Text = reader("vlr_total_item")

TextBox6.Text = reader("qtde_produto")

quantidade = reader("qtde_item")

TextBox7.Text = reader("vlr_unitario")

TextBox8.Text = reader("nome_produto")

reader.Close() 'Fecha a leitura com o banco de dados

con.Close() 'Fecha a conexão com o banco de dados

excluir() 'objeto para desabilitar os campos e habilitar o botão exluir

TextBox2.Focus() 'quando a select é executado com sucesso o cursor irá para a

textbox2 por que a textbox1 fica desabilitada

Catch ex As Exception

MsgBox(ex.Message)

TextBox1.Focus() 'função focus, move o cursor quando tem algum erro para a

textbox1

End Try

End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button3.Click

limpar_dados() 'Função limpar. apaga todos os dados pequisado nas textboxs

TextBox8.Clear()

TextBox6.Clear()

TextBox7.Clear()

End Sub

Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress

Dim KeyAscii As Short = CShort(Asc(e.KeyChar))

Page 114: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

110

KeyAscii = CShort(SoNumeros(KeyAscii)) 'função para desabilitar texto na text-

box

'condição para habilitar os número. zero número, 1 texto.

If KeyAscii = 0 Then

e.Handled = True

End If

'condição para desabilitar a barra de espaço na textbox (código de barras do produ-

to)

If KeyAscii = 32 Then

e.Handled = True

End If

If e.KeyChar = Chr(13) Then

Button2_Click(Me, EventArgs.Empty) 'Evento click, quando o usuario digita

enter o botão é clickado

TextBox2.Focus() 'após pesquisar o cursor é movido para a textbox 2

End If

End Sub

Private Sub TextBox2_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox2.KeyPress

Dim KeyAscii As Short = CShort(Asc(e.KeyChar))

KeyAscii = CShort(SoNumeros(KeyAscii)) 'função para desabilitar texto na text-

box

'condição para habilitar os número. zero número, 1 texto.

If KeyAscii = 0 Then

e.Handled = True

End If

'condição para desabilitar a barra de espaço na textbox (código de barras do produ-

to)

If KeyAscii = 32 Then

e.Handled = True

End If

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

TextBox5.Focus() 'função focus, move o cursor para o campo especificado.

Page 115: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

111

End If

End Sub

Private Sub TextBox3_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox3.KeyPress

Dim KeyAscii As Short = CShort(Asc(e.KeyChar))

KeyAscii = CShort(SoNumeros(KeyAscii)) 'função para desabilitar texto na text-

box

'condição para habilitar os número. zero número, 1 texto.

If KeyAscii = 0 Then

e.Handled = True

End If

'condição para desabilitar a barra de espaço na textbox (código de barras do produ-

to)

If KeyAscii = 32 Then

e.Handled = True

End If

If e.KeyChar = Chr(13) Then

Button2_Click(Me, EventArgs.Empty)

TextBox4.Focus() 'função focus, move o cursor para o campo especificado.

End If

End Sub

Private Sub TextBox5_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox5.KeyPress

Dim KeyAscii As Short = CShort(Asc(e.KeyChar))

KeyAscii = CShort(SoNumeros(KeyAscii)) 'função para desabilitar texto na text-

box

'condição para habilitar os número. zero número, 1 texto.

If KeyAscii = 0 Then

e.Handled = True

End If

'condição para desabilitar a barra de espaço na textbox (código de barras do produ-

to)

If KeyAscii = 32 Then

e.Handled = True

Page 116: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

112

End If

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

TextBox3.Focus() 'função focus, move o cursor para o campo especificado.

End If

End Sub

Private Sub TextBox4_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox4.KeyPress

Dim KeyAscii As Short = CShort(Asc(e.KeyChar))

KeyAscii = CShort(SoNumeros(KeyAscii)) 'função para desabilitar texto na text-

box

'condição para habilitar os número. zero número, 1 texto.

If KeyAscii = 0 Then

e.Handled = True

End If

'condição para desabilitar a barra de espaço na textbox (código de barras do produ-

to)

If KeyAscii = 32 Then

e.Handled = True

End If

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

Button1.Focus()

End If

End Sub

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button4.Click

Close() 'fecha o formulário

principal.Show() 'executa o formulário príncipal

End Sub

Private Sub TextBox4_TextChanged(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles TextBox4.TextChanged

TextBox4.Text = Format(TextBox4.Text, "Currency")

End Sub

Page 117: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

113

Private Sub TextBox7_TextChanged(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles TextBox7.TextChanged

TextBox7.Text = Format(TextBox7.Text, "Currency")

End Sub

Private Sub Itens_Venda_KeyDown(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyEventArgs) Handles Me.KeyDown

If e.KeyCode = Keys.Escape Then

Button4.PerformClick()

End If

End Sub

End Class

„**********************************************************************

'CONSULTA DE VENDAS

'**********************************************************************

CONSULTA_VENDAS.VB

'

Public Class Consulta_venda

Dim codigo_item, qtde_item, COD_VENDA, QTDE_VENDA As Integer

Dim DATA_VENDA, HORA_VENDA As DateTime

Dim NOME_USUARIO, PAGAMENTO, VLR_TOTAL, VLR_T_VENDA, CODI-

GO_PRODUTO, BARRAS, NOME_PRODUTO As String

Private Sub consulta_grid() 'método para consultar os dados no banco de dados, não

há condição para esta consulta.

reader = cmd.ExecuteReader()

While (reader.Read)

'TABELA ITENS VENDA

codigo_item = reader("cod_item")

qtde_item = reader("qtde_item")

VLR_TOTAL = Format(reader("vlr_total_item"), "Currency")

CODIGO_PRODUTO = reader("cod_produto")

BARRAS = reader("cod_barras")

NOME_PRODUTO = reader("nome_produto")

'TABELA VENDA

Page 118: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

114

COD_VENDA = reader("cod_venda")

NOME_USUARIO = reader("nome_usuario")

PAGAMENTO = reader("tipo_pagamento")

DATA_VENDA = reader("data_venda")

HORA_VENDA = reader("hora_venda")

QTDE_VENDA = reader("qtde_venda")

VLR_T_VENDA = Format(reader("vlr_total_venda"), "Currency")

DataGridView1.Rows.Add(New String() {codigo_item, qtde_item,

VLR_TOTAL, NOME_PRODUTO, CODIGO_PRODUTO, BARRAS, COD_VENDA,

NOME_USUARIO, PAGAMENTO, DATA_VENDA, HORA_VENDA, QTDE_VENDA,

VLR_T_VENDA})

End While

con.Close()

End Sub

'método para consulta com condição

Private Sub consulta_com_condicao()

Try

CheckBox1.Checked = False

CheckBox2.Checked = False

CheckBox3.Checked = False

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecata ao banco de dados

con.Open() 'abrre a conexão

If TextBox1.Text <> " " Then

cmd.CommandText = "select A.*, B.*, C.nome_usuario, D.tipo_pagamento,

E.nome_produto, E.cod_barras, E.cod_produto from itens_venda A inner join venda B on

(A.cod_venda = B.cod_venda) inner join usuario C on (B.cod_usuario = C.cod_usuario) inner

join forma_pagamento D on (B.cod_pagamento=D.cod_pagamento) inner join produtos E on

(A.cod_produto=E.cod_produto) where cod_item like '%" & Trim(TextBox1.Text) & "%'" &

"or nome_produto like '%" & Trim(TextBox1.Text) & "%'" & "or cod_barras like '%" &

Trim(TextBox1.Text) & "%'" & "or tipo_pagamento like '%" & Trim(TextBox1.Text) & "%'"

& "or nome_usuario like '%" & Trim(TextBox1.Text) & "%'" & "or vlr_total_venda like '%"

& Trim(TextBox1.Text) & "%'" & "or qtde_venda like '%" & Trim(TextBox1.Text) & "%'"

Page 119: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

115

& "or hora_venda like '%" & Trim(TextBox1.Text) & "%'" & "or data_venda like '%" &

Trim(TextBox1.Text) & "%'" & "or cod_item like '%" & Trim(TextBox1.Text) & "%'" & "or

qtde_item like '%" & Trim(TextBox1.Text) & "%'" & "or vlr_total_item like '%" &

Trim(TextBox1.Text) & "%'" 'finalizar a select de vendas

Else

MsgBox("Campo vazio!", vbExclamation)

End If

DataGridView1.Rows.Clear()

consulta_grid() 'método para preencher o data grid através da pesquisa.

Catch erro As Exception

MsgBox(erro.Message, vbCritical)

End Try

End Sub

Private Sub ordenacao() 'método para ordenação dos dados no datagrid

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecata ao banco de dados

con.Open() 'abrre a conexão

If CheckBox1.Checked = True Then

cmd.CommandText = "select A.*, B.*, C.nome_usuario, D.tipo_pagamento,

E.nome_produto, E.cod_barras, E.cod_produto from itens_venda A inner join venda B on

(A.cod_venda = B.cod_venda) inner join usuario C on (B.cod_usuario = C.cod_usuario) inner

join forma_pagamento D on (B.cod_pagamento=D.cod_pagamento) inner join produtos E on

(A.cod_produto=E.cod_produto) order by nome_produto" 'ordena por ordem alfabética. Pode

ordenada com o que esta sendo pesquisado ou não.

DataGridView1.Rows.Clear()

consulta_grid() 'método para preencher o datagrid

ElseIf CheckBox2.Checked = True Then

cmd.CommandText = "select A.*, B.*, C.nome_usuario, D.tipo_pagamento,

E.nome_produto, E.cod_barras, E.cod_produto from itens_venda A inner join venda B on

(A.cod_venda = B.cod_venda) inner join usuario C on (B.cod_usuario = C.cod_usuario) inner

join forma_pagamento D on (B.cod_pagamento=D.cod_pagamento) inner join produtos E on

(A.cod_produto=E.cod_produto) order by cod_item desc" 'Ordena por ordem descrencente.

Ordena pelo o que já foi pesquisa ou não.

Page 120: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

116

DataGridView1.Rows.Clear()

consulta_grid() 'método para preencher o datagrid

ElseIf CheckBox3.Checked = True Then

cmd.CommandText = "select A.*, B.*, C.nome_usuario, D.tipo_pagamento,

E.nome_produto, E.cod_barras, E.cod_produto from itens_venda A inner join venda B on

(A.cod_venda = B.cod_venda) inner join usuario C on (B.cod_usuario = C.cod_usuario) inner

join forma_pagamento D on (B.cod_pagamento=D.cod_pagamento) inner join produtos E on

(A.cod_produto=E.cod_produto) order by data_venda desc" 'ordena por data. Pode ser orde-

nada por dados digitados ou não.

DataGridView1.Rows.Clear()

consulta_grid() 'método para preencher o datagrid

Else

consulta_com_condicao() 'método para consultar os dados na textbox.

End If

End Sub

Private Sub Consulta_venda_KeyDown(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyEventArgs) Handles Me.KeyDown

If e.KeyCode = Keys.Escape Then

Button3.PerformClick()

End If

End Sub

Private Sub Consulta_venda_Load(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles MyBase.Load

Try

With DataGridView1

'colunas do datagrid. Campos do datagrid

'tabela itens_venda

.Columns.Add("1", "Cód.Item")

.Columns.Add("2", "Quant.Item")

.Columns.Add("3", "Val.Total")

.Columns.Add("4", "Produto")

.Columns.Add("5", "Cod.Produto")

.Columns.Add("6", "cod.Barras")

'tabela venda

Page 121: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

117

.Columns.Add("7", "Cód.Venda")

.Columns.Add("8", "Vendedor")

.Columns.Add("9", "Pagamento")

.Columns.Add("10", "Data")

.Columns.Add("11", "Hora")

.Columns.Add("12", "Quant.Vend.")

.Columns.Add("13", "Total_Venda")

'cor de fundo

.BackgroundColor = Color.White

'tamanho da coluna codigo venda

.Columns(0).Width = 90

'Cabeçalho

.EnableHeadersVisualStyles = False

.ColumnHeadersDefaultCellStyle.Font = New Font("Arial", 14,

FontStyle.Bold)

.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlign-

ment.MiddleCenter

.RowHeadersWidthSizeMode = DataGridViewRowHeadersWidthSize-

Mode.AutoSizeToAllHeaders 'auto dimensiona o cabeçalho

.ColumnHeadersDefaultCellStyle.ForeColor = Color.White

.ColumnHeadersDefaultCellStyle.BackColor = Color.Black

'linha

.AlternatingRowsDefaultCellStyle.BackColor = Color.DarkGray

.AlternatingRowsDefaultCellStyle.ForeColor = Color.Purple

.AlternatingRowsDefaultCellStyle.Font = New Font("Arial", 12,

FontStyle.Regular)

'colunha

.DefaultCellStyle.Font = New Font("Arial", 12, FontStyle.Bold)

.DefaultCellStyle.ForeColor = Color.Black

.DefaultCellStyle.BackColor = Color.DarkCyan

'.DefaultCellStyle.WrapMode = DataGridViewTriState.False 'evita a quebra

de linha

End With

conexao_mysql() 'procedure de conexão e comando (cmd e con)

Page 122: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

118

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecata ao banco de dados

con.Open() 'abrre a conexão

cmd.CommandText = "select A.*, B.*, C.nome_usuario, D.tipo_pagamento,

E.nome_produto, E.cod_barras, E.cod_produto from itens_venda A inner join venda B on

(A.cod_venda = B.cod_venda) inner join usuario C on (B.cod_usuario = C.cod_usuario) inner

join forma_pagamento D on (B.cod_pagamento=D.cod_pagamento) inner join produtos E on

(A.cod_produto=E.cod_produto)"

consulta_grid() 'método para preencher o datagrid. Tudo que há no banco de da-

dos será enviado para este método.

Catch erro As Exception

MsgBox(erro.Message & " " & "Contate seu administrador.", vbCritical)

End Try

End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button3.Click

Me.Close()

principal.Show()

End Sub

Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress

If e.KeyChar = ","c Then

e.Handled = True

SendKeys.Send(".") 'converte o ponto para virgula

ElseIf e.KeyChar = "/"c Or e.KeyChar = "-"c Then

e.Handled = True

SendKeys.Send("") 'converte / para -

If Len(TextBox1.Text) = 2 Then

TextBox1.Text = "-" + TextBox1.Text

End If

If Len(TextBox1.Text) = 5 Then

TextBox1.Text = "-" + TextBox1.Text

End If

End If

Page 123: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

119

End Sub

Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles TextBox1.TextChanged

consulta_com_condicao() 'realiza a consulta de acordo com o que há na textbox.

End Sub

Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles CheckBox1.CheckedChanged

Try

ordenacao() 'método para ordenar os dados no datagrid. Ordena alfabeticamente.

Catch erro As Exception

MsgBox(erro.Message & " " & "Contate seu administrador.", vbCritical)

End Try

End Sub

Private Sub CheckBox2_CheckedChanged(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles CheckBox2.CheckedChanged

Try

ordenacao() 'método para ordenar os dados no datagrid. Ordem descrencente.

Catch erro As Exception

MsgBox(erro.Message & " " & "Contate seu administrador.", vbCritical)

End Try

End Sub

Private Sub CheckBox3_CheckedChanged(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles CheckBox3.CheckedChanged

Try

ordenacao() 'método para ordenar os dados na datagrid. Ordena por data.

Catch erro As Exception

MsgBox(erro.Message & " " & "Contate seu administrador.", vbCritical)

End Try

End Sub

Private Sub CheckBox1_Click(ByVal sender As Object, ByVal e As Sys-

tem.EventArgs) Handles CheckBox1.Click

If CheckBox2.Checked = True Or CheckBox3.Checked = True Then

CheckBox2.Checked = False

CheckBox3.Checked = False

Page 124: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

120

CheckBox1.Checked = True

End If

End Sub

Private Sub CheckBox2_Click(ByVal sender As Object, ByVal e As Sys-

tem.EventArgs) Handles CheckBox2.Click

If CheckBox1.Checked = True Or CheckBox3.Checked = True Then

CheckBox1.Checked = False

CheckBox3.Checked = False

CheckBox2.Checked = True

End If

End Sub

Private Sub CheckBox3_Click(ByVal sender As Object, ByVal e As Sys-

tem.EventArgs) Handles CheckBox3.Click

If CheckBox1.Checked = True Or CheckBox2.Checked = True Then

CheckBox1.Checked = False

CheckBox2.Checked = False

CheckBox3.Checked = True

End If

End Sub

End Class

„**********************************************************************

'CONSULTA DE USUÁRIOS

'**********************************************************************

CONSULTA_USUARIO.VB

'

Public Class Consulta_Usuario

Dim codigo_user As Integer

Dim nome_user, cpf_user, rg_user, nome_lg, SENHA As String

Private Sub consulta_usuario_grid() 'método para preencher o datagrid

reader = cmd.ExecuteReader()

While (reader.Read)

codigo_user = reader("cod_usuario")

nome_user = reader("nome_usuario")

Page 125: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

121

cpf_user = reader("cpf_usuario")

rg_user = reader("rg_usuario")

nome_lg = reader("nome_login")

SENHA = reader("senha")

If CheckBox3.Checked = False Then

DataGridView1.Rows.Add(New String() {codigo_user, nome_user, cpf_user,

rg_user, nome_lg})

Else

DataGridView1.Rows.Add(New String() {codigo_user, nome_user, cpf_user,

rg_user, nome_lg, SENHA})

End If

End While

con.Close()

End Sub

Private Sub consulta_condicao() 'método para consultar conforme informações forne-

cidas pelo o usuário.

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecata ao banco de dados

con.Open() 'abrre a conexão

If TextBox1.Text <> " " Then

cmd.CommandText = "select A.*, B.* from usuario A INNER JOIN login B

on(A.cod_login=B.cod_login) where cod_usuario > 1 and (cod_usuario like '%" &

Trim(TextBox1.Text) & "%'" & "or nome_usuario like'%" & Trim(TextBox1.Text) & "%'" &

"or cpf_usuario like'%" & Trim(TextBox1.Text) & "%'" & "or rg_usuario like '%" &

Trim(TextBox1.Text) & "%')" 'Esta selec realiza a consulta no banco de dados pelo nome da

categoria ou pelo código da categoria

Else

MsgBox("Campo vazio!", vbExclamation)

End If

DataGridView1.Rows.Clear()

consulta_usuario_grid() 'método para preencher o datagrd através da pesquida rea-

lizada na textbox

End Sub

Page 126: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

122

Private Sub ordenacao() 'método para ordenar as informações presente no datagrid

Try

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecata ao banco de dados

con.Open() 'abrre a conexão

If CheckBox1.Checked = True Then

cmd.CommandText = "select A.*, B.* from usuario A INNER JOIN login B

on(A.cod_login=B.cod_login) where cod_usuario > 1 order by nome_usuario"

DataGridView1.Rows.Clear()

consulta_usuario_grid() 'método para preencher o datagrid

ElseIf CheckBox2.Checked = True Then

cmd.CommandText = "select A.*, B.* from usuario A INNER JOIN login B

on(A.cod_login=B.cod_login) where cod_usuario > 1 order by cod_usuario desc"

DataGridView1.Rows.Clear()

consulta_usuario_grid() 'método para preencher o datagrid

Else

consulta_condicao() 'método apra consultar os dado "se houver" na textbox

End If

Catch erro As Exception

MsgBox(erro.Message & " " & "Contate seu administrador", vbCritical)

End Try

End Sub

Private Sub Consulta_Usuario_KeyDown(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyEventArgs) Handles Me.KeyDown

If e.KeyCode = Keys.Escape Then

Button3.PerformClick()

End If

End Sub

Private Sub Consulta_Usuario_Load(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles MyBase.Load

Try

With DataGridView1

.Columns.Add("1", "Codigo")

Page 127: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

123

.Columns.Add("2", "Nome do Usuário")

.Columns.Add("3", "CPF Usuário")

.Columns.Add("4", "RG Usuário")

.Columns.Add("5", "Nome do Login")

.Columns.Add("6", "Senha")

'cor de fundo

.BackgroundColor = Color.White

'tamanho da coluna codigo linha

.Columns(0).Width = 90

'Cabeçalho

.EnableHeadersVisualStyles = False

.ColumnHeadersDefaultCellStyle.Font = New Font("Arial", 14,

FontStyle.Bold)

.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlign-

ment.MiddleCenter

.RowHeadersWidthSizeMode = DataGridViewRowHeadersWidthSize-

Mode.AutoSizeToAllHeaders 'auto dimensiona o cabeçalho

.ColumnHeadersDefaultCellStyle.ForeColor = Color.White

.ColumnHeadersDefaultCellStyle.BackColor = Color.Black

'linha

.AlternatingRowsDefaultCellStyle.BackColor = Color.DarkGray

.AlternatingRowsDefaultCellStyle.ForeColor = Color.Purple

.AlternatingRowsDefaultCellStyle.Font = New Font("Arial", 12,

FontStyle.Regular)

.AlternatingRowsDefaultCellStyle.Alignment = DataGridViewContentA-

lignment.MiddleLeft

'colunha

.DefaultCellStyle.Font = New Font("Arial", 12, FontStyle.Bold)

.DefaultCellStyle.ForeColor = Color.Black

.DefaultCellStyle.BackColor = Color.DarkCyan

.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft

'.RowHeadersVisible = False 'retira a coluna da esquerda

End With

conexao_mysql() 'procedure de conexão e comando (cmd e con)

Page 128: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

124

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecata ao banco de dados

con.Open() 'abrre a conexão

cmd.CommandText = "select A.*, B.* from usuario A INNER JOIN login B

on(A.cod_login=B.cod_login) where cod_usuario > 1"

consulta_usuario_grid() 'método para preecher o data grid através da select rea-

lizada na tabela login e usuário.

If acrescenta_campo = 1 Then 'conidção para definir o campo senha. Se for ad-

ministrador a checkbox senha fica visivel.

If CheckBox3.Checked = True Then

DataGridView1.Columns("6").Visible = True 'a coluna fica visivel quendo

o usuário administrador clica na checkbox.

Else

DataGridView1.Columns("6").Visible = False 'a coluna fica invisivel

quando usuário administrador clica novamente a checkbox3.

End If

Else

CheckBox3.Visible = False 'condição, se o usário segundo usuário administr-

dor. A checkbox senha e a colunha senha não ficam visiveis.

DataGridView1.Columns("6").Visible = False

End If

Catch erro As Exception

MsgBox(erro.Message & "Contate seu administrador.", vbCritical)

End Try

End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button3.Click

Me.Close()

principal.Show()

End Sub

Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles TextBox1.TextChanged

Try

consulta_condicao() 'método qued exeuta a consulta na textbox.

Page 129: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

125

CheckBox1.Checked = False

CheckBox2.Checked = False

Catch erro As Exception

MsgBox(erro.Message, vbCritical)

End Try

End Sub

Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles CheckBox1.CheckedChanged

ordenacao() 'método para ordenar os dados do datagrid. Ordenação alfabética

End Sub

Private Sub CheckBox2_CheckedChanged(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles CheckBox2.CheckedChanged

ordenacao() 'método apra ordenar os dados do datagrid. Ordenação descrecente

End Sub

Private Sub CheckBox1_Click(ByVal sender As Object, ByVal e As Sys-

tem.EventArgs) Handles CheckBox1.Click

CheckBox2.Checked = False

End Sub

Private Sub CheckBox2_Click(ByVal sender As Object, ByVal e As Sys-

tem.EventArgs) Handles CheckBox2.Click

CheckBox1.Checked = False

End Sub

Private Sub CheckBox3_CheckedChanged(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles CheckBox3.CheckedChanged

If CheckBox3.Checked = True Then

If acrescenta_campo = 1 Then

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecata ao banco de dados

con.Open() 'abrre a conexão

cmd.CommandText = "select A.*, B.* from usuario A INNER JOIN login B

on(A.cod_login=B.cod_login) where cod_usuario > 1"

DataGridView1.Rows.Clear()

Page 130: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

126

consulta_usuario_grid() 'método para preecher o data grid através da select

realizada na tabela login e usuário.

DataGridView1.Columns("6").Visible = True

Else

DataGridView1.Columns("6").Visible = False

End If

Else

DataGridView1.Columns("6").Visible = False

End If

End Sub

End Class

„**********************************************************************

'CONSULTA DE MARCAS

'**********************************************************************

CONSULTA_MARCA.VB

'

Public Class Consulta_Marca

'variaveis que serão preenchidas na consulta para preencher o data grid.

Dim codigo_marca As Integer

Dim nome_marca As String

Private Sub consulta_marca_grid() 'método para preencher o datagrid

reader = cmd.ExecuteReader()

While (reader.Read)

codigo_marca = reader("cod_marca")

nome_marca = reader("nome_marca")

DataGridView1.Rows.Add(New String() {codigo_marca, nome_marca})

End While

con.Close()

End Sub

Private Sub consulta_condicao() 'método para consultar dados conforme dados no

textbox

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

Page 131: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

127

cmd.Connection = con 'conecata ao banco de dados

con.Open() 'abrre a conexão

If TextBox1.Text <> " " Then

cmd.CommandText = "select * from marcas where nome_marca like'%" &

TextBox1.Text & "%'" & "or cod_marca = " & Val(TextBox1.Text) 'Esta selec realiza a con-

sulta no banco de dados pelo nome da marca ou pelo código da marca

Else

MsgBox("Campo vazio!", vbExclamation)

End If

DataGridView1.Rows.Clear()

consulta_marca_grid() 'métod para preencher o datagrid através da consulta reali-

zada na textbox.

End Sub

Private Sub ordenacao() 'método para ordenar os dados no datagrid

Try

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecata ao banco de dados

con.Open() 'abrre a conexão

If CheckBox1.Checked = True Then

cmd.CommandText = "select * from marcas order by nome_marca" 'Esta se-

lec realiza a consulta no banco de dados pelo nome da marca ou pelo código da marca

DataGridView1.Rows.Clear()

consulta_marca_grid() 'método para preencher o datagrid através da consulta

realizada na textbox.

ElseIf CheckBox2.Checked = True Then

cmd.CommandText = "select * from marcas order by cod_marca desc" 'Esta

selec realiza a consulta no banco de dados pelo nome da marca ou pelo código da marca

DataGridView1.Rows.Clear()

consulta_marca_grid() 'métod para preencher o datagrid através da consulta

realizada na textbox.

Else

consulta_condicao() 'método para consulta conforme dados na textbox

End If

Page 132: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

128

Catch pesquisa As Exception

MsgBox(pesquisa.Message & " " & "Contate seu administrador", vbCritical)

End Try

End Sub

Private Sub Consulta_Marca_KeyDown(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyEventArgs) Handles Me.KeyDown

If e.KeyCode = Keys.Escape Then

Button3.PerformClick()

End If

End Sub

Private Sub Consulta_Marca_Load(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles MyBase.Load

Try

With DataGridView1

'colunas do datagrid

.Columns.Add("1", "Codigo")

.Columns.Add("2", "Marca")

'cor de fundo

.BackgroundColor = Color.White

'tamanho da coluna codigo linha

.Columns(0).Width = 90

'Cabeçalho

.EnableHeadersVisualStyles = False

.ColumnHeadersDefaultCellStyle.Font = New Font("Arial", 14,

FontStyle.Bold)

.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlign-

ment.MiddleCenter

.RowHeadersWidthSizeMode = DataGridViewRowHeadersWidthSize-

Mode.AutoSizeToAllHeaders 'auto dimensiona o cabeçalho

.ColumnHeadersDefaultCellStyle.ForeColor = Color.White

.ColumnHeadersDefaultCellStyle.BackColor = Color.Black

'linha

.AlternatingRowsDefaultCellStyle.BackColor = Color.DarkGray

.AlternatingRowsDefaultCellStyle.ForeColor = Color.Purple

Page 133: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

129

.AlternatingRowsDefaultCellStyle.Font = New Font("Arial", 12,

FontStyle.Regular)

.AlternatingRowsDefaultCellStyle.Alignment = DataGridViewContentA-

lignment.MiddleLeft

'colunha

.DefaultCellStyle.Font = New Font("Arial", 12, FontStyle.Bold)

.DefaultCellStyle.ForeColor = Color.Black

.DefaultCellStyle.BackColor = Color.DarkCyan

.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft

End With

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecata ao banco de dados

con.Open() 'abrre a conexão

cmd.CommandText = "select * from marcas"

consulta_marca_grid() 'método para preencher o data grid atraves da select rea-

lizada na tabela marcas

Catch erro As Exception

MsgBox(erro.Message & " " & "Contate seu administrador.", vbCritical)

End Try

End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button3.Click

Me.Close()

principal.Show()

End Sub

Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles TextBox1.TextChanged

Try

consulta_condicao() 'consulta os dados digitados na textbox

CheckBox1.Checked = False

CheckBox2.Checked = False

Catch pesquisa As Exception

MsgBox(pesquisa.Message, vbCritical)

Page 134: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

130

End Try

End Sub

Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles CheckBox1.CheckedChanged

ordenacao() 'método para ordenar os dados no datagrid. Ordenação alfabética.

End Sub

Private Sub CheckBox2_CheckedChanged(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles CheckBox2.CheckedChanged

ordenacao() 'método para ordenar os dados no datagrid. Ordenação descrencente

End Sub

Private Sub CheckBox1_Click(ByVal sender As Object, ByVal e As Sys-

tem.EventArgs) Handles CheckBox1.Click

CheckBox2.Checked = False

End Sub

Private Sub CheckBox2_Click(ByVal sender As Object, ByVal e As Sys-

tem.EventArgs) Handles CheckBox2.Click

CheckBox1.Checked = False

End Sub

End Class

„**********************************************************************

'CONSULTA DE MARCAS

'**********************************************************************

CONSULTA_MARCA.VB

'

Public Class Consulta_Marca

'variaveis que serão preenchidas na consulta para preencher o data grid.

Dim codigo_marca As Integer

Dim nome_marca As String

Private Sub consulta_marca_grid() 'método para preencher o datagrid

reader = cmd.ExecuteReader()

While (reader.Read)

codigo_marca = reader("cod_marca")

nome_marca = reader("nome_marca")

Page 135: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

131

DataGridView1.Rows.Add(New String() {codigo_marca, nome_marca})

End While

con.Close()

End Sub

Private Sub consulta_condicao() 'método para consultar dados conforme dados no

textbox

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecata ao banco de dados

con.Open() 'abrre a conexão

If TextBox1.Text <> " " Then

cmd.CommandText = "select * from marcas where nome_marca like'%" &

TextBox1.Text & "%'" & "or cod_marca = " & Val(TextBox1.Text) 'Esta selec realiza a con-

sulta no banco de dados pelo nome da marca ou pelo código da marca

Else

MsgBox("Campo vazio!", vbExclamation)

End If

DataGridView1.Rows.Clear()

consulta_marca_grid() 'métod para preencher o datagrid através da consulta reali-

zada na textbox.

End Sub

Private Sub ordenacao() 'método para ordenar os dados no datagrid

Try

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecata ao banco de dados

con.Open() 'abrre a conexão

If CheckBox1.Checked = True Then

cmd.CommandText = "select * from marcas order by nome_marca" 'Esta se-

lec realiza a consulta no banco de dados pelo nome da marca ou pelo código da marca

DataGridView1.Rows.Clear()

consulta_marca_grid() 'método para preencher o datagrid através da consulta

realizada na textbox.

ElseIf CheckBox2.Checked = True Then

Page 136: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

132

cmd.CommandText = "select * from marcas order by cod_marca desc" 'Esta

selec realiza a consulta no banco de dados pelo nome da marca ou pelo código da marca

DataGridView1.Rows.Clear()

consulta_marca_grid() 'métod para preencher o datagrid através da consulta

realizada na textbox.

Else

consulta_condicao() 'método para consulta conforme dados na textbox

End If

Catch pesquisa As Exception

MsgBox(pesquisa.Message & " " & "Contate seu administrador", vbCritical)

End Try

End Sub

Private Sub Consulta_Marca_KeyDown(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyEventArgs) Handles Me.KeyDown

If e.KeyCode = Keys.Escape Then

Button3.PerformClick()

End If

End Sub

Private Sub Consulta_Marca_Load(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles MyBase.Load

Try

With DataGridView1

'colunas do datagrid

.Columns.Add("1", "Codigo")

.Columns.Add("2", "Marca")

'cor de fundo

.BackgroundColor = Color.White

'tamanho da coluna codigo linha

.Columns(0).Width = 90

'Cabeçalho

.EnableHeadersVisualStyles = False

.ColumnHeadersDefaultCellStyle.Font = New Font("Arial", 14,

FontStyle.Bold)

Page 137: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

133

.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlign-

ment.MiddleCenter

.RowHeadersWidthSizeMode = DataGridViewRowHeadersWidthSize-

Mode.AutoSizeToAllHeaders 'auto dimensiona o cabeçalho

.ColumnHeadersDefaultCellStyle.ForeColor = Color.White

.ColumnHeadersDefaultCellStyle.BackColor = Color.Black

'linha

.AlternatingRowsDefaultCellStyle.BackColor = Color.DarkGray

.AlternatingRowsDefaultCellStyle.ForeColor = Color.Purple

.AlternatingRowsDefaultCellStyle.Font = New Font("Arial", 12,

FontStyle.Regular)

.AlternatingRowsDefaultCellStyle.Alignment = DataGridViewContentA-

lignment.MiddleLeft

'colunha

.DefaultCellStyle.Font = New Font("Arial", 12, FontStyle.Bold)

.DefaultCellStyle.ForeColor = Color.Black

.DefaultCellStyle.BackColor = Color.DarkCyan

.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft

End With

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecata ao banco de dados

con.Open() 'abrre a conexão

cmd.CommandText = "select * from marcas"

consulta_marca_grid() 'método para preencher o data grid atraves da select rea-

lizada na tabela marcas

Catch erro As Exception

MsgBox(erro.Message & " " & "Contate seu administrador.", vbCritical)

End Try

End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button3.Click

Me.Close()

principal.Show()

Page 138: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

134

End Sub

Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles TextBox1.TextChanged

Try

consulta_condicao() 'consulta os dados digitados na textbox

CheckBox1.Checked = False

CheckBox2.Checked = False

Catch pesquisa As Exception

MsgBox(pesquisa.Message, vbCritical)

End Try

End Sub

Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles CheckBox1.CheckedChanged

ordenacao() 'método para ordenar os dados no datagrid. Ordenação alfabética.

End Sub

Private Sub CheckBox2_CheckedChanged(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles CheckBox2.CheckedChanged

ordenacao() 'método para ordenar os dados no datagrid. Ordenação descrencente

End Sub

Private Sub CheckBox1_Click(ByVal sender As Object, ByVal e As Sys-

tem.EventArgs) Handles CheckBox1.Click

CheckBox2.Checked = False

End Sub

Private Sub CheckBox2_Click(ByVal sender As Object, ByVal e As Sys-

tem.EventArgs) Handles CheckBox2.Click

CheckBox1.Checked = False

End Sub

End Class

„**********************************************************************

'CONSULTA DE LINHA

'**********************************************************************

CONSULTA_LINHA.VB

'

Page 139: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

135

Public Class Consulta_linha

'variaveis que serão preenchidas na consulta para preencher o data grid.

Dim codigo_linha As Integer

Dim nome_linha As String

Private Sub consulta_linha_grid() 'método para preencher o datagrid

reader = cmd.ExecuteReader()

While (reader.Read)

codigo_linha = reader("cod_linha")

nome_linha = reader("nome_linha")

DataGridView1.Rows.Add(New String() {codigo_linha, nome_linha})

End While

con.Close()

End Sub 'fim do método

Private Sub consulta_com_condicao() 'método para consultar dados na textbox

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecata ao banco de dados

con.Open() 'abrre a conexão

If TextBox1.Text <> " " Then

cmd.CommandText = "select * from linha where nome_linha like'%" & Text-

Box1.Text & "%'" & "or cod_linha = " & Val(TextBox1.Text) 'Esta selec realiza a consulta

no banco de dados pelo nome da linh ou pelo código da linha

Else

MsgBox("Campo vazio!", vbExclamation)

End If

DataGridView1.Rows.Clear()

consulta_linha_grid() 'método para preenhcer o datagrid através da select com

condição de pesquisa realizada na tabela linha

End Sub

Private Sub ordenacao()

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecta ao banco de dados

con.Open() 'abre a conexão.

Page 140: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

136

If CheckBox1.Checked = True Then

cmd.CommandText = "select * from linha order by nome_linha"

DataGridView1.Rows.Clear()

consulta_linha_grid() 'método para preencher o datagrid

ElseIf CheckBox2.Checked = True Then

cmd.CommandText = "select * from linha order by cod_linha desc"

DataGridView1.Rows.Clear()

consulta_linha_grid() 'método para preencher o datagrid

Else

consulta_com_condicao() 'método consultar no textbox

End If

End Sub

Private Sub Consulta_linha_KeyDown(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyEventArgs) Handles Me.KeyDown

If e.KeyCode = Keys.Escape Then

Button3.PerformClick()

End If

End Sub

Private Sub Consulta_linha_Load(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles MyBase.Load

Try

With DataGridView1

'colunas do datagrid

.Columns.Add("1", "Codigo")

.Columns.Add("2", "Linha")

'cor de fundo

.BackgroundColor = Color.White

'tamanho da coluna codigo linha

.Columns(0).Width = 90

'Cabeçalho

.EnableHeadersVisualStyles = False

.ColumnHeadersDefaultCellStyle.Font = New Font("Arial", 14,

FontStyle.Bold)

Page 141: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

137

.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlign-

ment.MiddleCenter

.RowHeadersWidthSizeMode = DataGridViewRowHeadersWidthSize-

Mode.AutoSizeToAllHeaders 'auto dimensiona o cabeçalho

.ColumnHeadersDefaultCellStyle.ForeColor = Color.White

.ColumnHeadersDefaultCellStyle.BackColor = Color.Black

'linha

.AlternatingRowsDefaultCellStyle.BackColor = Color.DarkGray

.AlternatingRowsDefaultCellStyle.ForeColor = Color.Purple

.AlternatingRowsDefaultCellStyle.Font = New Font("Arial", 12,

FontStyle.Regular)

.AlternatingRowsDefaultCellStyle.Alignment = DataGridViewContentA-

lignment.MiddleLeft

'colunha

.DefaultCellStyle.Font = New Font("Arial", 12, FontStyle.Regular)

.DefaultCellStyle.ForeColor = Color.Black

.DefaultCellStyle.BackColor = Color.DarkCyan

.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft

End With

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecata ao banco de dados

con.Open() 'abrre a conexão

cmd.CommandText = "select * from linha"

consulta_linha_grid() 'método para preencher o datagrid através da select realiza

na tabela linha

Catch erro As Exception

MsgBox(erro.Message & "Contate seu administrador.", vbCritical)

End Try

End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button3.Click

Me.Close()

principal.Show()

Page 142: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

138

End Sub

Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles TextBox1.TextChanged

Try

consulta_com_condicao() 'método para a consulta na textbox

CheckBox1.Checked = False

CheckBox2.Checked = False

Catch pesquisa As Exception

MsgBox(pesquisa.Message, vbCritical)

End Try

End Sub

Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles CheckBox1.CheckedChanged

ordenacao() 'método para ordenar alfabeticamente.

End Sub

Private Sub CheckBox2_CheckedChanged(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles CheckBox2.CheckedChanged

ordenacao() 'método para ordenação descrecente.

End Sub

Private Sub CheckBox1_Click(ByVal sender As Object, ByVal e As Sys-

tem.EventArgs) Handles CheckBox1.Click

CheckBox2.Checked = False

End Sub

Private Sub CheckBox2_Click(ByVal sender As Object, ByVal e As Sys-

tem.EventArgs) Handles CheckBox2.Click

CheckBox1.Checked = False

End Sub

End Class

„**********************************************************************

'CONSULTA DE CATEGORIA

'**********************************************************************

CONSULTA_CATEGORIA.VB

'

Page 143: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

139

Imports MySql.Data.MySqlClient

Public Class Consulta_categoria

'variaveis que serão preenchidas na consulta para preencher o data grid.

Dim codigo_categoria As Integer

Dim nome_categoria As String

Private Sub consulta_categoria_grid() 'método para preencher o datagrid.

reader = cmd.ExecuteReader()

While (reader.Read)

codigo_categoria = reader("cod_categoria")

nome_categoria = reader("nome_categoria")

DataGridView1.Rows.Add(New String() {codigo_categoria, nome_categoria})

End While

con.Close()

End Sub

Private Sub preencher_datagrid_padrao() 'método para preencher o datagrid assim

que o fomulário é executado.

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecata ao banco de dados

con.Open() 'abrre a conexão

cmd.CommandText = "select * from categoria"

consulta_categoria_grid() 'método que preenchera o datagrid através da select rea-

lizada na tabela categoria

End Sub

Private Sub ordenacao_checkbox() 'ordena por ordem alfabética

Try

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecta ao banco de dados

con.Open() 'abre a conexão.

If CheckBox1.Checked = True Then

cmd.CommandText = "select * from categoria order by nome_categoria"

'ordena em ordem alfabética

DataGridView1.Rows.Clear()

Page 144: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

140

consulta_categoria_grid() 'método que preenche o datagrid

ElseIf CheckBox2.Checked = True Then

cmd.CommandText = "select * from categoria order by cod_categoria desc"

'ordena em ordem descrecente.

DataGridView1.Rows.Clear()

consulta_categoria_grid() 'método que preenche o datagrid

Else

consulta_com_condicao() 'método que será exetudado quando as condições

não forem correspondida

End If

Catch ex As Exception

MsgBox(ex.Message)

End Try

End Sub

Private Sub consulta_com_condicao() 'método para consultar os dados no datagrid

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecata ao banco de dados

con.Open() 'abrre a conexão

If TextBox1.Text <> " " Then

cmd.CommandText = "select * from categoria where nome_categoria like'%" &

Trim(TextBox1.Text) & "%'" & "or cod_categoria = " & Val(Trim(TextBox1.Text)) 'Esta

selec realiza a consulta no banco de dados pelo nome da categoria ou pelo código da categoria

Else

MsgBox("Campo vazio!", vbExclamation)

End If

DataGridView1.Rows.Clear() 'limpa os dodos

consulta_categoria_grid() 'método que preenchera o datagrid através da pesquisa

com condição na tabela categoria

End Sub

Private Sub Consulta_categoria_KeyDown(sender As Object, e As Sys-

tem.Windows.Forms.KeyEventArgs) Handles Me.KeyDown

If e.KeyCode = Keys.Escape Then

Button3.PerformClick() 'tecla de atalho para sair do formulário

Page 145: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

141

End If

End Sub

Private Sub Consulta_categoria_Load(sender As System.Object, e As Sys-

tem.EventArgs) Handles MyBase.Load

Try

With DataGridView1

'colunas do datagrid

.Columns.Add("1", "Codigo")

.Columns.Add("2", "Categoria")

'cor de fundo

.BackgroundColor = Color.White

'tamanho da coluna codigo linha

.Columns(0).Width = 90

'Cabeçalho

.EnableHeadersVisualStyles = False

.ColumnHeadersDefaultCellStyle.Font = New Font("Arial", 14,

FontStyle.Bold)

.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlign-

ment.MiddleCenter

.RowHeadersWidthSizeMode = DataGridViewRowHeadersWidthSize-

Mode.AutoSizeToAllHeaders 'auto dimensiona o cabeçalho

.ColumnHeadersDefaultCellStyle.ForeColor = Color.White

.ColumnHeadersDefaultCellStyle.BackColor = Color.Black

'linha

.AlternatingRowsDefaultCellStyle.BackColor = Color.DarkGray

.AlternatingRowsDefaultCellStyle.ForeColor = Color.Purple

.AlternatingRowsDefaultCellStyle.Font = New Font("Arial", 12,

FontStyle.Regular)

'colunha

.DefaultCellStyle.Font = New Font("Arial", 12, FontStyle.Bold)

.DefaultCellStyle.ForeColor = Color.Black

.DefaultCellStyle.BackColor = Color.DarkCyan

End With

Page 146: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

142

preencher_datagrid_padrao() 'executa o método para preencher o datagrid como

forma padrão.

Catch erro As Exception

MsgBox(erro.Message & "Contate seu administrador.", vbCritical)

End Try

End Sub

Private Sub Button3_Click(sender As System.Object, e As System.EventArgs) Han-

dles Button3.Click

Me.Close()

principal.Show()

End Sub

Private Sub TextBox1_TextChanged(sender As System.Object, e As Sys-

tem.EventArgs) Handles TextBox1.TextChanged

Try

consulta_com_condicao()

CheckBox1.Checked = False

CheckBox2.Checked = False

Catch pesquisa As Exception

MsgBox(pesquisa.Message)

End Try

End Sub

Private Sub CheckBox1_CheckedChanged(sender As System.Object, e As Sys-

tem.EventArgs) Handles CheckBox1.CheckedChanged

ordenacao_checkbox() 'método para ordenar os itens no datagrid

End Sub

Private Sub CheckBox2_CheckedChanged(sender As System.Object, e As Sys-

tem.EventArgs) Handles CheckBox2.CheckedChanged

ordenacao_checkbox() 'método para ordenar os itens no datagrid

End Sub

Private Sub CheckBox1_Click(sender As Object, e As System.EventArgs) Handles

CheckBox1.Click

CheckBox2.Checked = False

End Sub

Page 147: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

143

Private Sub CheckBox2_Click(sender As Object, e As System.EventArgs) Handles

CheckBox2.Click

CheckBox1.Checked = False

End Sub

End Class

„**********************************************************************

'ALTERAR SENHA

'**********************************************************************

ALTERARSENHA.VB

'

Imports MySql.Data.MySqlClient

Public Class AlterarSenha

Dim NOME_LOGIN, SENHA_LOGIN As String

Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Han-

dles Button1.Click

Try ' trataviva de erro do banco e do formulário

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'variavel de conexão

con.Open() 'abri a conexão com o banco de dados

cmd.CommandText = "select * from login where nome_login = '" &

Trim(TextBox4.Text) & "'" 'Função trim, remove os espaços iniciais e finais.

reader = cmd.ExecuteReader() 'comando para executar a reader

reader.Read() 'variável reader para ler os dados selecionado na select

NOME_LOGIN = reader("nome_login")

SENHA_LOGIN = reader("senha")

reader.Close() 'fechando a reader

con.Close() 'fecha a conexão com o banco de dados

Catch ex As Exception

MsgBox("Usuario incorreto.", vbCritical)

TextBox4.Focus() 'função focus, quando acontece algum erro o cursor volta para

o campo especificado.

End Try

Page 148: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

144

If MaskedTextBox1.Text = SENHA_LOGIN Then 'condição para a alteração de

senha. A maskedtextbox tem de ser igual a variavel em questão.

Try

If MaskedTextBox2.Text = MaskedTextBox3.Text Then 'segunda condição, a

senha que estiver igual na primeira condição irá fazer estas instruções. A nova senha da Mas-

kedTextBox2 tem de ser igual a MaskedTextBox3

If MsgBox("Deseja alterar sua senha?", vbYesNo, "confirmação") = vbYes

Then

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.Connection = con

con.Open() 'abri a conexão com o banco de dados

With cmd

.CommandType = CommandType.Text

.CommandText = "UPDATE login SET senha = ? WHERE

nome_login = '" & NOME_LOGIN & "'"

.Parameters.Add("senha", OleDb.OleDbType.VarChar)

.Parameters("senha").Value = MaskedTextBox3.Text

.ExecuteNonQuery()

End With

con.Close() 'fecha a conexão com o banco de dados

TextBox4.Clear() 'função clear, limpa os campos após a alteração

MaskedTextBox1.Clear()

MaskedTextBox2.Clear()

MaskedTextBox3.Clear()

MsgBox("Senha alterada com sucesso.", vbInformation)

Button2.Focus() 'função focus, após efetuar a alteração o botão cancelar

fica selecionado.

Else

MsgBox("Alteração cancelada!", vbCritical)

TextBox4.Focus() 'função focus, quando a alteração e cancelada o cursor

volta para a textbox4 (campo login).

End If

Else

MsgBox("Senha não confere!", vbCritical)

Page 149: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

145

MaskedTextBox2.Focus() 'função focus, quando a senha não confere o cur-

sor volta para o campo especificado (campo nova senha)

End If

Catch ex As Exception

MsgBox(ex.Message)

TextBox4.Focus() 'quando acontece algum erro o cursor volta para a textbox4

(campo login)

End Try

Else

MsgBox("Senha antiga incorreta.", vbCritical)

MaskedTextBox1.Focus()

End If

End Sub

Private Sub Button2_Click(sender As System.Object, e As System.EventArgs) Han-

dles Button2.Click

Me.Close() 'Fecha o formulário

login.Show() 'executa o formuário login

login.TextBox1.Focus()

End Sub

Private Sub TextBox4_KeyPress(sender As Object, e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox4.KeyPress

If e.KeyChar = Convert.ToChar(Keys.Return) Then 'condição, quando o usuário

digitar enter o curso irá para o próximo campo

e.Handled = True

MaskedTextBox1.Focus()

End If

End Sub

Private Sub MaskedTextBox1_KeyPress(sender As Object, e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles MaskedTextBox1.KeyPress

If e.KeyChar = Convert.ToChar(Keys.Return) Then 'condição, quando o usuário

digitar enter o curso irá para o próximo campo

e.Handled = True

MaskedTextBox2.Focus()

End If

Page 150: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

146

End Sub

Private Sub MaskedTextBox2_KeyPress(sender As Object, e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles MaskedTextBox2.KeyPress

If e.KeyChar = Convert.ToChar(Keys.Return) Then 'condição, quando o usuário

digitar enter o curso irá para o próximo campo

e.Handled = True

MaskedTextBox3.Focus()

End If

End Sub

Private Sub MaskedTextBox3_KeyPress(sender As Object, e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles MaskedTextBox3.KeyPress

If e.KeyChar = Chr(13) Then 'condição, quando o usuário digitar enter o button1 e

clickado automaticamente

Button1_Click(Me, EventArgs.Empty)

End If

End Sub

Private Sub AlterarSenha_KeyDown(sender As Object, e As Sys-

tem.Windows.Forms.KeyEventArgs) Handles Me.KeyDown

If e.KeyCode = Keys.Escape Then

Button2.PerformClick()

End If

End Sub

End Class

„**********************************************************************

'CONEXÃO DE METODOS E VARIÁVEIS

'**********************************************************************

CONEXAO_METODOS_VARIAVEIS.VB

'

Module conexao_metodos_variaveis

'método para o botão sair

Public Sub sair()

Dim confirmar As MsgBoxResult

Page 151: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

147

confirmar = (MsgBox("Deseja realmente sair?", MsgBoxStyle.YesNo, "Confir-

mar"))

If confirmar = vbYes Then

Application.Exit()

End If

End Sub

'variveis do banco de dados

Public cmd As OleDb.OleDbCommand

Public con As OleDb.OleDbConnection

Public reader As OleDb.OleDbDataReader

'variaveis publicas do sistema

Public teste, cod, qtde, codproduto, codlogin, codiloginfk, codlinha, dados(0, 19), a-

crescenta_campo, cont As Integer

Public produto, descricao, linha, marca, categoria, codigo_categoria, confere, arqui-

vo_banco, usu_sgbd As String

Public barras As Char

'cod variavel usada em itens_venda, venda e consulta. Dados(0,19), variavel usada no

form login e principal. Quando o usuário se loga é feito uma select da qual será defino os tipo

de acesso ao sistema.

Public Sub conexao_mysql() 'procedure de conexão do banco de dados

If (System.IO.File.Exists("C:\Acesso_Banco\conectar\acesso\acesso_banco.txt")

<> True) Then

MsgBox("Conexão não configurada.!", MsgBoxStyle.Critical, "Configuração de

conexão")

Application.Exit()

Else

Dim filereader As New I-

O.StreamReader("C:\Acesso_Banco\conectar\acesso\acesso_banco.txt")

While (filereader.Peek > -1)

linha = filereader.ReadLine

'condição para ler as linhas do arquivo de acesso ao banco

If cont = 3 Then 'linha 3

arquivo_banco = linha

usu_sgbd = arquivo_banco.Substring(0)

Page 152: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

148

End If

cont += 1

End While

End If

con = New OleDb.OleDbConnection 'instanciando a variavel con (conexão)

cmd = New OleDb.OleDbCommand 'instacinando a variavel cmd (comandos)

'con.ConnectionString = "Provider=SQLOLEDB;Data Source=ADEILDO-

PC\ADEILDO;Integrated Security=SSPI;Initial Catalog=lojacosmeticos"

con.ConnectionString = usu_sgbd

End Sub

Public Sub selecao() 'select utilizada na tabela produtos.

Try

If barras > " " Then 'cada condição representa um tipo de pesquisa no banco de

dados de acordo com o que é digitado no fórmulario, no caso as textbox.

cmd.CommandText = "select A.*,B.*,C.*, D.* from produtos A inner join

marcas B on(A.cod_marca=B.cod_marca)inner join linha C on(A.cod_linha=C.cod_linha)

inner join categoria D on(A.cod_categoria=D.cod_categoria) where cod_barras = '" &

Trim(barras) & "'"

ElseIf codproduto > 0 Then

cmd.CommandText = "select A.*,B.*,C.*, D.* from produtos A inner join

marcas B on(A.cod_marca=B.cod_marca)inner join linha C on(A.cod_linha=C.cod_linha)

inner join categoria D on(A.cod_categoria=D.cod_categoria) where cod_produto = " &

Trim(codproduto)

ElseIf produto <> " " Then

cmd.CommandText = "select A.*,B.*,C.*, D.* from produtos A inner join

marcas B on(A.cod_marca=B.cod_marca)inner join linha C on(A.cod_linha=C.cod_linha)

inner join categoria D on(A.cod_categoria=D.cod_categoria) where nome_produto like '%" &

Trim(produto) & "%'"

ElseIf descricao > " " Then

cmd.CommandText = "select A.*,B.*,C.*, D.* from produtos A inner join

marcas B on(A.cod_marca=B.cod_marca)inner join linha C on(A.cod_linha=C.cod_linha)

inner join categoria D on(A.cod_categoria=D.cod_categoria) where descricao_produto like

'%" & Trim(descricao) & "%'"

ElseIf marca <> " " Then

Page 153: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

149

cmd.CommandText = "select A.*,B.*,C.*, D.* from marcas A inner join pro-

dutos B on(B.cod_marca=A.cod_marca)inner join linha C on(B.cod_linha=C.cod_linha) inner

join categoria D on(B.cod_categoria=D.cod_categoria) where nome_marca like '%" &

Trim(marca) & "%'"

ElseIf linha > " " Then

cmd.CommandText = "select A.*,B.*,C.*, D.* from linha A inner join produ-

tos B on(B.cod_linha=A.cod_linha) inner join marcas C on(B.cod_marca=C.cod_marca) in-

ner join categoria D on(B.cod_categoria=D.cod_categoria) where nome_linha like '%" &

Trim(linha) & "%'"

ElseIf categoria > " " Then

cmd.CommandText = "select A.*,B.*,C.*, D.* from categoria A inner join

produtos B on(B.cod_categoria=A.cod_categoria) inner join marcas C

on(B.cod_marca=C.cod_marca) inner join linha D on(B.cod_linha=D.cod_linha) where

nome_categoria like '%" & Trim(categoria) & "%'"

Else

MsgBox("Dados inválidos para pesquisa!") 'caso o usuario não digite nada

nas condições de pesquisa será exibida esta mensagem

End If

Catch mensagem As Exception

MsgBox(mensagem.Message) 'mensagem de erro.

End Try

End Sub

Public Sub foregn_key_usuario() 'esta procedure será utilizada no formulário cadastro

de usuario. Obs: apenas cadastro.

Try ' tratando o erro na conexão, no formulário e na select

conexao_mysql() 'procidure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con

con.Open()

cmd.CommandText = "select MAX(cod_login) as cod_login from login" 'sele-

cionar o maior valor da coluna cod_atendente no banco de dados

reader = cmd.ExecuteReader()

If reader.Read() Then

Page 154: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

150

codlogin = reader.GetValue(0) 'registro que será lido, no caso cod_atenden da

qual se trata de uma coluna na tabela atendente

codiloginfk = codlogin + 1

reader.Close() 'fecha a leitura no banco

con.Close() 'fecha o banco

Else

codiloginfk = codlogin + 1

End If

Catch selecao_atendente As Exception

MsgBox(selecao_atendente.Message & " " & "Contate o suporte técnico", vbIn-

formation)

End Try

End Sub

'confere o a quantidade e exibe na tela para o usuário

Public Sub confere_qtde()

Dim produto_conf, barras_conf, qtde_conf As String

Try

conexao_mysql()

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con

con.Open()

cmd.CommandText = "select nome_produto, cod_barras, qtde_produto from

produtos where qtde_produto <=5"

reader = cmd.ExecuteReader()

While reader.Read()

barras_conf = reader("cod_barras")

produto_conf = reader("nome_produto")

qtde_conf = reader("qtde_produto")

MsgBox("PRODUTO: " & produto_conf & vbCrLf & "CÓDIGO BARRAS:

" & barras_conf & vbCrLf & "QUANTIDADE: " & qtde_conf & vbCrLf & "Quantidade bai-

xa!", vbExclamation)

End While

con.Close()

Catch ex As Exception

Page 155: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

151

MsgBox(ex.Message)

End Try

End Sub

'método para apresentar os dados no datagrid com default

Public Sub grid_default()

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'conecta ao banco de dados

con.Open() 'abrre a conexão

'Pesquida feita pela data de cadastro do produto

cmd.CommandText = "select A.*,B.*,C.*, D.* from produtos A inner join marcas

B on(A.cod_marca=B.cod_marca)inner join linha C on(A.cod_linha=C.cod_linha) inner join

categoria D on(A.cod_categoria=D.cod_categoria)"

End Sub

'função para manipulação de números na textbox. Está função habilita apenas núme-

ros.

Function SoNumeros(ByVal Keyascii As Short) As Short

If InStr("1234567890", Chr(Keyascii)) = 0 Then 'condição para definir o que será

aceito. 0 significa número

SoNumeros = 0

Else

SoNumeros = Keyascii

End If

Select Case Keyascii

Case 8

SoNumeros = Keyascii '8 bits

Case 13

SoNumeros = Keyascii '13 bits

Case 32

SoNumeros = Keyascii '32 bits

Case 64

SoNumeros = Keyascii '64 bist

End Select

End Function

Page 156: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

152

'função para manipulação de números na textbox. Está função abilita números e vir-

gula. Forma decimal.

Function Sodecimal(ByVal Keyascii As Short) As Short

If InStr("1234567890,", Chr(Keyascii)) = 0 Then 'condição para definir o que será

aceito. 0 significa número

Sodecimal = 0

Else

Sodecimal = Keyascii

End If

Select Case Keyascii

Case 8

Sodecimal = Keyascii '8 bits

Case 13

Sodecimal = Keyascii '13 bits

Case 32

Sodecimal = Keyascii '32 bits

Case 64

Sodecimal = Keyascii '64 bits

End Select

End Function

End Module

„**********************************************************************

'CADASTRO DE USUÁRIOS

'**********************************************************************

CADASTROUSUARIO.VB

'

Public Class CadastroUsuario

Dim codigologin As Integer

Dim matriz(0, 3) As Object

'Matriz: armazena os dados pesquisado pela função conferir login

'tacesso: armazeno valores númericos 0 e 1 para definir os tipos de acesso do sistema.

Private Function conferir_login() 'função para conferir se o cadastro de usuário já e-

xiste.

Page 157: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

153

Try

conexao_mysql() 'peocedure de conexão com o mysql

cmd.Connection = con 'conecta ao banco de dados

con.Open() 'abre a conexão.

If TextBox1.Text > " " Then 'select que é executado no banco quando o botão 1

e acionado.

cmd.CommandText = "select A.*, B.* from usuario A INNER JOIN login B

on(A.cod_login=B.cod_login) where nome_usuario = '" & Trim(TextBox1.Text) & "'" 'pri-

meira condição para a pesquisa no banco de dados

ElseIf Val(MaskedTextBox1.Text) > 0 Then

cmd.CommandText = "select A.*, B.* from usuario A INNER JOIN login B

on(A.cod_login=B.cod_login) where rg_usuario = '" & Trim(MaskedTextBox1.Text) & "'"

'segunda condição para a pesquisa no banco de dados

ElseIf Val(MaskedTextBox2.Text) > 0 Then

cmd.CommandText = "select A.*, B.* from usuario A INNER JOIN login B

on(A.cod_login=B.cod_login) where cpf_usuario = '" & Trim(MaskedTextBox2.Text) & "'"

'terceira condição de

ElseIf TextBox2.Text > " " Then

cmd.CommandText = "select A.*, B.* from usuario A INNER JOIN login B

on(A.cod_login=B.cod_login) where nome_login = '" & Trim(TextBox2.Text) & "'"

End If

reader = cmd.ExecuteReader() 'comando para executar a reader

reader.Read() 'variável reader para ler os dados selecionado na select

matriz(0, 0) = reader("nome_usuario")

matriz(0, 1) = reader("rg_usuario")

matriz(0, 2) = reader("cpf_usuario")

matriz(0, 3) = reader("nome_login")

con.Close()

Catch ex As Exception

End Try

Return 1

End Function

Private Function apagar() 'função para limpara as textbox

TextBox1.Clear()

Page 158: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

154

MaskedTextBox1.Clear()

MaskedTextBox2.Clear()

TextBox2.Clear()

MaskedTextBox3.Clear()

MaskedTextBox4.Clear()

TextBox3.Clear()

TextBox3.Focus() 'move o cursor para o campo requerido

matriz(0, 0) = " "

matriz(0, 1) = " "

matriz(0, 2) = " "

matriz(0, 3) = " "

Return TextBox1.Text()

End Function

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button3.Click

If Button3.Text = "Cancelar" Then

Close()

login.TextBox1.Focus()

login.tabela_login_vazia()

login.Show()

Else

Close()

principal.Show()

End If

End Sub

Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button5.Click

If Button5.Text = "Cadastrar" Then 'condição para ação do botão cadastrar. Obs:

esta condição é para (cadastro, alteração e exlcusão).

Try 'trativa de erro para a função cadastro administrador e cadastro de login

normal.

'condição para não haver campos nulos

If TextBox1.Text > " " And TextBox2.Text > " " And MaskedTextBox3.Text

> " " And MaskedTextBox4.Text > " " Then

Page 159: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

155

'condição para conferir senha.

If MaskedTextBox4.Text = MaskedTextBox3.Text Then

'função conferir login

conferir_login()

'Condição para cadastrp de login, verifica se há login já cadastrado

If matriz(0, 0) = TextBox1.Text Or matriz(0, 1) = MaskedTextBox1.Text

Or matriz(0, 2) = MaskedTextBox2.Text Or matriz(0, 3) = TextBox2.Text Then

MsgBox("Cadastro existente.", vbCritical)

Else 'caso não tenha um administrador cadastro as instruções abaixo

serma compiladas

'condição para o cadastro do login administrador

If Button3.Text = "Cancelar" Then

If MsgBox("Deseja cadastrar este usuario?", vbYesNo, "confirma-

ção") = vbYes Then 'Pergunta que será exibida quando o susuario vai cadastrar-se ou vai ca-

dastrar um usuário.

'Tabela login - Cadastro de LOGIN - CADASTRO DE AD-

MINSTRADOR

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.Connection = con 'variavel de conexão

con.Open() 'abre o banco

With cmd

.CommandType = System.Data.CommandType.Text

.CommandText = "INSERT into login (cod_login, no-

me_login, senha, alt_categoria, alt_linha, alt_marca, alt_produto, alt_venda, alt_usuario,

exc_categoria, exc_linha, exc_marca, exc_produto, exc_itens_venda, exc_venda, exc_usuario,

cad_categoria, cad_linha, cad_marca, cad_produto, cad_usuario, atualizar, relatorio) VALU-

ES (?, ?,?, ?, ?, ?,?, ?, ?, ?,?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?,?)" 'comando para inserção de dados no

banco de dados. Tabela usuario

.Parameters.Add("cod_login", OleDb.OleDbType.Integer)

.Parameters("cod_login").Value = codiloginfk

.Parameters.Add("nome_login", OleDb.OleDbType.VarChar)

.Parameters("nome_login").Value = Trim(TextBox2.Text)

'Campo onde será incluso o nome do login

.Parameters.Add("senha", OleDb.OleDbType.VarChar)

Page 160: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

156

.Parameters("senha").Value = Trim(MaskedTextBox3.Text)

'Campo onde será incluso a senha do login

'variaveis para alteração

.Parameters.Add("alt_categoria", OleDb.OleDbType.Integer)

.Parameters("alt_categoria").Value = 1 'Vairavel que será in-

cluso o número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("alt_linha", OleDb.OleDbType.Integer)

.Parameters("alt_linha").Value = 1 'Vairavel que será incluso o

número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("alt_marca", OleDb.OleDbType.Integer)

.Parameters("alt_marca").Value = 1 'Vairavel que será incluso

o número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("alt_produto", OleDb.OleDbType.Integer)

.Parameters("alt_produto").Value = 1 'Vairavel que será inclu-

so o número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("alt_venda", OleDb.OleDbType.Integer)

.Parameters("alt_venda").Value = 1 'Vairavel que será incluso

o número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("alt_usuario", OleDb.OleDbType.Integer)

.Parameters("alt_usuario").Value = 1 'Vairavel que será incluso

o número 0 para falso e 1 para verdaeiro na checkbox

'variaveis para exclusão.

.Parameters.Add("exc_categoria", OleDb.OleDbType.Integer)

.Parameters("exc_categoria").Value = 1 'Vairavel que será in-

cluso o número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("exc_linha", OleDb.OleDbType.Integer)

.Parameters("exc_linha").Value = 1 'Vairavel que será incluso

o número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("exc_marca", OleDb.OleDbType.Integer)

.Parameters("exc_marca").Value = 1 'Vairavel que será incluso

o número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("exc_produto", OleDb.OleDbType.Integer)

.Parameters("exc_produto").Value = 1 'Vairavel que será in-

cluso o número 0 para falso e 1 para verdaeiro na checkbox

Page 161: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

157

.Parameters.Add("exc_itens_venda", O-

leDb.OleDbType.Integer)

.Parameters("exc_itens_venda").Value = 1 'Vairavel que será

incluso o número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("exc_venda", OleDb.OleDbType.Integer)

.Parameters("exc_venda").Value = 1 'Vairavel que será incluso

o número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("exc_usuario", OleDb.OleDbType.Integer)

.Parameters("exc_usuario").Value = 1 'Vairavel que será inclu-

so o número 0 para falso e 1 para verdaeiro na checkbox

'variaveis para cadastro

.Parameters.Add("cad_categoria", OleDb.OleDbType.Integer)

.Parameters("cad_categoria").Value = 1 'Vairavel que será in-

cluso o número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("cad_linha", OleDb.OleDbType.Integer)

.Parameters("cad_linha").Value = 1 'Vairavel que será incluso

o número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("cad_marca", OleDb.OleDbType.Integer)

.Parameters("cad_marca").Value = 1 'Vairavel que será incluso

o número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("cad_produto", OleDb.OleDbType.Integer)

.Parameters("cad_produto").Value = 1 'Vairavel que será in-

cluso o número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("cad_usuario", OleDb.OleDbType.Integer)

.Parameters("cad_usuario").Value = 1 'Vairavel que será inclu-

so o número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("atualizar", OleDb.OleDbType.Integer)

.Parameters("atualizar").Value = 1 'Vairavel que será incluso o

número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("relatorio", OleDb.OleDbType.Integer)

.Parameters("relatorio").Value = 1 'Vairavel que será incluso o

número 0 para falso e 1 para verdaeiro na checkbox

.ExecuteNonQuery()

End With

Page 162: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

158

con.Close() 'fecha a conexão com o banco

'tabela usuário - CADASTRO DE USUÁRIO

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.Connection = con 'variavel de conexão

con.Open() 'abre o banco

With cmd

.CommandType = System.Data.CommandType.Text

.CommandText = "insert into usuario (nome_usuario,

cpf_usuario, rg_usuario, cod_login) values (?, ?, ?, ?)" 'comando para inserção de dados no

banco de dados. Tabela usuario

.Parameters.Add("nome_usuario", O-

leDb.OleDbType.VarChar)

.Parameters("nome_usuario").Value = Trim(TextBox1.Text)

.Parameters.Add("cpf_usuario", OleDb.OleDbType.VarChar)

.Parameters("cpf_usuario").Value =

Trim(MaskedTextBox2.Text) 'Campo onde será incluso o cpf

.Parameters.Add("rg_usuario", OleDb.OleDbType.VarChar)

.Parameters("rg_usuario").Value =

Trim(MaskedTextBox1.Text) 'Campo onde será incluso o rg

.Parameters.Add("cod_login", OleDb.OleDbType.Integer)

.Parameters("cod_login").Value = codiloginfk

.ExecuteNonQuery()

End With

con.Close() ' fecha a conexão com o banco de dados

foregn_key_usuario() 'Nesta procedure ocorre uma select para a

preecher a variavel codigoat com um outro número, ou seja, _ela pesquisa cod_atenden e so-

ma mais um ex: 5 + 1 = 6. Caso tenha um outro cadastro de usário aforeign key será 6.

apagar() 'função para limpara as textbox

MsgBox("Cadastro efetuado com sucesso.", vbInformation)

'mensagem que aparece quando não ocorre nenhum erro.

Button3.PerformClick() 'executa os códigos do botão5

Else

MsgBox("Cadastro cancelado.", vbCritical) 'mensagem exibida

quando a inclusão é cancelada.

Page 163: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

159

TextBox3.Focus() 'move o cursor para o campo código.

End If 'fim da condição se o usuaário quer cadastradrar outro usuá-

rio

'quando houver um login administrador já cadastro, os códigos se-

ram copilados de acordo com esta condição.

ElseIf Button3.Text = "Retornar ao Menu Principal" Then

If MsgBox("Deseja cadastrar este usuario?", vbYesNo, "confirma-

ção") = vbYes Then 'Pergunta que será exibida quando o susuario vai cadastrar-se ou vai ca-

dastrar um usuário.

'Tabela login - cadastro login comum

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.Connection = con 'variavel de conexão

con.Open() 'abri o banco

With cmd

.CommandType = System.Data.CommandType.Text

.CommandText = "INSERT into login (cod_login, no-

me_login, senha, alt_categoria, alt_linha, alt_marca, alt_produto, alt_venda, alt_usuario,

exc_categoria, exc_linha, exc_marca, exc_produto, exc_itens_venda, exc_venda, exc_usuario,

cad_categoria, cad_linha, cad_marca, cad_produto, cad_usuario, atualizar, relatorio) VALU-

ES (?, ?, ?, ?,?, ?, ?, ?,?, ?, ?, ?,?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)" 'comando para inserção de dados no

banco de dados. Tabela usuario

.Parameters.Add("cod_login", OleDb.OleDbType.Integer)

.Parameters("cod_login").Value = codiloginfk

.Parameters.Add("nome_login", OleDb.OleDbType.VarChar)

.Parameters("nome_login").Value = Trim(TextBox2.Text)

'Campo onde será incluso o nome do login

.Parameters.Add("senha", OleDb.OleDbType.VarChar)

.Parameters("senha").Value = Trim(MaskedTextBox3.Text)

'Campo onde será incluso a senha do login

'Itens de acesso no sistema - ALTERAÇÃO

.Parameters.Add("alt_categoria", OleDb.OleDbType.Integer)

.Parameters("alt_categoria").Value = 1 'Vairavel que será in-

cluso o número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("alt_linha", OleDb.OleDbType.Integer)

Page 164: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

160

.Parameters("alt_linha").Value = 1 'Vairavel que será incluso o

número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("alt_marca", OleDb.OleDbType.Integer)

.Parameters("alt_marca").Value = 1 'Vairavel que será incluso

o número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("alt_produto", OleDb.OleDbType.Integer)

.Parameters("alt_produto").Value = 1 'Vairavel que será inclu-

so o número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("alt_venda", OleDb.OleDbType.Integer)

.Parameters("alt_venda").Value = 0 'Vairavel que será incluso

o número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("alt_usuario", OleDb.OleDbType.Integer)

.Parameters("alt_usuario").Value = 0 'Vairavel que será incluso

o número 0 para falso e 1 para verdaeiro na checkbox

'Itens de acesso no sistema - EXCLUSÃO.

.Parameters.Add("exc_categoria", OleDb.OleDbType.Integer)

.Parameters("exc_categoria").Value = 0 'Vairavel que será in-

cluso o número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("exc_linha", OleDb.OleDbType.Integer)

.Parameters("exc_linha").Value = 0 'Vairavel que será incluso

o número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("exc_marca", OleDb.OleDbType.Integer)

.Parameters("exc_marca").Value = 0 'Vairavel que será incluso

o número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("exc_produto", OleDb.OleDbType.Integer)

.Parameters("exc_produto").Value = 0 'Vairavel que será in-

cluso o número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add(" exc_itens_venda", O-

leDb.OleDbType.Integer)

.Parameters(" exc_itens_venda").Value = 0 'Vairavel que será

incluso o número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("exc_venda", OleDb.OleDbType.Integer)

.Parameters("exc_venda").Value = 0 'Vairavel que será incluso

o número 0 para falso e 1 para verdaeiro na checkbox

Page 165: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

161

.Parameters.Add("exc_usuario", OleDb.OleDbType.Integer)

.Parameters("exc_usuario").Value = 0 'Vairavel que será inclu-

so o número 0 para falso e 1 para verdaeiro na checkbox

'Itens de acesso no sistema - CADASTRO

.Parameters.Add("cad_categoria", OleDb.OleDbType.Integer)

.Parameters("cad_categoria").Value = 1 'Vairavel que será in-

cluso o número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("cad_linha", OleDb.OleDbType.Integer)

.Parameters("cad_linha").Value = 1 'Vairavel que será incluso

o número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("cad_marca", OleDb.OleDbType.Integer)

.Parameters("cad_marca").Value = 1 'Vairavel que será incluso

o número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("cad_produto", OleDb.OleDbType.Integer)

.Parameters("cad_produto").Value = 1 'Vairavel que será in-

cluso o número 0 para falso e 1 para verdaeiro na checkbox

.Parameters.Add("cad_usuario", OleDb.OleDbType.Integer)

.Parameters("cad_usuario").Value = 0 'Vairavel que será inclu-

so o número 0 para falso e 1 para verdaeiro na checkbox

'atualziar

.Parameters.Add("atualizar", OleDb.OleDbType.Integer)

.Parameters("atualizar").Value = 0 'Vairavel que será incluso o

número 0 para falso e 1 para verdaeiro na checkbox

'relatório

.Parameters.Add("relatorio", OleDb.OleDbType.Integer)

.Parameters("relatorio").Value = 0 'Vairavel que será incluso o

número 0 para falso e 1 para verdaeiro na checkbox

.ExecuteNonQuery()

End With

con.Close() 'fecha a conexão com o banco

'tabela usuário - cadastro de usuario comum

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.Connection = con 'variavel de conexão

con.Open() 'abre o banco

Page 166: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

162

With cmd

.CommandType = System.Data.CommandType.Text

.CommandText = "insert into usuario (nome_usuario,

cpf_usuario, rg_usuario, cod_login) values (?, ?, ?, ?)" 'comando para inserção de dados no

banco de dados. Tabela usuario

.Parameters.Add("nome_usuario", O-

leDb.OleDbType.VarChar)

.Parameters("nome_usuario").Value = Trim(TextBox1.Text)

'codiloginfk

.Parameters.Add("cpf_usuario", OleDb.OleDbType.VarChar)

.Parameters("cpf_usuario").Value =

Trim(MaskedTextBox2.Text) 'Campo onde será incluso o cpf

.Parameters.Add("rg_usuario", OleDb.OleDbType.VarChar)

.Parameters("rg_usuario").Value =

Trim(MaskedTextBox1.Text) 'Campo onde será incluso o rg

.Parameters.Add("cod_login", OleDb.OleDbType.Integer)

.Parameters("cod_login").Value = codiloginfk

.ExecuteNonQuery()

End With

con.Close() ' fecha a conexão com o banco de dados

apagar() 'função para limpara as textbox

MsgBox("Cadastro efetuado com sucesso.", vbInformation)

'mensagem que aparece quando não ocorre nenhum erro.

TextBox1.Focus() 'Move o cursor para a textox3 após o cadastro.

foregn_key_usuario() 'Nesta procedure ocorre uma select para a

preecher a variavel codigoat com um outro número, ou seja, _ela pesquisa cod_usuário e so-

ma mais um ex: 5 + 1 = 6. Caso tenha um outro cadastro de usário aforeign key será 6.

Else

MsgBox("Cadastro cancelado.", vbCritical) 'mensagem exibida

quando a inclusão é cancelada.

TextBox3.Focus() 'move o cursor para o campo código.

End If 'fim da condição do cancelamento da inclusão de usuário

End If 'fim da condição do cadastro do login administrdor e do login

comum

Page 167: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

163

End If 'fim da condição para verificar se a cadastro a ser inserido já exis-

te.

Else 'mensagem a se exibida para quando a senha for diferente.

MsgBox("Senha não confere!", MsgBoxStyle.Critical)

End If

Else 'mensagem a ser exibida para dados nulos no formulário, exceto para rg e

cp usuário.

MsgBox("Atenção, existem campos nulos!", vbExclamation)

TextBox1.Focus() 'move o cursor para o campo nome do usuário.

End If 'fim da condição que veririca os campos nulos.

Catch ex2 As Exception

MsgBox(ex2.Message) 'mensagem de tratativa de erro.

TextBox3.Focus() 'move o cursor para o campo código.

End Try

ElseIf Button5.Text = "Alterar" Then 'Alteração de usuario. Neste ponto será utili-

zaod o mesmo formulario tanto para cadastro quanto para alteração.

Try

If TextBox1.Text > " " And TextBox2.Text > " " And MaskedTextBox1.Text

> " " And MaskedTextBox2.Text > " " Then 'condição dos campos. Não pode ser nulo

If MsgBox("Deseja alterar este usuario?", vbYesNo, "confirmação") = vb-

Yes Then 'pergunta a ser exibida no momento da alteração

'Tabela login - Alterar

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.Connection = con 'variavel de conexão

con.Open() 'abri o banco

With cmd

.CommandType = CommandType.Text

.CommandText = "UPDATE login SET nome_login = ? WHERE

cod_login = " & codigologin 'comando para alteração de dados da tabela login

.Parameters.Add("nome_login", OleDb.OleDbType.VarChar)

.Parameters("nome_login").Value = Trim(TextBox2.Text) 'dados digi-

tado que será alterado no banco

.ExecuteNonQuery()

End With

Page 168: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

164

con.Close() 'fecha o banco

'Tabela usuario - Alterar

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.Connection = con

con.Open() 'abri o banco

With cmd

.CommandType = CommandType.Text

.CommandText = "UPDATE usuario SET nome_usuario = ?,

rg_usuario = ?, cpf_usuario = ? WHERE cod_usuario = " & Val(Trim(TextBox3.Text)) 'co-

mando para inserir dados no banco de datos. Tabela usuario

.Parameters.Add("nome_usuario", OleDb.OleDbType.VarChar)

.Parameters("nome_usuario").Value = Trim(TextBox1.Text) 'dados

digitado que será alterado no banco

.Parameters.Add("rg_usuario", OleDb.OleDbType.VarChar)

.Parameters("rg_usuario").Value = Trim(MaskedTextBox1.Text) 'da-

dos digitado que será alterado no banco

.Parameters.Add("cpf_usuario", OleDb.OleDbType.VarChar)

.Parameters("cpf_usuario").Value = Trim(MaskedTextBox2.Text) 'da-

dos digitado que será alterado no banco

.ExecuteNonQuery()

End With

con.Close() 'fecha a conexão com o banco

apagar() 'função para limpara os campos digitados

TextBox3.Enabled = True

TextBox3.Focus() 'move o cursor para o campo código.

MsgBox("Cadastro alterado com sucesso.", vbInformation)

Else

MsgBox("Alteração cancelada.", vbCritical) 'mensagem que aparece para

o usuario quando ele cancela a alteração

TextBox3.Focus() 'move o cursor para o campo código.

End If

Else

MsgBox("Campo invalido!", vbCritical) 'mensagem que aparece para o u-

suario quando a campos nulos.

Page 169: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

165

TextBox1.Focus() 'move o cursor para o campo código.

End If

Catch ex3 As Exception

MsgBox(ex3.Message) 'mensagem da tratativa de erro. Verifica toto o formu-

lário.

TextBox3.Focus() 'move o cursor para o campo código.

End Try

ElseIf Button5.Text = "Excluir" Then

If TextBox1.Text > " " And TextBox2.Text > " " And MaskedTextBox1.Text >

" " And MaskedTextBox2.Text > " " And codigologin > 0 Then

If MsgBox("Deseja excluir este usuário?", vbYesNo, "confirma") = vbYes

Then

Try 'Tratando erro

'Tabela atendente - Excluir

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.Connection = con

con.Open()

With cmd

.CommandType = CommandType.Text

.CommandText = "Delete FROM usuario where cod_usuario = " &

Val(Trim(TextBox3.Text)) 'comando para exclusão do usuário

.Parameters.Add("usuario", OleDb.OleDbType.VarChar)

.Parameters("usuario").Value = Trim(TextBox3.Text)

.ExecuteNonQuery()

End With

con.Close() 'fecha a conexão com o banco

'Tabela usuario - Excluir

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.Connection = con

con.Open()

With cmd

.CommandType = CommandType.Text

.CommandText = "Delete FROM login where cod_login = " & codi-

gologin 'comando para exclusão do login.

Page 170: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

166

.Parameters.Add("login", OleDb.OleDbType.VarChar)

.Parameters("login").Value = Trim(TextBox3.Text)

.ExecuteNonQuery()

End With

con.Close() 'fecha a conexão com o banco

apagar() 'função para limpara as textbox

TextBox3.Enabled = True

Button5.Enabled = False

TextBox3.Focus() 'move o cursor para o campo código.

MsgBox("Registro excluído com êxito!", vbExclamation) 'mensagem

que aparece no momento em que nenhum erro ocorre.

Catch ex4 As Exception

MsgBox(ex4.Message)

TextBox3.Focus() 'move o cursor para o campo código.

End Try

Else

MsgBox("Exclusão cancelada!", vbExclamation)

TextBox3.Focus() 'move o cursor para o campo código.

End If

Else

MsgBox("Valor informado inválido!", vbCritical)

TextBox3.Focus() 'move o cursor para o campo código.

End If

End If

End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button1.Click

Try ' trataviva de erro do banco e do formulário

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'variavel de conexão

con.Open() 'abri o banco

If TextBox1.Text > " " Then

Page 171: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

167

cmd.CommandText = "select A.*, B.* from usuario A INNER JOIN login B

on(A.cod_login=B.cod_login) where nome_usuario like '%" & Trim(TextBox1.Text) & "%'"

ElseIf Val(TextBox3.Text) > 0 Then 'select que é executado no banco quando o

botão 1 e acionado.

cmd.CommandText = "select A.*, B.* from usuario A INNER JOIN login B

on(A.cod_login=B.cod_login) where cod_usuario = " & Trim(TextBox3.Text)

ElseIf Val(MaskedTextBox1.Text) > 0 Then

cmd.CommandText = "select A.*, B.* from usuario A INNER JOIN login B

on(A.cod_login=B.cod_login) where rg_usuario = '" & Trim(MaskedTextBox1.Text) & "'"

ElseIf Val(MaskedTextBox2.Text) > 0 Then

cmd.CommandText = "select A.*, B.* from usuario A INNER JOIN login B

on(A.cod_login=B.cod_login) where cpf_usuario = '" & Trim(MaskedTextBox2.Text) & "'"

ElseIf TextBox2.Text > " " Then

cmd.CommandText = "select A.*, B.* from usuario A INNER JOIN login B

on(A.cod_login=B.cod_login) where nome_login like '%" & Trim(TextBox2.Text) & "%'"

Else

MsgBox("Dados inocrreto para pesquisa!", vbCritical) 'quando os campos es-

tã nulos e o usuário tenta fazer pequisa.

TextBox3.Focus()

End If

reader = cmd.ExecuteReader() 'comando para executar a reader

reader.Read() 'variável reader para ler os dados selecionado na select

cod = reader("cod_login")

If cod > 1 Then 'confere o login. Se for igual a 1 ele não traz a pesquisa. Login

adimnitrador não pode ser editado, excluído ou consultado

TextBox2.Text = reader("nome_login")

TextBox1.Text = reader("nome_usuario")

MaskedTextBox1.Text = reader("rg_usuario")

MaskedTextBox2.Text = reader("cpf_usuario")

TextBox3.Text = reader("cod_usuario")

codigologin = reader("cod_login") 'codigo atendente. será usado na alteração

do usuario

reader.Close() 'fechando a reader

con.Close() 'fechando o banco de dados

Page 172: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

168

If Val(TextBox3.Text) > 0 And TextBox1.Text > " " And MaskedText-

Box1.Text > " " And MaskedTextBox2.Text > " " And TextBox2.Text > " " Then

TextBox3.Enabled = False

Button5.Enabled = True

Else

TextBox3.Enabled = True

Button5.Enabled = False

End If

TextBox1.Focus()

Else

MsgBox("Consulta inválida", MsgBoxStyle.Critical)

TextBox3.Focus()

End If

Catch ex As Exception

MsgBox(ex.Message)

TextBox1.Focus()

End Try

End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button2.Click

apagar() 'função limpar

If Button5.Text = "Alterar" And Button1.Text = "Consultar" Then 'condição para o

botão alterar.

TextBox3.Enabled = True 'abilita a textbox

Button5.Enabled = False 'deabilita o botão quando ocorre o evento de click.

TextBox3.Focus()

ElseIf Button5.Text = "Excluir" And Button1.Text = "Consultar" Then 'instruções

para o botão excluir.

TextBox3.Enabled = True 'abilita a textbox

Button5.Enabled = False 'deabilita o botão quando ocorre o evento de click.

TextBox3.Focus()

ElseIf Button5.Text = "Cadastrar" And Button1.Text = "Consultar" Then 'condição

para o botão cadastrar, instuções adicionais para a função cadastar

TextBox3.Enabled = False 'abilita a textbox

Page 173: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

169

Button5.Enabled = True 'abilita o button no formulário quando ocorre o evento

de click.

TextBox1.Focus() 'move o cursor para o campo requerido

ElseIf Button3.Text = "Cancelar" Then

Label6.Enabled = False

Button1.Enabled = False

TextBox3.Enabled = False

End If

End Sub

Private Sub CadastroUsuario_KeyDown(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyEventArgs) Handles Me.KeyDown

If e.KeyCode = Keys.Escape Then

Button3.PerformClick()

End If

End Sub

Private Sub CadastroUsuario_Load(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles MyBase.Load

foregn_key_usuario() 'procedure para preechimento da foreign key da tabela

usuário.

If Button5.Text = "Alterar" Then

Button5.Enabled = False

Label9.Enabled = False

Label8.Enabled = False

MaskedTextBox4.Enabled = False

MaskedTextBox3.Enabled = False 'desabilitando os dados que não seram altera-

dos, esta ação é feita em outro formulário.

ElseIf Button5.Text = "Excluir" Then

Button5.Enabled = False

Label9.Enabled = False

Label8.Enabled = False

MaskedTextBox4.Enabled = False

MaskedTextBox3.Enabled = False 'desabili os campos que não serão utilizado

na exclusão, mas seram excluso.

Else

Page 174: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

170

Label9.Enabled = True

Label8.Enabled = True

MaskedTextBox4.Enabled = True

MaskedTextBox3.Enabled = True 'desabilitando os dados que não seram altera-

dos, esta ação é feita em outro formulário.

End If

End Sub

Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

MaskedTextBox1.Focus()

End If

End Sub

Private Sub MaskedTextBox1_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles MaskedTextBox1.KeyPress

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

MaskedTextBox2.Focus() 'função focus, move o cursor para o campo especifi-

cado.

End If

End Sub

Private Sub MaskedTextBox2_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles MaskedTextBox2.KeyPress

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

TextBox2.Focus() 'função focus, move o cursor para o campo especificado.

End If

End Sub

Private Sub TextBox2_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox2.KeyPress

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

Page 175: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

171

MaskedTextBox4.Focus() 'função focus, move o cursor para o campo especifi-

cado.

End If

End Sub

Private Sub MaskedTextBox4_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles MaskedTextBox4.KeyPress

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

MaskedTextBox3.Focus()

End If

'condição para desabilitar a barra de espaço na textbox (código de barras do produ-

to)

Dim KeyAscii As Short = CShort(Asc(e.KeyChar))

If KeyAscii = 32 Then

e.Handled = True

End If

End Sub

Private Sub MaskedTextBox3_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles MaskedTextBox3.KeyPress

'condição para desabilitar a barra de espaço na textbox (código de barras do produ-

to)

Dim KeyAscii As Short = CShort(Asc(e.KeyChar))

If KeyAscii = 32 Then

e.Handled = True

End If

'condição para quando o usuário digitar enter cadastrar e mover o cursor para a

textbox1

If e.KeyChar = Chr(13) Then

Button5_Click(Me, EventArgs.Empty)

TextBox1.Focus()

End If

End Sub

Private Sub TextBox3_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox3.KeyPress

Page 176: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

172

Dim KeyAscii As Short = CShort(Asc(e.KeyChar))

KeyAscii = CShort(SoNumeros(KeyAscii)) 'função para desabilitar texto na text-

box

'condição para habilitar os número. zero número, 1 texto.

If KeyAscii = 0 Then

e.Handled = True

End If

'condição para desabilitar a barra de espaço na textbox (código de barras do produ-

to)

If KeyAscii = 32 Then

e.Handled = True

End If

'condição para quando o usuário digitar enter pesquisar

If e.KeyChar = Chr(13) Then

Button1_Click(Me, EventArgs.Empty)

TextBox3.Focus()

End If

End Sub

End Class

„**********************************************************************

'CADASTRAR PRODUTOS

'**********************************************************************

CADASTROPRODUTO.VB

'

Public Class CadastroProduto

Dim CodigoCategoria, CodigoMarca, CodigoLinha, CodigoProduto As Integer 'vari-

aveis para uso exclusivo da ação do botão excluir

Public Function sele_cambobox() 'função para seleionar o dados da tabela linha

Try

conexao_mysql() 'procedure de conexão e comando (cmd, con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con

con.Open()

Page 177: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

173

cmd.CommandText = "select * from categoria order by nome_categoria" 'Sele-

ção feita para a combobox.

reader = cmd.ExecuteReader()

ComboBox1.Items.Clear() 'limpa a pesquisa

While reader.Read()

ComboBox1.Items.Add(UCase(reader("nome_categoria"))) 'Adiciona as ca-

tegoria a combobox

End While

reader.Close() 'fecha a leitura com o banco de dados

con.Close() 'fecha a conexão

Catch ex As Exception

End Try

Return ComboBox1.Text() 'retorna o valor da combobox

End Function

Public Function sele_cambobox2() 'função para seleionar o dados da tabela marcas

Try

conexao_mysql() 'procedure de conexão e comando (cmd, con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con

con.Open()

cmd.CommandText = "select * from marcas order by nome_marca" 'Seleção fei-

ta para a combobox.

reader = cmd.ExecuteReader()

ComboBox2.Items.Clear() 'limpa a pesquisa

While reader.Read()

ComboBox2.Items.Add(UCase(reader("nome_marca"))) 'Adiciona as catego-

ria a combobox

End While

reader.Close() 'fecha a leitura com o banco de dados

con.Close() 'fecha a conexão

Catch ex As Exception

End Try

Return ComboBox2.Text() 'retorna o valor da combobox

End Function

Page 178: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

174

Public Function sele_combobox3() 'função para seleionar o dados da tabela linha

Try

conexao_mysql() 'procedure de conexão e comando (cmd, con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con

con.Open()

cmd.CommandText = "select * from linha order by nome_linha" 'Seleção feita

para a combobox.

reader = cmd.ExecuteReader()

ComboBox3.Items.Clear() 'limpa a pesquisa

While reader.Read()

ComboBox3.Items.Add(UCase(reader("nome_linha"))) 'Adiciona as categoria

a combobox

End While

reader.Close() 'fecha a leitura com o banco de dados

con.Close() 'fecha a conexão

Catch combo_sele As Exception

End Try

Return ComboBox3.Text()

End Function

Private Function limpar() 'método limpar

TextBox1.Clear() 'função clear, limpa as textbox

TextBox2.Clear()

TextBox3.Clear()

TextBox4.Clear()

TextBox6.Clear()

TextBox1.Focus() 'função focus, move o cursor para o campo especificado.

Return TextBox1.Text()

End Function

Private Sub confere_produto() 'métod para verificar se o produto já esta cadastrado.

Try

conexao_mysql() 'procedure de conexão com mysql e variavel cmd e con

cmd.Connection = con

con.Open()

Page 179: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

175

cmd.CommandType = System.Data.CommandType.Text

If TextBox1.Text > " " Then

cmd.CommandText = "select * from produtos where cod_barras = '" &

Trim(TextBox1.Text) & "'"

ElseIf TextBox2.Text > " " Then

cmd.CommandText = "select * from produtos where nome_produto = '" &

Trim(TextBox2.Text) & "'"

End If

reader = cmd.ExecuteReader()

reader.Read()

barras = reader("cod_barras")

confere = reader("nome_produto")

reader.Close()

con.Close()

Catch ex As Exception

End Try

End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button1.Click

Try

If Val(TextBox1.Text) > 0 And TextBox2.Text > " " And ComboBox2.Text > "

" And ComboBox3.Text > " " And ComboBox1.Text > " " And Val(TextBox4.Text) > -1 And

Val(TextBox6.Text) > 0 Then 'conidção para que haja o cadastro do produto, marca, linha e

categoria

confere_produto() 'objeto para conferir se o item em questão já esta cadastra-

do.

If barras <> TextBox1.Text And confere <> TextBox2.Text Then

If MsgBox("Deseja cadastrar este produto?", vbYesNo, "confirmação") =

vbYes Then

'Tabela produtos - CADASTRO DE PRODUTOS

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.Connection = con

con.Open() 'Abri a conexão com o banco de dados

Page 180: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

176

If CodigoCategoria > 0 And CodigoLinha > 0 And CodigoMarca > 0

Then

With cmd

.CommandType = System.Data.CommandType.Text

.CommandText = "INSERT into produtos (cod_barras, no-

me_produto, descricao_produto, vlr_unitario, qtde_produto, cod_marca, cod_linha,

cod_categoria, data_cads_prod) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)" 'Comando para inserir da-

dos no MySQL

.Parameters.Add("cod_barras", OleDb.OleDbType.Char)

.Parameters("cod_barras").Value = Trim(TextBox1.Text) 'Função

trim e cint, um reomve dos epaços finais e iniciais e a outra só permite valores inteiros

.Parameters.Add("nome_produto", OleDb.OleDbType.VarChar)

.Parameters("nome_produto").Value = Trim(TextBox2.Text) 'fun-

ção trim. Remove os epaçsos iniciais e finais

.Parameters.Add("descricao_produto", OleDb.OleDbType.VarChar)

.Parameters("descricao_produto").Value = Trim(TextBox3.Text)

'função trim. Remove os epaçsos iniciais e finais

.Parameters.Add("vlr_unitario", OleDb.OleDbType.Decimal)

.Parameters("vlr_unitario").Value = Trim(Replace(TextBox4.Text,

".", ",")) 'Função trim e cdec, um reomve dos epaços finais e iniciais e a outra permite valores

inteiros e quebrados

.Parameters.Add("qtde_produto", OleDb.OleDbType.Integer)

.Parameters("qtde_produto").Value = CInt(Trim(TextBox6.Text))

'Função trim e cint, um reomve dos epaços finais e iniciais e a outra só permite valores intei-

ros

.Parameters.Add("cod_marca", OleDb.OleDbType.Integer)

.Parameters("cod_marca").Value = Trim(CodigoMarca) 'função

trim. Remove os epaçsos iniciais e finais

.Parameters.Add("cod_linha", OleDb.OleDbType.Integer)

.Parameters("cod_linha").Value = Trim(CodigoLinha) 'função trim.

Remove os epaçsos iniciais e finais

.Parameters.Add("cod_categoria", OleDb.OleDbType.Integer)

.Parameters("cod_categoria").Value = Trim(CodigoCategoria) 'fun-

ção trim. Remove os epaçsos iniciais e finais

Page 181: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

177

.Parameters.Add("data_cads_prod", OleDb.OleDbType.DBDate)

.Parameters("data_cads_prod").Value = Trim(Label11.Text) 'função

trim. Remove os epaçsos iniciais e finais

.ExecuteNonQuery()

End With

con.Close() 'fecha a conexão com o banco

End If

limpar() 'função limpar

MsgBox("Cadastro efetuado com sucesso.", vbInformation)

CheckBox1.Checked = False

Else

MsgBox("Cadastro cancelado!", vbExclamation)

End If

Else

MsgBox("Item já cadastrado.", vbExclamation)

End If

Else

MsgBox("Erro! Verifique os campos.", vbCritical)

TextBox1.Focus() 'função focus

End If

Catch ex As Exception

MsgBox(ex.Message)

TextBox1.Focus() 'função focus

End Try

End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button3.Click

Close()

principal.Show()

End Sub

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button4.Click

limpar() 'função limpar

TextBox1.Focus()

Page 182: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

178

End Sub

Private Sub CadastroProduto_KeyDown(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyEventArgs) Handles Me.KeyDown

If Button1.Text = "Cadastrar" Then

If e.Control AndAlso e.KeyCode = Keys.T Then 'tecla de atalho para cadastrar

uma nova categoria

principal.CategoriasToolStripMenuItem.PerformClick() 'executa o objeto no-

va categoria no menu principal

NovaCategoria.Button3.Text = "VOLTAR" 'nome para o botão 3(quando o

usuário quiser voltar para a tela de cadastro e não o menu principal)

ElseIf e.Control AndAlso e.KeyCode = Keys.A Then 'tecla de atalho para ca-

dastrar uma nova marca

principal.NovaMarcaToolStripMenuItem.PerformClick() 'executa o objeto

nova marca no menu principal

NovaCategoria.Button3.Text = "VOLTAR" 'nome para o botão 3(quando

o usuário quiser voltar para a tela de cadastro e não o menu principal)

ElseIf e.Control AndAlso e.KeyCode = Keys.L Then 'tecla de atalho para ca-

dastrar uma nova marca

principal.NovaLinhaToolStripMenuItem.PerformClick() 'executa o objeto no-

va marca no menu principal

NovaCategoria.Button3.Text = "VOLTAR" 'nome para o botão 3(quando o

usuário quiser voltar para a tela de cadastro e não o menu principal)

ElseIf e.KeyCode = Keys.Escape Then

Button3.PerformClick()

End If

End If

End Sub

Private Sub CadastroProduto_Load(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles MyBase.Load

Label11.Text = Date.Today

If Button1.Text = "Cadastrar" Then

CheckBox1.Enabled = True

Label12.Visible = True

Label13.Visible = True

Page 183: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

179

Label14.Visible = True

sele_cambobox() 'função combobox (seleciona os dados no banco antes de en-

trar cadastro)

sele_cambobox2() 'função combobox2 (seleciona os dados no banco antes de

entrar no cadastro)

sele_combobox3() 'função combobox2 (seleciona os dados no banco antes de

entrar no cadastro)

End If

End Sub

Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress

Dim KeyAscii As Short = CShort(Asc(e.KeyChar))

KeyAscii = CShort(SoNumeros(KeyAscii)) 'função para desabilitar texto na text-

box

'condição para habilitar os número. zero número, 1 texto.

If KeyAscii = 0 Then

e.Handled = True

End If

'condição para desabilitar a barra de espaço na textbox (código de barras do produ-

to)

If KeyAscii = 32 Then

e.Handled = True

End If

'função focus, move o cursor para o campo especificado.

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

TextBox2.Focus()

End If

End Sub

Private Sub TextBox2_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox2.KeyPress

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

TextBox3.Focus() 'função focus, move o cursor para o campo especificado.

Page 184: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

180

End If

End Sub

Private Sub TextBox3_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox3.KeyPress

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

TextBox4.Focus() 'função focus, move o cursor para o campo especificado.

End If

End Sub

Private Sub TextBox4_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox4.KeyPress

Dim cod_askii As Short = CShort(Asc(e.KeyChar))

cod_askii = CShort(Sodecimal(cod_askii)) 'função para desabilitar texto na textbox

'condição para habilitar os números. zero número, 1 texto..

If cod_askii = 0 Then

e.Handled = True

End If

'condição para desabilitar a barra de espaço na textbox (valor unitário)

If cod_askii = 32 Then

e.Handled = True

End If

'função focus, move o cursor para o campo especificado.

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

TextBox6.Focus()

End If

'condição para limitar a vírgula. Só é aceito uma vírgula no campo valor do produ-

to.

If Not Char.IsNumber(e.KeyChar) And Not e.KeyChar = vbBack And Not

e.KeyChar = "," Then e.Handled = True

If e.KeyChar = "," And (InStr(TextBox4.Text, ",")) > 0 Then e.Handled = True

End Sub

Private Sub Combobox2_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles ComboBox2.KeyPress

Page 185: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

181

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

ComboBox3.Focus() 'função focus, move o cursor para o campo especificado.

End If

End Sub

Private Sub TextBox6_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox6.KeyPress

Dim KeyAscii As Short = CShort(Asc(e.KeyChar))

KeyAscii = CShort(SoNumeros(KeyAscii)) 'função para desabilitar texto na text-

box

'condição para habilitar os números. zero número, 1 texto..

If KeyAscii = 0 Then

e.Handled = True

End If

'condição para desabilitar a barra de espaço para a textbox (quantidade de produto)

If KeyAscii = 32 Then

e.Handled = True

End If

'função focus, move o cursor para o campo especificado.

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

ComboBox2.Focus()

End If

End Sub

Private Sub ComboBox1_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles ComboBox1.KeyPress

If e.KeyChar = Chr(13) Then

Button1_Click(Me, EventArgs.Empty)

TextBox1.Focus() 'função focus, move o cursor para o campo especificado

End If

End Sub

Private Sub TextBox10_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs)

Dim cod_askii As Short = CShort(Asc(e.KeyChar))

Page 186: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

182

cod_askii = CShort(Sodecimal(cod_askii)) 'função para desabilitar texto na textbox

'condição para habilitar os números. zero número, 1 texto..

If cod_askii = 0 Then

e.Handled = True

End If

'condição para desabilitar a barra de espaço na textbox (valor unitário)

If cod_askii = 32 Then

e.Handled = True

End If

If e.KeyChar = Chr(13) Then

Button2_Click(Me, EventArgs.Empty) 'ação para o botão, quando o usuário di-

tigitar enter.

End If

End Sub

Private Sub ComboBox3_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles ComboBox3.KeyPress

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

ComboBox1.Focus() 'função focus, move o cursor para o campo especificado.

End If

End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button2.Click

Consulta.Show()

End Sub

Private Sub ComboBox2_SelectedIndexChanged(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles ComboBox2.SelectedIndexChanged

Try 'Tratando erro

conexao_mysql() 'procedure de conexão e comando (cmd, con)

cmd.Connection = con

con.Open() 'Abre a conexão com o banco de dados

cmd.CommandType = System.Data.CommandType.Text

If ComboBox2.Text > " " Then 'Condição para a pesquisa no banco de dados

Page 187: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

183

cmd.CommandText = "SELECT * FROM marcas where nome_marca = '" &

ComboBox2.Text & "'" 'condição para buscar o código do item selecionado

Else

MsgBox("Dados inválidos para pesquisa!", vbCritical)

TextBox1.Focus() 'função focus, quando a algum campo de pesquisa for invá-

lido o cursor é movido para a testbox1

End If

reader = cmd.ExecuteReader()

reader.Read()

CodigoMarca = reader("cod_marca")

reader.Close() 'Fecha a leitura com o banco de dados

con.Close() 'Fecha a conexão com o banco de dados

Catch ex As Exception

MsgBox(ex.Message)

Button1.Focus() 'função focus

End Try

End Sub

Private Sub ComboBox3_SelectedIndexChanged(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles ComboBox3.SelectedIndexChanged

Try

conexao_mysql() 'procedure de conexão e comando (cmd, con)

cmd.Connection = con

con.Open() 'Abre a conexão com o banco de dados

cmd.CommandType = System.Data.CommandType.Text

If ComboBox3.Text > " " Then 'Condição para a pesquisa no banco de dados

cmd.CommandText = "SELECT * FROM linha where nome_linha = '" &

ComboBox3.Text & "'" 'condição para buscar o código do item selecionado

Else

MsgBox("Dados inválidos para pesquisa!", vbCritical)

TextBox1.Focus() 'função focus, quando a algum campo de pesquisa for invá-

lido o cursor é movido para a testbox1

End If

reader = cmd.ExecuteReader()

reader.Read()

Page 188: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

184

CodigoLinha = reader("cod_linha")

reader.Close() 'Fecha a leitura com o banco de dados

con.Close() 'Fecha a conexão com o banco de dados

Catch ex As Exception

MsgBox(ex.Message)

ComboBox2.Focus() 'função focus

End Try

End Sub

Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged

Try 'Tratando erro

conexao_mysql() 'procedure de conexão e comando (cmd, con)

cmd.Connection = con

con.Open() 'Abre a conexão com o banco de dados

cmd.CommandType = System.Data.CommandType.Text

If ComboBox1.Text <> " " Then 'Condição para a pesquisa no banco de dados

cmd.CommandText = "SELECT * FROM categoria where nome_categoria =

'" & ComboBox1.Text & "'" 'condição para buscar o código do item selecionado

Else

MsgBox("Dados inválidos para pesquisa!", vbCritical)

TextBox1.Focus() 'função focus, quando a algum campo de pesquisa for invá-

lido o cursor é movido para a testbox1

End If

reader = cmd.ExecuteReader()

reader.Read()

CodigoCategoria = reader("cod_categoria")

reader.Close() 'Fecha a leitura com o banco de dados

con.Close() 'Fecha a conexão com o banco de dados

Catch ex As Exception

MsgBox(ex.Message)

Button1.Focus() 'função focus

End Try

End Sub

Page 189: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

185

Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles CheckBox1.CheckedChanged

If CheckBox1.Checked = True Then

cod_barras()

TextBox1.Text = dimi

Else

TextBox1.Clear()

End If

End Sub

End Class

„**********************************************************************

'ATUALIZAÇÃO DE PRODUTOS

'**********************************************************************

ATUALIZARPRODUTO.VB

'

Imports MySql.Data.MySqlClient

Public Class AtualizarProduto

Private Sub Button5_Click(sender As System.Object, e As System.EventArgs) Han-

dles Button5.Click

'Botão atualizar

Try

If Val(TextBox6.Text) > 0 And Val(TextBox7.Text) > 0 Then

If MsgBox("Deseja atualizar este produto?", vbYesNo, "confirmação") = vb-

Yes Then ' Atualização

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.Connection = con

con.Open() 'Abri a conexão com o banco de dados

With cmd

.CommandType = CommandType.Text

.CommandText = "UPDATE produtos SET qtde_produto = ? WHERE

cod_produto = " & CInt(Trim(TextBox5.Text)) 'condição para alteração. Função trim (para

remover espaços iniciais e finais), função cint (o número digitado deve sempre ser inteiro.

.Parameters.Add("qtde_produto", OleDb.OleDbType.Integer)

Page 190: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

186

.Parameters("qtde_produto").Value = +CInt(Trim(TextBox7.Text)) +

CInt(Trim(TextBox6.Text)) 'a nova quantidade será somada com a quantidade antiga e assim

atualizanda a quantidade

.ExecuteNonQuery()

End With

con.Close() 'fecha a conexão com o banco de dados

MsgBox("Cadastro atualizado com sucesso!", vbInformation)

'função clear, limpa os dados digitados na textbox

TextBox1.Clear()

TextBox2.Clear()

TextBox3.Clear()

TextBox4.Clear()

TextBox5.Clear()

TextBox6.Clear()

TextBox7.Clear()

TextBox8.Clear()

TextBox9.Clear()

TextBox10.Clear()

'Função enabled.

TextBox1.Enabled = True

TextBox2.Enabled = True

TextBox3.Enabled = True

TextBox4.Enabled = True

TextBox5.Enabled = True

TextBox6.Enabled = True

TextBox8.Enabled = True

TextBox9.Enabled = True

TextBox10.Enabled = True

Button5.Enabled = False

'função focus

TextBox5.Focus()

Else

MsgBox("Atualização cancelada.", vbCritical)

TextBox5.Focus()

Page 191: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

187

End If

Else

MsgBox("Campo invalido. Existem campos nulos!", vbCritical)

TextBox6.Focus()

End If

Catch erro As Exception

MsgBox(erro.Message)

TextBox6.Focus()

End Try

End Sub

Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Han-

dles Button1.Click

'botão consultar

Try 'Tratando erro

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con

con.Open() 'Abri o banco de dados

'SELEÇÃO de dados no banco

If Val(TextBox1.Text) > 0 Then

cmd.CommandText = "select A.*,B.*,C.*, D.* from produtos A inner join

marcas B on(A.cod_marca=B.cod_marca)inner join linha C on(A.cod_linha=C.cod_linha)

inner join categoria D on(A.cod_categoria=D.cod_categoria) where cod_barras = " &

CInt(Trim(TextBox1.Text)) 'segunda condição de pesquisa. Função trim (remove espaços

iniciais e finais), função cint(valor inteiro)

ElseIf TextBox5.Text > " " Then 'cada condição representa um tipo de pesquisa

no banco de dados de acordo com o que é digitado no fórmulario, no caso as textbox.

cmd.CommandText = "select A.*,B.*,C.*, D.* from produtos A inner join

marcas B on(A.cod_marca=B.cod_marca)inner join linha C on(A.cod_linha=C.cod_linha)

inner join categoria D on(A.cod_categoria=D.cod_categoria) where cod_produto = '" &

Trim(TextBox5.Text) & "'" 'condição de pesquisa. Função trim (remove espaços iniciais e

finais), função cint(valor inteiro)

ElseIf TextBox2.Text > " " Then

Page 192: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

188

cmd.CommandText = "select A.*,B.*,C.*, D.* from produtos A inner join

marcas B on(A.cod_marca=B.cod_marca)inner join linha C on(A.cod_linha=C.cod_linha)

inner join categoria D on(A.cod_categoria=D.cod_categoria) where nome_produto like '%"

& Trim(TextBox2.Text) & "%'" 'terceira condição de pesquisa. Função trim (remove espaços

iniciais e finais)

ElseIf TextBox3.Text > " " Then

cmd.CommandText = "select A.*,B.*,C.*, D.* from produtos A inner join

marcas B on(A.cod_marca=B.cod_marca)inner join linha C on(A.cod_linha=C.cod_linha)

inner join categoria D on(A.cod_categoria=D.cod_categoria) where descricao_produto like

'%" & Trim(TextBox3.Text) & "%'" 'quarta condição de pesquisa. Função trim (remove espa-

ços iniciais e finais)

ElseIf TextBox9.Text > " " Then

cmd.CommandText = "select A.*,B.*,C.*, D.* from marcas A inner join pro-

dutos B on(B.cod_marca=A.cod_marca)inner join linha C on(B.cod_linha=C.cod_linha) inner

join categoria D on(B.cod_categoria=D.cod_categoria) where nome_marca like '%" &

Trim(TextBox9.Text) & "%'" 'quinta condição de pesquisa. Função trim (remove espaços

iniciais e finais)

ElseIf TextBox8.Text > " " Then

cmd.CommandText = "select A.*,B.*,C.*, D.* from linha A inner join produ-

tos B on(B.cod_linha=A.cod_linha) inner join marcas C on(B.cod_marca=C.cod_marca) in-

ner join categoria D on(B.cod_categoria=D.cod_categoria) where nome_linha like '%" &

Trim(TextBox8.Text) & "%'" 'sexta condição de pesquisa. Função trim (remove espaços ini-

ciais e finais)

ElseIf TextBox10.Text > " " Then

cmd.CommandText = "select A.*,B.*,C.*, D.* from categoria A inner join

produtos B on(B.cod_categoria=A.cod_categoria) inner join marcas C

on(B.cod_marca=C.cod_marca) inner join linha D on(B.cod_linha=D.cod_linha) where no-

me_categoria like '%" & Trim(TextBox10.Text) & "%'" 'sétima condição de pesquisa. Função

trim (remove espaços iniciais e finais)

Else

MsgBox("Dados inválidos para pesquisa!") 'caso o usuario não digite nada

nas condições de pesquisa será exibida esta mensagem

TextBox5.Focus() 'função focus move o cursor para a textbox5

End If

Page 193: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

189

reader = cmd.ExecuteReader()

reader.Read()

TextBox1.Text = reader("cod_barras")

TextBox2.Text = reader("nome_produto")

TextBox3.Text = reader("descricao_produto")

TextBox4.Text = reader("vlr_unitario")

TextBox5.Text = reader("cod_produto")

TextBox6.Text = reader("qtde_produto")

TextBox9.Text = reader("nome_marca")

TextBox8.Text = reader("nome_linha")

TextBox10.Text = reader("nome_categoria")

reader.Close() 'fecha a leitura com o banco de dados

con.Close() 'fecha a conexão com o banco de dados

'função enabled

TextBox1.Enabled = False

TextBox2.Enabled = False

TextBox3.Enabled = False

TextBox4.Enabled = False

TextBox5.Enabled = False

TextBox6.Enabled = False

TextBox8.Enabled = False

TextBox9.Enabled = False

TextBox10.Enabled = False

Button5.Enabled = True

'função focus. Move o curso para a textbox7

TextBox7.Focus()

Catch mensagem As Exception

MsgBox(mensagem.Message) 'mensagem de erro.

TextBox5.Focus() 'função focus move o cursor para a textbox5

End Try

End Sub

Private Sub Button3_Click(sender As System.Object, e As System.EventArgs) Han-

dles Button3.Click

'botão retornar

Page 194: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

190

Close() 'fecha o formulário

principal.Show() 'executa o menu principal

End Sub

Private Sub Button2_Click(sender As System.Object, e As System.EventArgs) Han-

dles Button2.Click

'Função para o botão limpar

TextBox1.Enabled = True 'função enabled

TextBox2.Enabled = True

TextBox3.Enabled = True

TextBox4.Enabled = True

TextBox5.Enabled = True

TextBox6.Enabled = True

TextBox8.Enabled = True

TextBox9.Enabled = True

TextBox10.Enabled = True

Button5.Enabled = False

TextBox1.Clear() 'função clear limpa as textbox

TextBox2.Clear()

TextBox3.Clear()

TextBox4.Clear()

TextBox5.Clear()

TextBox6.Clear()

TextBox7.Clear()

TextBox8.Clear()

TextBox9.Clear()

TextBox10.Clear()

TextBox5.Focus() 'função focus move o cursor para a textbox5

End Sub

Private Sub TextBox5_KeyPress(sender As Object, e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox5.KeyPress

Dim cod_askii As Short = CShort(Asc(e.KeyChar))

cod_askii = CShort(SoNumeros(cod_askii)) 'função para desabilitar texto na text-

box

'condição para habilitar os números. zero número, 1 texto..

Page 195: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

191

If cod_askii = 0 Then

e.Handled = True

End If

'condição para desabilitar a barra de espaço na textbox (valor unitário)

If cod_askii = 32 Then

e.Handled = True

End If

If e.KeyChar = Chr(13) Then

Button1_Click(Me, EventArgs.Empty) 'Evento click, quando o usuario digita

enter o botão é clickado

End If

End Sub

Private Sub TextBox1_KeyPress(sender As Object, e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress

Dim cod_askii As Short = CShort(Asc(e.KeyChar))

cod_askii = CShort(SoNumeros(cod_askii)) 'função para desabilitar texto na text-

box

'condição para habilitar os números. zero número, 1 texto..

If cod_askii = 0 Then

e.Handled = True

End If

'condição para desabilitar a barra de espaço na textbox (valor unitário)

If cod_askii = 32 Then

e.Handled = True

End If

If e.KeyChar = Chr(13) Then

Button1_Click(Me, EventArgs.Empty) 'Evento click, quando o usuario digita

enter o botão é clickado

End If

End Sub

Private Sub TextBox2_KeyPress(sender As Object, e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox2.KeyPress

If e.KeyChar = Chr(13) Then

Page 196: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

192

Button1_Click(Me, EventArgs.Empty) 'Evento click, quando o usuario digita

enter o botão é clickado

End If

End Sub

Private Sub TextBox3_KeyPress(sender As Object, e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox3.KeyPress

If e.KeyChar = Chr(13) Then

Button1_Click(Me, EventArgs.Empty) 'Evento click, quando o usuario digita

enter o botão é clickado

End If

End Sub

Private Sub TextBox4_KeyPress(sender As Object, e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox4.KeyPress

Dim cod_askii As Short = CShort(Asc(e.KeyChar))

cod_askii = CShort(Sodecimal(cod_askii)) 'função para desabilitar texto na textbox

'condição para habilitar os números. zero número, 1 texto..

If cod_askii = 0 Then

e.Handled = True

End If

'condição para desabilitar a barra de espaço na textbox (valor unitário)

If cod_askii = 32 Then

e.Handled = True

End If

'condição para limitar a vírgula. Só é aceito uma vírgula no campo valor do produ-

to.

If Not Char.IsNumber(e.KeyChar) And Not e.KeyChar = vbBack And Not

e.KeyChar = "," Then e.Handled = True

If e.KeyChar = "," And (InStr(TextBox4.Text, ",")) > 0 Then e.Handled = True

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

TextBox6.Focus() 'função focus, quando o usuário digita enter o cursor irá para

a textbox6

End If

End Sub

Page 197: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

193

Private Sub TextBox6_KeyPress(sender As Object, e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox6.KeyPress

Dim cod_askii As Short = CShort(Asc(e.KeyChar))

cod_askii = CShort(Sodecimal(cod_askii)) 'função para desabilitar texto na textbox

'condição para habilitar os números. zero número, 1 texto..

If cod_askii = 0 Then

e.Handled = True

End If

'condição para desabilitar a barra de espaço na textbox (valor unitário)

If cod_askii = 32 Then

e.Handled = True

End If

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

TextBox7.Focus() 'função focus, quando o usuário digita enter o cursor irá para

a textbox7

End If

End Sub

Private Sub TextBox7_KeyPress(sender As Object, e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox7.KeyPress

Dim KeyAscii As Short = CShort(Asc(e.KeyChar))

KeyAscii = CShort(SoNumeros(KeyAscii)) 'função para desabilitar texto na text-

box

'condição para habilitar os números. zero número, 1 texto..

If KeyAscii = 0 Then

e.Handled = True

End If

'condição para desabilitar a barra de espaço para a textbox (quantidade de produto)

If KeyAscii = 32 Then

e.Handled = True

End If

If e.KeyChar = Chr(13) Then

Button5_Click(Me, EventArgs.Empty) 'Evento click, quando o usuario digita

enter o botão é clickado

Page 198: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

194

End If

End Sub

Private Sub TextBox8_KeyPress(sender As Object, e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox8.KeyPress

If e.KeyChar = Chr(13) Then

Button1_Click(Me, EventArgs.Empty) 'Evento click, quando o usuario digita

enter o botão é clickado

End If

End Sub

Private Sub TextBox9_KeyPress(sender As Object, e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox9.KeyPress

If e.KeyChar = Chr(13) Then

Button1_Click(Me, EventArgs.Empty) 'Evento click, quando o usuario digita

enter o botão é clickado

End If

End Sub

Private Sub TextBox10_KeyPress(sender As Object, e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox10.KeyPress

Dim cod_askii As Short = CShort(Asc(e.KeyChar))

cod_askii = CShort(Sodecimal(cod_askii)) 'função para desabilitar texto na textbox

'condição para habilitar os números. zero número, 1 texto..

If cod_askii = 0 Then

e.Handled = True

End If

'condição para desabilitar a barra de espaço na textbox (valor unitário)

If cod_askii = 32 Then

e.Handled = True

End If

If e.KeyChar = Chr(13) Then

Button1_Click(Me, EventArgs.Empty) 'Evento click, quando o usuario digita

enter o botão é clickado

End If

End Sub

Page 199: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

195

Private Sub AtualizarProduto_KeyDown(sender As Object, e As Sys-

tem.Windows.Forms.KeyEventArgs) Handles Me.KeyDown

If e.KeyCode = Keys.Escape Then

End If

End Sub

End Class

„**********************************************************************

'ALTERAÇÃO DE PRODUTO

'**********************************************************************

ALTERARPRODUTO.VB

'

Public Class AlterarProduto

Dim moeda As String

Private Function limpar() 'função para limpar os campos.

'função para o botão apagar

TextBox1.Clear() 'função clear, apaga os dados na textbox

TextBox2.Clear()

TextBox3.Clear()

TextBox4.Clear()

TextBox5.Clear()

TextBox6.Clear()

MaskedTextBox1.Clear()

CheckBox1.Checked = False

TextBox5.Enabled = True 'função enabled. Abilita determiados objetos

Button5.Enabled = False

TextBox5.Focus() 'função focus, move o cursor para o campo informado

Return TextBox1.Text()

End Function

Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button5.Click

If Button5.Text = "Alterar" Then

Try

Page 200: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

196

If Val(TextBox1.Text) > 0 And TextBox2.Text > " " And

Val(TextBox4.Text) > -1 And Val(TextBox6.Text) > 0 Then 'condição para que seja feita a

alteração. Não pode aver valores nulos

If MsgBox("Deseja alterar este produto?", vbYesNo, "confirmação") = vb-

Yes Then ' ALTERAÇÃO

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.Connection = con

con.Open() 'Abri a conexão com o banco de dados

With cmd

.CommandType = CommandType.Text

.CommandText = "UPDATE produtos SET cod_barras = ?, no-

me_produto = ?, descricao_produto = ?, vlr_unitario = ?, qtde_produto = ?, data_cads_prod =

? WHERE cod_produto = " & CInt(Trim(TextBox5.Text)) 'Função trim para tirar os epaços

finais e iniciais e cint para o valor ser apenas inteiro

.Parameters.Add("cod_barras", OleDb.OleDbType.Char)

.Parameters("cod_barras").Value = Trim(TextBox1.Text) 'função trim

e cint para remover espaços iniciais e finais. Cint para que o valor seja apenas inteiro

.Parameters.Add("nome_produto", OleDb.OleDbType.VarChar)

.Parameters("nome_produto").Value = Trim(TextBox2.Text) 'função

trim para remover espaços

.Parameters.Add("descricao_produto", OleDb.OleDbType.VarChar)

.Parameters("descricao_produto").Value = Trim(TextBox3.Text) 'fun-

ção trim, remove espaços

.Parameters.Add("vlr_unitario", OleDb.OleDbType.Decimal)

.Parameters("vlr_unitario").Value = Trim(Replace(TextBox4.Text, ".",

",")) 'função trim, remove epaços finais e iniciais.

.Parameters.Add("qtde_produto", OleDb.OleDbType.Integer)

.Parameters("qtde_produto").Value = Trim(TextBox6.Text) 'função

trim e cint para remover espaços iniciais e finais. Cint para que o valor seja apenas inteiro

.Parameters.Add("data_cads_prod", OleDb.OleDbType.Date)

.Parameters("data_cads_prod").Value =

CDate(MaskedTextBox1.Text)

.ExecuteNonQuery()

End With

Page 201: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

197

con.Close()

MsgBox("Cadastro alterado com sucesso!", vbInformation)

limpar() 'fução para limpar as textbox e abilitar determinado obejto após

a lateração.

Else

MsgBox("Alteração cancelada!", vbExclamation)

TextBox5.Focus() 'função focus. Sempre que a alteração é cancelada o

curso volta para a textbox5

End If

Else

MsgBox("Campo inválido.", vbCritical)

TextBox5.Focus() 'função focus. Sempre que da algum campo inválido o

curso volta para a textbox5

End If

Catch ex1 As Exception

MsgBox(ex1.Message)

TextBox5.Focus() 'função focus. Sempre que da erro o curso volta para a

textbox5

End Try

ElseIf Button5.Text = "Excluir" Then 'condição para quando o botão for excluir.

Executa as instruções abaixo

Try 'FUNÇÃO EXCLUÍR

If Val(TextBox1.Text) > 0 And TextBox2.Text > " " And

Val(TextBox4.Text) > 0 And Val(TextBox6.Text) > 0 Then 'condição para exclusão do pro-

duto. Não pode haver valores nulos execeto a descrição do produto

If MsgBox("Deseja excluir este produto?", vbYesNo, "Confirmação") =

vbYes Then

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.Connection = con

con.Open() 'abri a conexão com o banco de dados

With cmd

.CommandType = CommandType.Text

Page 202: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

198

.CommandText = "Delete FROM produtos where cod_produto = " &

CInt(Trim(TextBox5.Text)) 'a função cint permite apenas valores interiros na textbox. A fun-

ção trim remove os espaçosfinais e iniciais

.Parameters.Add("produtos", OleDb.OleDbType.VarChar)

.Parameters("produtos").Value = TextBox5.Text

.ExecuteNonQuery()

End With

MsgBox("Registro excluído com êxito!", vbInformation)

con.Close() 'fecha a conexão com o banco de dados

limpar() 'função limpar, o comando é executa após a exclusão do produ-

to.

Else

MsgBox("Exclusão cancelada!", vbExclamation)

TextBox5.Focus() 'função focus. Sempre que uma operação é cancelada

o curso volta para a textbox5

End If

Else

MsgBox("Dados inválido!", vbCritical)

TextBox5.Focus() 'função focus. Sempre que há um campo inválido o cur-

so volta para a textbox5

End If

Catch ex As Exception

MsgBox(ex.Message)

TextBox5.Focus() 'função focus. Sempre que da erro o curso volta para a

textbox5

End Try

End If

End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button3.Click

Close() 'fecha o formulário

principal.Show() 'executa o formulário prinpical

End Sub

Page 203: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

199

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button1.Click

Try 'Tratando erros

Dim data As Date

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con

con.Open() 'Abri a conexão com o banco de dados

If CChar(TextBox1.Text) > " " Then

cmd.CommandText = "SELECT * FROM produtos where cod_barras = '" &

Trim(TextBox1.Text) & "'" 'a função cint permite apenas valores interiros na textbox. A fun-

ção trim remove os espaçosfinais e iniciais

ElseIf Val(TextBox5.Text) > 0 Then

cmd.CommandText = "SELECT * FROM produtos where cod_produto = " &

CInt(Trim(TextBox5.Text)) 'a função cint permite apenas valores interiros na textbox. A fun-

ção trim remove os espaçosfinais e iniciais

ElseIf TextBox2.Text > " " Then

cmd.CommandText = "SELECT * FROM produtos where nome_produto like

'%" & Trim(TextBox2.Text) & "%'" 'Função trim, remove os epaços iniciais e finais

ElseIf TextBox3.Text > " " Then

cmd.CommandText = "SELECT * FROM produtos where descricao_produto

like '%" & Trim(TextBox3.Text) & "%'" 'Função trim, remove os epaços iniciais e finais

Else

MsgBox("Dados inválido para pesquisa!", vbCritical)

TextBox5.Focus() 'função focus. Sempre que é feito uma consulta e algum

campo está inválido o curso volta para a textbox5

End If

reader = cmd.ExecuteReader()

reader.Read()

TextBox1.Text = reader("cod_barras")

TextBox2.Text = reader("nome_produto")

TextBox3.Text = reader("descricao_produto")

TextBox4.Text = reader("vlr_unitario")

TextBox5.Text = reader("cod_produto")

Page 204: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

200

TextBox6.Text = reader("qtde_produto")

data = reader("data_cads_prod")

MaskedTextBox1.Text = data

con.Close() 'fecha o conexão com o banco de dados

Button5.Enabled = True 'função enabled

TextBox5.Enabled = False

TextBox5.Focus() ' função focus, move o cursor para o campo especificado

Catch ex As Exception

MsgBox(ex.Message)

TextBox5.Focus() ' função focus. Sempre que ocorre um erro quando cultado

um produto o curso volta para a textbox5

End Try

End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button2.Click

limpar() 'Função limpar. Instruções executada para limpar as textbox

End Sub

Private Sub TextBox4_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox4.KeyPress

Dim cod_askii As Short = CShort(Asc(e.KeyChar))

cod_askii = CShort(Sodecimal(cod_askii)) 'função para desabilitar texto na textbox

'condição para habilitar os números. zero número, 1 texto..

If cod_askii = 0 Then

e.Handled = True

End If

'condição para desabilitar a barra de espaço na textbox (valor unitário)

If cod_askii = 32 Then

e.Handled = True

End If

'condição para limitar a vírgula. Só é aceito uma vírgula no campo valor do produ-

to.

If Not Char.IsNumber(e.KeyChar) And Not e.KeyChar = vbBack And Not

e.KeyChar = "," Then e.Handled = True

If e.KeyChar = "," And (InStr(TextBox4.Text, ",")) > 0 Then e.Handled = True

Page 205: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

201

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

TextBox6.Focus() 'função focus, move o cursor para o campo especificado.

End If

End Sub

Private Sub TextBox5_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox5.KeyPress

Dim KeyAscii As Short = CShort(Asc(e.KeyChar))

KeyAscii = CShort(SoNumeros(KeyAscii)) 'função para desabilitar texto na text-

box

'condição para habilitar os número. zero número, 1 texto.

If KeyAscii = 0 Then

e.Handled = True

End If

'condição para desabilitar a barra de espaço na textbox (código de barras do produ-

to)

If KeyAscii = 32 Then

e.Handled = True

End If

If e.KeyChar = Chr(13) Then

Button1_Click(Me, EventArgs.Empty) 'Ação executada no momente em que o

usuário digita enter

End If

End Sub

Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress

Dim KeyAscii As Short = CShort(Asc(e.KeyChar))

KeyAscii = CShort(SoNumeros(KeyAscii)) 'função para desabilitar texto na text-

box

'condição para habilitar os número. zero número, 1 texto.

If KeyAscii = 0 Then

e.Handled = True

End If

Page 206: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

202

'condição para desabilitar a barra de espaço na textbox (código de barras do produ-

to)

If KeyAscii = 32 Then

e.Handled = True

End If

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

TextBox2.Focus() 'função focus, move o cursor para o campo especificado.

End If

End Sub

Private Sub TextBox2_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox2.KeyPress

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

TextBox3.Focus() 'função focus, move o cursor para o campo especificado.

End If

End Sub

Private Sub TextBox3_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox3.KeyPress

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

TextBox4.Focus() 'função focus, move o cursor para o campo especificado.

End If

End Sub

Private Sub TextBox6_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox6.KeyPress

Dim KeyAscii As Short = CShort(Asc(e.KeyChar))

KeyAscii = CShort(SoNumeros(KeyAscii)) 'função para desabilitar texto na text-

box

'condição para habilitar os número. zero número, 1 texto.

If KeyAscii = 0 Then

e.Handled = True

End If

Page 207: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

203

'condição para desabilitar a barra de espaço na textbox (código de barras do produ-

to)

If KeyAscii = 32 Then

e.Handled = True

End If

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

If MaskedTextBox1.Enabled = True Then

MaskedTextBox1.Focus() 'função focus, move o cursor para o campo especi-

ficado.

Else

e.KeyChar = Chr(13)

Button5_Click(Me, EventArgs.Empty)

End If

End If

End Sub

Private Sub MaskedTextBox1_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles MaskedTextBox1.KeyPress

If e.KeyChar = Chr(13) Then

Button5_Click(Me, EventArgs.Empty) 'Ação executada no momente em que o

usuário digita enter

End If

End Sub

Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles CheckBox1.CheckedChanged

If CheckBox1.Checked = True Then

MaskedTextBox1.Enabled = True

TextBox6.Focus()

Else

MaskedTextBox1.Enabled = False

TextBox6.Focus()

End If

End Sub

Page 208: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

204

Private Sub AlterarProduto_KeyDown(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyEventArgs) Handles Me.KeyDown

If e.KeyCode = Keys.Escape Then

Button3.PerformClick()

End If

End Sub

Private Sub AlterarProduto_Load(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles MyBase.Load

If Button5.Text = "Excluir" Then

CheckBox1.Enabled = False

End If

End Sub

Private Sub TextBox4_TextChanged(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles TextBox4.TextChanged

End Sub

End Class

„**********************************************************************

'ALTERAR MARCA

'**********************************************************************

ALTERARMARCA.VB

'

Public Class AlterarMarca

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button2.Click

If Button2.Text = "Alterar" Then

Try

conexao_mysql() 'procedure de conexão e comando (cmd e con)

If CInt(TextBox1.Text) > 0 And TextBox2.Text > " " Then '

If MsgBox("Deseja alterar esta marca?", vbYesNo, "confirmação") = vb-

Yes Then

cmd.Connection = con

con.Open() 'Abri a conexão com o banco de dados

With cmd

Page 209: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

205

.CommandType = CommandType.Text

.CommandText = "UPDATE marcas SET nome_marca = ? WHERE

cod_marca = " & CInt(Trim(TextBox1.Text)) 'Só pode haver valores inteiros(número). Fun-

ção trim romove espaços iniciais e finais da textbox

.Parameters.Add("nome_marca", OleDb.OleDbType.VarChar)

.Parameters("nome_marca").Value = Trim(TextBox2.Text) 'Função

trim romove espaços iniciais e finais da textbox

.ExecuteNonQuery()

End With

con.Close() 'Fecha a conexão com o banco de dados

MsgBox("Cadastro alterado com sucesso!", vbInformation)

TextBox1.Clear() 'função clear, limpa as textbox após a alteração

TextBox2.Clear()

TextBox1.Enabled = True 'função enabled para determinar o campo que

fica desabilitado ou o botãõ que recebe a ação.

Button2.Enabled = False

TextBox1.Focus() 'Função focus, move o cursor para o campo informado

Else

MsgBox("Alteração cancelada!", vbExclamation)

TextBox1.Focus() 'Função focus, move o cursor para o campo informado

End If

Else

MsgBox("Campo inválido.", vbCritical)

TextBox1.Focus() 'Função focus, move o cursor para o campo informado

End If

Catch ex1 As Exception

MsgBox(ex1.Message)

TextBox1.Focus() 'Função focus, move o cursor para o campo informado

End Try

ElseIf Button2.Text = "Excluir" Then 'Condição para quando o botão for excluir.

Executa as instruções abaixo

Try 'Tratando erro

If CInt(TextBox1.Text) > 0 And TextBox2.Text > " " Then 'condição para ex-

clusão. Nenhum valor pode ser nulo

Page 210: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

206

If MsgBox("Deseja excluir esta marca?", vbYesNo, "confirma") = vbYes

Then

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.Connection = con

con.Open() 'Abri a conexão com o banco de dados

With cmd

.CommandType = CommandType.Text

.CommandText = "Delete FROM marcas where cod_marca = " &

CInt(Trim(TextBox1.Text))

.Parameters.Add("nome_marca", OleDb.OleDbType.VarChar)

.Parameters("nome_marca").Value = TextBox1.Text

.ExecuteNonQuery()

End With

con.Close() 'Feha a conexão com o banco de dados

MsgBox("Registro excluído com êxito!", vbInformation)

TextBox1.Clear() 'função clear

TextBox2.Clear()

TextBox1.Enabled = True 'função enabled

Button2.Enabled = False

TextBox1.Focus() 'Função focus, move o cursor para o campo informado

Else

MsgBox("Exclusão cancelada!", vbExclamation)

TextBox1.Focus() 'Função focus, move o cursor para o campo informado

End If

Else

MsgBox("Valor informado inválido!", vbCritical)

TextBox1.Focus() 'Função focus, move o cursor para o campo informado

End If

Catch ex2 As Exception

MsgBox(ex2.Message)

MsgBox("A marca não foi excluída. Exclua o produto desta marca antes!",

vbCritical)

TextBox1.Enabled = True 'função enabled

Button2.Enabled = False

Page 211: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

207

TextBox1.Focus() 'Função focus, move o cursor para o campo informado

End Try

End If

End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button3.Click

Close() 'fecha o formulário

principal.Show() 'executa o menu principal

End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button1.Click

Try 'Tratando erro de conexão

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con

con.Open() 'Abri a conexão com o banco de dados

If TextBox2.Text > " " Then

cmd.CommandText = "SELECT * FROM marcas where nome_marca like

'%" & Trim(TextBox2.Text) & "%'" 'Função trim romove espaços iniciais e finais da textbox

ElseIf Val(TextBox1.Text) > 0 Then

cmd.CommandText = "SELECT * FROM marcas where cod_marca = " &

CInt(Trim(TextBox1.Text)) 'Só pode haver valores inteiros(número). Função trim romove

espaços iniciais e finais da textbox

Else

MsgBox("Valor inválido!", vbCritical)

TextBox1.Focus()

End If

reader = cmd.ExecuteReader()

reader.Read()

TextBox1.Text = reader("cod_marca")

TextBox2.Text = reader("nome_marca")

reader.Close() 'fecha a leitura do no banco

con.Close() 'fecha a conexão com o banco de dados

TextBox1.Enabled = False

Page 212: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

208

Button2.Enabled = True

TextBox2.Focus() 'Função focus, move o cursor para o campo informado

Catch ex3 As Exception

MsgBox(ex3.Message)

TextBox1.Enabled = True

Button2.Enabled = False

TextBox1.Focus() 'Função focus, move o cursor para o campo informado

End Try

End Sub

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button4.Click

'Instrução para o botão apagar

TextBox1.Clear()

TextBox2.Clear()

TextBox1.Enabled = True

Button2.Enabled = False

TextBox1.Focus() 'Função focus, move o cursor para o campo informado

End Sub

Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress

Dim KeyAscii As Short = CShort(Asc(e.KeyChar))

KeyAscii = CShort(SoNumeros(KeyAscii)) 'função para desabilitar texto na text-

box

'condição para habilitar os número. zero número, 1 texto.

If KeyAscii = 0 Then

e.Handled = True

End If

'condição para desabilitar a barra de espaço na textbox (código de barras do produ-

to)

If KeyAscii = 32 Then

e.Handled = True

End If

If e.KeyChar = Chr(13) Then

Page 213: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

209

Button1_Click(Me, EventArgs.Empty) 'ação para quando uma das textbox é di-

gitado enter.

End If

End Sub

Private Sub TextBox2_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox2.KeyPress

If e.KeyChar = Chr(13) Then

Button1_Click(Me, EventArgs.Empty) 'ação para quando uma das textbox é di-

gitado enter.

End If

End Sub

Private Sub AlterarMarca_KeyDown(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyEventArgs) Handles Me.KeyDown

If e.KeyCode = Keys.Escape Then

Button3.PerformClick()

End If

End Sub

End Class

„**********************************************************************

'ALTERAR LINHA

'**********************************************************************

ALTERARLINHA.VB

'

Public Class AlterarLinha

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button2.Click

If Button2.Text = "Alterar" Then 'instução para quando o botão for Alterar

Try

If CInt(TextBox1.Text) > 0 And TextBox2.Text > " " Then

If MsgBox("Deseja alterar esta linha?", vbYesNo, "confirmação") = vbYes

Then

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.Connection = con

Page 214: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

210

con.Open() 'Abri a conexão com o banco de dados

With cmd

.CommandType = CommandType.Text

.CommandText = "UPDATE linha SET nome_linha = ? WHERE

cod_linha = " & CInt(Trim(TextBox1.Text)) 'Condição para a primeira pesquisa. Os dados

digitados tem de ser do tipo integer. A função trim remove espaços iniciais e finais

.Parameters.Add("nome_linha", OleDb.OleDbType.VarChar)

.Parameters("nome_linha").Value = Trim(TextBox2.Text) 'Condição

para a segunda pesquisa. Os dados digitados tem de ser do tipo texto. A função trim remove

espaços iniciais e fianis

.ExecuteNonQuery()

End With

con.Close() 'fecha a conexão com o banco de dados

MsgBox("Cadastro alterado com sucesso!", vbInformation)

TextBox1.Clear() 'limpa a textbox após o cadastro

TextBox2.Clear()

TextBox1.Enabled = True 'Função abilitar, abilita determinados objetos

no formulário

Button2.Enabled = False

TextBox1.Focus() 'Função focus, move o cursor para o campo informado

Else

MsgBox("Alteração cancelada!", vbExclamation)

TextBox1.Focus() 'Função focus, move o cursor para o campo informado

End If

Else

MsgBox("Campo invalido.", vbCritical)

TextBox1.Focus() 'Função focus, move o cursor para o campo informado

End If

Catch ex1 As Exception

MsgBox(ex1.Message)

TextBox1.Focus() 'Função focus, move o cursor para o campo informado

End Try

ElseIf Button2.Text = "Excluir" Then 'instrução para quando o botão for Excluir

Try

Page 215: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

211

If CInt(TextBox1.Text) > 0 And TextBox2.Text > " " Then

If MsgBox("Deseja excluir esta linha?", vbYesNo, "confirma") = vbYes

Then

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.Connection = con

con.Open()

With cmd

.CommandType = CommandType.Text

.CommandText = "Delete FROM linha where cod_linha = " &

CInt(Trim(TextBox1.Text)) 'função trim: remove espaços iniciais e finais. Cint: os valores

númericos devem ser do tipo integer

.Parameters.Add("linha", OleDb.OleDbType.VarChar)

.Parameters("linha").Value = TextBox1.Text

.ExecuteNonQuery()

End With

con.Close() 'fecha a conexão com o banco de dados

MsgBox("Registro excluído com êxito!", vbInformation)

TextBox1.Clear() 'função clear, limpa as textbox

TextBox2.Clear()

TextBox1.Enabled = True ''Função abilitar, abilita determinados objetos

no formulário

Button2.Enabled = False

TextBox1.Focus() 'Função focus, move o cursor para o campo informado

Else

MsgBox("Exclusão cancelada!", vbExclamation)

TextBox1.Focus() 'Função focus, move o cursor para o campo informado

End If

Else

MsgBox("Informação para exclusão inválida!", vbCritical)

TextBox1.Focus() 'Função focus, move o cursor para o campo informado

End If

Catch ex2 As Exception

MsgBox(ex2.Message)

Page 216: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

212

MsgBox("A linha não foi excluída. Exclua o produto desta linha antes!", vb-

Critical)

TextBox1.Enabled = True 'função enabled

Button2.Enabled = False

TextBox1.Focus() 'Função focus, move o cursor para o campo informado

End Try

End If

End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button3.Click

Close() 'fecha o formulário

principal.Show() 'executa o menu principal

End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button1.Click

Try 'Tratando no formulario e na conexão

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con

con.Open() 'abri a conexão com o banco de dados

If TextBox2.Text > " " Then

cmd.CommandText = "SELECT * FROM linha where nome_linha like '%" &

Trim(TextBox2.Text) & "%'" 'Condição para a segunda pesquisa. Os dados digitados tem de

ser do tipo texto. A função trim remove espaços iniciais e fianis

ElseIf Val(TextBox1.Text) > 0 Then

cmd.CommandText = "SELECT * FROM linha where cod_linha = " &

CInt(Trim(TextBox1.Text)) 'Condição para a primeira pesquisa. Os dados digitados tem de

ser do tipo integer. A função trim remove espaços iniciais e finais

Else

MsgBox("Valor inválido!", vbCritical)

TextBox1.Focus() 'Função focus, move o cursor para o campo informado

End If

reader = cmd.ExecuteReader()

reader.Read()

Page 217: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

213

TextBox1.Text = reader("cod_linha")

TextBox2.Text = reader("nome_linha")

reader.Close() 'fecha a leitura do banco de dados

con.Close() 'fecha a conexão com o banco de dados

'Função abilitar

Button2.Enabled = True

TextBox1.Enabled = False

TextBox2.Focus() 'Função focus, move o cursor para o campo informado

Catch ex3 As Exception

MsgBox(ex3.Message)

TextBox1.Enabled = True ''Função abilitar, abilita determinados objetos no for-

mulário

Button2.Enabled = False

TextBox1.Focus() 'Função focus, move o cursor para o campo informado

End Try

End Sub

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button4.Click

'Instrução para o botão apagar

TextBox1.Clear() 'função clear

TextBox2.Clear()

Button2.Enabled = False 'Função abilitar, abilita determinados objetos no formulá-

rio

TextBox1.Enabled = True

TextBox1.Focus() 'Função focus, move o cursor para o campo informado

End Sub

Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress

Dim KeyAscii As Short = CShort(Asc(e.KeyChar))

KeyAscii = CShort(SoNumeros(KeyAscii)) 'função para desabilitar texto na text-

box

'condição para habilitar os número. zero número, 1 texto.

If KeyAscii = 0 Then

e.Handled = True

Page 218: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

214

End If

'condição para desabilitar a barra de espaço na textbox (código de barras do produ-

to)

If KeyAscii = 32 Then

e.Handled = True

End If

If e.KeyChar = Chr(13) Then

Button1_Click(Me, EventArgs.Empty) 'ação quando o usuário digita enter em

uma das textbox

End If

End Sub

Private Sub TextBox2_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox2.KeyPress

If e.KeyChar = Chr(13) Then

Button1_Click(Me, EventArgs.Empty) 'ação quando o usuário digita enter em

uma das textbox

End If

End Sub

Private Sub AlterarLinha_KeyDown(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyEventArgs) Handles Me.KeyDown

If e.KeyCode = Keys.Escape Then

Button3.PerformClick()

End If

End Sub

End Class

„**********************************************************************

'ALTERAR CATEGORIA

'**********************************************************************

ALTERARCATEGORIA.VB

'

Public Class AlterarCategoria

Private Sub seta_navegator(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyEventArgs)

Page 219: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

215

If e.KeyCode = Keys.Up Then

If Not Me.GetNextControl(sender, False) Is Nothing Then

Me.GetNextControl(sender, False).Focus()

ElseIf e.KeyCode = Keys.Down Then 'Or e.KeyCode = Keys.Enter Then

If Not Me.GetNextControl(sender, True) Is Nothing Then

Me.GetNextControl(sender, True).Focus()

End If

End Sub

Private Function limpar_dados()

'Instrução para o botão apagar

TextBox1.Clear()

TextBox2.Clear()

TextBox1.Enabled = True 'Função abilitar, abilita determinados objetos no formu-

lário

Button2.Enabled = False

TextBox1.Focus() 'função focus, quando o botão apagar e clickado o cursor irá pa-

ra a textbox1

Return TextBox1.Text()

End Function

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button2.Click

If Button2.Text = "Alterar" Then 'ação para o botão quando for Alterar

Try

If Val(TextBox1.Text) > 0 And TextBox2.Text > " " Then

conexao_mysql() 'procedure de conexão e comando (cmd e con)

If MsgBox("Deseja alterar esta categoria?", vbYesNo, "confirmação") =

vbYes Then

cmd.Connection = con

con.Open() 'Abri a conexão com o banco de dados

With cmd

.CommandType = CommandType.Text

.CommandText = "UPDATE categoria SET nome_categoria = ?

WHERE cod_categoria = " & CInt(Trim(TextBox1.Text)) 'O tipo de dados dever ser integer e

a função trim romove os espaços iniciais e finais da textbox

Page 220: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

216

.Parameters.Add("nome_categoria", OleDb.OleDbType.VarChar)

.Parameters("nome_categoria").Value = Trim(TextBox2.Text) 'Função

trim. Romove espaços iniciais e finais da textbox

.ExecuteNonQuery()

End With

con.Close() 'Fecha a conexão com o banco de dados

limpar_dados() 'função limpar, limpa as textbox após a alteração

MsgBox("Cadastro alterado com sucesso!", vbInformation)

Else

MsgBox("Alteração cancelada!", vbExclamation)

TextBox1.Focus() 'função focus, usado para mover o cursor para o cam-

po requerido.

End If

Else

MsgBox("Campo invalido.", vbCritical)

TextBox1.Focus() 'função focus, usado para mover o cursor para o campo

requerido.

End If

Catch ex As Exception

MsgBox(ex.Message)

TextBox1.Focus() 'função focus, usado para mover o cursor para o campo re-

querido.

End Try

ElseIf Button2.Text = "Excluir" Then 'quando o botão seja seja excluir

Try 'Tratando erro

If CInt(TextBox1.Text) > 0 And TextBox2.Text > " " Then

If MsgBox("Deseja excluir esta categoria?", vbYesNo, "confirma") = vb-

Yes Then

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.Connection = con

con.Open() 'Abri a conexão com o banco de dados

With cmd

.CommandType = CommandType.Text

Page 221: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

217

.CommandText = "Delete FROM categoria where cod_categoria = " &

CInt(Trim(TextBox1.Text)) 'O tipo de dados dever ser integer e a função trim romove os es-

paços iniciais e finais da textbox

.Parameters.Add("categoria", OleDb.OleDbType.VarChar)

.Parameters("categoria").Value = TextBox1.Text 'Função trim. Romo-

ve espaços iniciais e finsais da textbox

.ExecuteNonQuery()

End With

con.Close() 'Fecha a conexão com o banco de dados

limpar_dados() 'função limpar, limpa as textbox após a exclusão

MsgBox("Registro excluído com êxito!", vbInformation)

Else

MsgBox("Exclusão cancelada!", vbExclamation)

TextBox1.Focus() 'função focus, quando a exclusão é cancelada o cursor

volta para a textbox1

End If

Else

MsgBox("Informação para exclusão inválida!", vbCritical)

TextBox1.Focus() 'função focus, quando a algum dado incorreto para pes-

quisa o cursor volta para a textbox1

End If

Catch ex As Exception

MsgBox(ex.Message)

MsgBox("A categoria não foi excluída. Exclua o produto desta categoria an-

tes!", vbCritical)

TextBox1.Enabled = True 'Função abilitar, abilita determinados objetos no

formulário

Button2.Enabled = False

TextBox1.Focus() 'função focus, quando a mensagem de erro é exibida na tela

o cursor volta para a textbox1

End Try

End If

End Sub

Page 222: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

218

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button3.Click

Me.Close() 'fecha o formulário

principal.Show() 'Executa o formulário principal

End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button1.Click

Try 'Tratando erro

conexao_mysql() 'procedure de conexão e comando (cmd, con)

cmd.Connection = con

con.Open() 'Abre a conexão com o banco de dados

cmd.CommandType = System.Data.CommandType.Text

If TextBox2.Text > " " Then 'Segunda condição para pequisa no banco de dados

cmd.CommandText = "SELECT * FROM categoria where nome_categoria

like '%" & Trim(TextBox2.Text) & "%'" 'Função trim romove espaços iniciais e finais da

textbox

ElseIf Val(TextBox1.Text) > 0 Then 'Condição para a pesquisa no banco de da-

dos

cmd.CommandText = "SELECT * FROM categoria where cod_categoria = "

& CInt(Trim(TextBox1.Text)) 'Só pode haver valores inteiros(número). Função trim romove

espaços iniciais e finais da textbox

Else

MsgBox("Dados inválidos para pesquisa!", vbCritical)

TextBox1.Focus() 'função focus, quando a algum campo de pesquisa inválido

o cursor é movido para a testbox1

End If

reader = cmd.ExecuteReader()

reader.Read()

TextBox1.Text = reader("cod_categoria")

TextBox2.Text = reader("nome_categoria")

reader.Close() 'Fecha a leitura com o banco de dados

con.Close() 'Fecha a conexão com o banco de dados

TextBox1.Enabled = False 'Função abilitar, abilita determinados objetos no for-

mulário

Page 223: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

219

Button2.Enabled = True

TextBox2.Focus() 'quando a select é executado com sucesso o cursor irá para a

textbox2 por que a textbox1 fica desabilitada

Catch ex As Exception

MsgBox(ex.Message)

TextBox1.Focus() 'função focus, move o cursor quando tem algum erro para a

textbox1

End Try

End Sub

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button4.Click

limpar_dados()

End Sub

Private Sub TextBox1_KeyDown(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyDown

seta_navegator(sender, e)

End Sub

Private Sub TextBox2_KeyDown(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyEventArgs) Handles TextBox2.KeyDown

seta_navegator(sender, e)

End Sub

Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress

Dim KeyAscii As Short = CShort(Asc(e.KeyChar))

KeyAscii = CShort(SoNumeros(KeyAscii)) 'função para desabilitar texto na text-

box

'condição para habilitar os números. zero número, 1 texto.

If KeyAscii = 0 Then

e.Handled = True

End If

'condição para desabilitar a barra de espaço na textbox (código de barras do produ-

to)

If KeyAscii = 32 Then

e.Handled = True

Page 224: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

220

End If

If e.KeyChar = Chr(13) Then

Button1_Click(Me, EventArgs.Empty) 'Evento click, quando o usuario digita

enter o botão é clickado

End If

End Sub

Private Sub TextBox2_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox2.KeyPress

If e.KeyChar = Chr(13) Then

Button1_Click(Me, EventArgs.Empty) 'Evento click, quando o usuario digita

enter o botão é clickado

End If

End Sub

Private Sub AlterarCategoria_KeyDown(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyEventArgs) Handles Me.KeyDown

If e.KeyCode = Keys.Escape Then

Button3.PerformClick()

End If

End Sub

End Class

„**********************************************************************

'ACESSOS

'**********************************************************************

ACESSOS.VB

'

Public Class Acessos

Dim nome_login, nome_usuario As String

Private Function auto_checar()

CheckBox1.Checked = True

CheckBox2.Checked = True

CheckBox3.Checked = True

CheckBox4.Checked = True

CheckBox5.Checked = True

Page 225: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

221

CheckBox6.Checked = True

CheckBox7.Checked = True

CheckBox8.Checked = True

CheckBox9.Checked = True

CheckBox10.Checked = True

CheckBox11.Checked = True

CheckBox12.Checked = True

CheckBox13.Checked = True

CheckBox16.Checked = True

CheckBox18.Checked = True

CheckBox19.Checked = True

CheckBox20.Checked = True

CheckBox21.Checked = True

CheckBox22.Checked = True

CheckBox23.Checked = True

Return CheckBox1.Checked()

End Function

Private Function desabilitar_checbox()

CheckBox1.Checked = False

CheckBox2.Checked = False

CheckBox3.Checked = False

CheckBox4.Checked = False

CheckBox5.Checked = False

CheckBox6.Checked = False

CheckBox7.Checked = False

CheckBox8.Checked = False

CheckBox9.Checked = False

CheckBox10.Checked = False

CheckBox11.Checked = False

CheckBox12.Checked = False

CheckBox13.Checked = False

CheckBox16.Checked = False

CheckBox18.Checked = False

CheckBox19.Checked = False

Page 226: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

222

CheckBox20.Checked = False

CheckBox21.Checked = False

CheckBox22.Checked = False

CheckBox23.Checked = False

Return CheckBox1.Checked()

End Function

Private Function apagar()

TextBox1.Clear()

TextBox2.Clear()

MaskedTextBox1.Clear()

MaskedTextBox2.Clear()

Button5.Enabled = False

Return TextBox1.Text()

End Function

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button1.Click

Try

conexao_mysql() 'procedure de conexão e comando (cmd e con)

cmd.CommandType = System.Data.CommandType.Text

cmd.Connection = con 'variavel de conexão

con.Open() 'abri o banco

If TextBox1.Text > " " Then

cmd.CommandText = "select A.*, B.* from usuario A INNER JOIN login B

on(A.cod_login=B.cod_login) where nome_usuario like '%" & Trim(TextBox1.Text) & "%'"

ElseIf Val(MaskedTextBox1.Text) > 0 Then

cmd.CommandText = "select A.*, B.* from usuario A INNER JOIN login B

on(A.cod_login=B.cod_login) where rg_usuario = '" & Trim(MaskedTextBox1.Text) & "'"

ElseIf Val(MaskedTextBox2.Text) > 0 Then

cmd.CommandText = "select A.*, B.* from usuario A INNER JOIN login B

on(A.cod_login=B.cod_login) where cpf_usuario = '" & Trim(MaskedTextBox2.Text) & "'"

ElseIf TextBox2.Text > " " Then

cmd.CommandText = "select A.*, B.* from usuario A INNER JOIN login B

on(A.cod_login=B.cod_login) where nome_login = '" & Trim(TextBox2.Text) & "'"

Else

Page 227: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

223

MsgBox("Dados inocrreto para pesquisa!", vbCritical) 'quando os campos es-

tã nulos e o usuário tenta fazer pequisa.

TextBox1.Focus()

End If

reader = cmd.ExecuteReader() 'comando para executar a reader

reader.Read() 'variável reader para ler os dados selecionado na select

cod_login = reader("cod_login") 'codigo atendente. será usado na alteração do

usuario

If cod_login > 1 Then

TextBox2.Text = reader("nome_login")

nome_login = TextBox2.Text

TextBox1.Text = reader("nome_usuario")

nome_usuario = TextBox1.Text

MaskedTextBox1.Text = reader("rg_usuario")

MaskedTextBox2.Text = reader("cpf_usuario")

CheckBox1.Checked = reader("alt_categoria")

CheckBox2.Checked = reader("cad_categoria")

CheckBox3.Checked = reader("exc_categoria")

CheckBox4.Checked = reader("exc_linha")

CheckBox5.Checked = reader("cad_linha")

CheckBox6.Checked = reader("alt_linha")

CheckBox7.Checked = reader("exc_marca")

CheckBox8.Checked = reader("cad_marca")

CheckBox9.Checked = reader("alt_marca")

CheckBox10.Checked = reader("exc_produto")

CheckBox11.Checked = reader("cad_produto")

CheckBox12.Checked = reader("alt_produto")

CheckBox13.Checked = reader("exc_itens_venda")

CheckBox16.Checked = reader("exc_venda")

CheckBox18.Checked = reader("alt_venda")

CheckBox19.Checked = reader("exc_usuario")

CheckBox20.Checked = reader("cad_usuario")

CheckBox21.Checked = reader("alt_usuario")

CheckBox22.Checked = reader("relatorio")

Page 228: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

224

CheckBox23.Checked = reader("atualizar")

Button5.Enabled = True

reader.Close() 'fechando a reader

con.Close() 'fechando o banco de dados

Else

MsgBox("Consulta inválida.", vbCritical)

End If

Catch ex As Exception

MsgBox(ex.Message & vbCrLf & " Login não encontrado!", vbCritical)

Button5.Enabled = False

TextBox1.Focus()

End Try

End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button2.Click

apagar() 'função apagar.

desabilitar_checbox() 'função para desabilitar as checbox

TextBox1.Focus() 'move o cursor para a textbox1

End Sub

Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button5.Click

Try

If TextBox1.Text > " " And TextBox2.Text > " " Then

If nome_login = TextBox2.Text And nome_usuario = TextBox1.Text Then

If MsgBox("Deseja efetuar estas configurações?", vbYesNo, "confirma-

ção") = vbYes Then

sisve_acessos() 'procedure de configuração de acesso ao sistema

TextBox1.Focus()

desabilitar_checbox() 'função de checkbox - deixa como 0 a chechbox,

ou seja, checbox=false

apagar() 'função apagar

Else

MsgBox("Configuração cancelada.", vbExclamation)

End If

Page 229: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

225

Else

MsgBox("Alteração inválida! Cadastro diferente do consultado.", vbCriti-

cal)

End If

Else

MsgBox("Alteração invalida, verifique os campos e tente novamente!", vb-

Critical)

End If

Catch sal As Exception

MsgBox(sal.Message)

TextBox1.Focus()

End Try

End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button3.Click

Me.Close()

principal.Show()

End Sub

Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles CheckBox1.CheckedChanged

If CheckBox1.Checked = True Then

tacesso(0, 0) = 1 'alterar categoria

Else

tacesso(0, 0) = 0

End If

End Sub

Private Sub CheckBox2_CheckedChanged(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles CheckBox2.CheckedChanged

If CheckBox2.Checked = True Then

tacesso(0, 1) = 1 'cadastrar categoria

Else

tacesso(0, 1) = 0

End If

End Sub

Page 230: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

226

Private Sub CheckBox3_CheckedChanged(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles CheckBox3.CheckedChanged

If CheckBox3.Checked = True Then

tacesso(0, 2) = 1 'excluir categoria

Else

tacesso(0, 2) = 0

End If

End Sub

Private Sub CheckBox6_CheckedChanged(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles CheckBox6.CheckedChanged

If CheckBox6.Checked = True Then

tacesso(0, 3) = 1 'alterar linha

Else

tacesso(0, 3) = 0

End If

End Sub

Private Sub CheckBox5_CheckedChanged(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles CheckBox5.CheckedChanged

If CheckBox5.Checked = True Then

tacesso(0, 4) = 1 'cadastrar linha

Else

tacesso(0, 4) = 0

End If

End Sub

Private Sub CheckBox4_CheckedChanged(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles CheckBox4.CheckedChanged

If CheckBox4.Checked = True Then

tacesso(0, 5) = 1 'excluir linha

Else

tacesso(0, 5) = 0

End If

End Sub

Private Sub CheckBox9_CheckedChanged(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles CheckBox9.CheckedChanged

Page 231: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

227

If CheckBox9.Checked = True Then

tacesso(0, 6) = 1 'alteerar marca

Else

tacesso(0, 6) = 0

End If

End Sub

Private Sub CheckBox8_CheckedChanged(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles CheckBox8.CheckedChanged

If CheckBox8.Checked = True Then

tacesso(0, 7) = 1 'cadastrar marca

Else

tacesso(0, 7) = 0

End If

End Sub

Private Sub CheckBox7_CheckedChanged(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles CheckBox7.CheckedChanged

If CheckBox7.Checked = True Then

tacesso(0, 8) = 1 'excluir marca

Else

tacesso(0, 8) = 0

End If

End Sub

Private Sub CheckBox12_CheckedChanged(ByVal sender As System.Object, ByVal

e As System.EventArgs) Handles CheckBox12.CheckedChanged

If CheckBox12.Checked = True Then

tacesso(0, 9) = 1 'alterar produto

Else

tacesso(0, 9) = 0

End If

End Sub

Private Sub CheckBox11_CheckedChanged(ByVal sender As System.Object, ByVal

e As System.EventArgs) Handles CheckBox11.CheckedChanged

If CheckBox11.Checked = True Then

tacesso(0, 10) = 1 'cadastrar produto

Page 232: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

228

Else

tacesso(0, 10) = 0

End If

End Sub

Private Sub CheckBox10_CheckedChanged(ByVal sender As System.Object, ByVal

e As System.EventArgs) Handles CheckBox10.CheckedChanged

If CheckBox10.Checked = True Then

tacesso(0, 11) = 1 'excluir produto

Else

tacesso(0, 11) = 0

End If

End Sub

Private Sub CheckBox13_CheckedChanged(ByVal sender As System.Object, ByVal

e As System.EventArgs) Handles CheckBox13.CheckedChanged

If CheckBox13.Checked = True Then

tacesso(0, 12) = 1 'excluir itens venda

Else

tacesso(0, 12) = 0

End If

End Sub

Private Sub CheckBox18_CheckedChanged(ByVal sender As System.Object, ByVal

e As System.EventArgs) Handles CheckBox18.CheckedChanged

If CheckBox18.Checked = True Then

tacesso(0, 13) = 1 'alterar venda

Else

tacesso(0, 13) = 0

End If

End Sub

Private Sub CheckBox16_CheckedChanged(ByVal sender As System.Object, ByVal

e As System.EventArgs) Handles CheckBox16.CheckedChanged

If CheckBox16.Checked = True Then

tacesso(0, 14) = 1 'excluir venda

Else

tacesso(0, 14) = 0

Page 233: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

229

End If

End Sub

Private Sub CheckBox21_CheckedChanged(ByVal sender As System.Object, ByVal

e As System.EventArgs) Handles CheckBox21.CheckedChanged

If CheckBox21.Checked = True Then

tacesso(0, 15) = 1 'alterar usuário

Else

tacesso(0, 15) = 0

End If

End Sub

Private Sub CheckBox20_CheckedChanged(ByVal sender As System.Object, ByVal

e As System.EventArgs) Handles CheckBox20.CheckedChanged

If CheckBox20.Checked = True Then

tacesso(0, 16) = 1 'cadastrar usuário

Else

tacesso(0, 16) = 0

End If

End Sub

Private Sub CheckBox19_CheckedChanged(ByVal sender As System.Object, ByVal

e As System.EventArgs) Handles CheckBox19.CheckedChanged

If CheckBox19.Checked = True Then

tacesso(0, 17) = 1 'excluir usuário

Else

tacesso(0, 17) = 0

End If

End Sub

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button4.Click

If Button4.Text = "Habilitar" Then

auto_checar()

Button4.Text = "Desabilitar"

Button5.Focus()

ElseIf Button4.Text = "Desabilitar" Then

desabilitar_checbox()

Page 234: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

230

Button4.Text = "Habilitar"

TextBox1.Focus()

End If

End Sub

Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress

If e.KeyChar = Chr(13) Then

Button1_Click(Me, EventArgs.Empty)

TextBox1.Focus() 'função focus, move o cursor para o campo especificado

End If

End Sub

Private Sub MaskedTextBox1_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles MaskedTextBox1.KeyPress

If e.KeyChar = Chr(13) Then

Button1_Click(Me, EventArgs.Empty)

TextBox1.Focus() 'função focus, move o cursor para o campo especificado

End If

End Sub

Private Sub MaskedTextBox2_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles MaskedTextBox2.KeyPress

If e.KeyChar = Chr(13) Then

Button1_Click(Me, EventArgs.Empty)

TextBox1.Focus() 'função focus, move o cursor para o campo especificado

End If

End Sub

Private Sub TextBox2_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox2.KeyPress

If e.KeyChar = Chr(13) Then

Button1_Click(Me, EventArgs.Empty)

TextBox1.Focus() 'função focus, move o cursor para o campo especificado

End If

End Sub

Private Sub CheckBox23_CheckedChanged(ByVal sender As System.Object, ByVal

e As System.EventArgs) Handles CheckBox23.CheckedChanged

Page 235: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

231

If CheckBox23.Checked = True Then

tacesso(0, 18) = 1 'atualizar produtos

Else

tacesso(0, 18) = 0

End If

End Sub

Private Sub CheckBox22_CheckedChanged(ByVal sender As System.Object, ByVal

e As System.EventArgs) Handles CheckBox22.CheckedChanged

If CheckBox22.Checked = True Then

tacesso(0, 19) = 1 'relatório

Else

tacesso(0, 19) = 0

End If

End Sub

Private Sub Acessos_KeyDown(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyEventArgs) Handles Me.KeyDown

If e.KeyCode = Keys.Escape Then

Button3.PerformClick()

End If

End Sub

End Class

„**********************************************************************

'PRODUTOS

'**********************************************************************

COSMETICOSDATASET1.VB

'

Partial Class cosmeticosDataSet1

End Class

„**********************************************************************

'REL_VENDAS

'**********************************************************************

REL_VENDAS.VB

Page 236: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

232

'

Partial Class lojacosmeticosDataSet

End Class

„**********************************************************************

'CRISTALREPORT1

'**********************************************************************

CRISTALREPORT1.VB

'

Option Strict Off

Option Explicit On

Imports CrystalDecisions.CrystalReports.Engine

Imports CrystalDecisions.ReportSource

Imports CrystalDecisions.Shared

Imports System

Imports System.ComponentModel

Public Class CrystalReport1

Inherits ReportClass

Public Sub New()

MyBase.New

End Sub

Public Overrides Property ResourceName() As String

Get

Return "CrystalReport1.rpt"

End Get

Set

'Do nothing

End Set

End Property

Public Overrides Property NewGenerator() As Boolean

Get

Page 237: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

233

Return true

End Get

Set

'Do nothing

End Set

End Property

Public Overrides Property FullResourceName() As String

Get

Return "Perfumaria___1._0_Beta_.CrystalReport1.rpt"

End Get

Set

'Do nothing

End Set

End Property

<Browsable(false), _

DesignerSerializationVisibilityAttri-

bute(System.ComponentModel.DesignerSerializationVisibility.Hidden)> _

Public ReadOnly Property Section1() As CrystalDeci-

sions.CrystalReports.Engine.Section

Get

Return Me.ReportDefinition.Sections(0)

End Get

End Property

<Browsable(false), _

DesignerSerializationVisibilityAttri-

bute(System.ComponentModel.DesignerSerializationVisibility.Hidden)> _

Public ReadOnly Property Section2() As CrystalDeci-

sions.CrystalReports.Engine.Section

Get

Return Me.ReportDefinition.Sections(1)

End Get

Page 238: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

234

End Property

<Browsable(false), _

DesignerSerializationVisibilityAttri-

bute(System.ComponentModel.DesignerSerializationVisibility.Hidden)> _

Public ReadOnly Property Section3() As CrystalDeci-

sions.CrystalReports.Engine.Section

Get

Return Me.ReportDefinition.Sections(2)

End Get

End Property

<Browsable(false), _

DesignerSerializationVisibilityAttri-

bute(System.ComponentModel.DesignerSerializationVisibility.Hidden)> _

Public ReadOnly Property Section4() As CrystalDeci-

sions.CrystalReports.Engine.Section

Get

Return Me.ReportDefinition.Sections(3)

End Get

End Property

<Browsable(false), _

DesignerSerializationVisibilityAttri-

bute(System.ComponentModel.DesignerSerializationVisibility.Hidden)> _

Public ReadOnly Property Section5() As CrystalDeci-

sions.CrystalReports.Engine.Section

Get

Return Me.ReportDefinition.Sections(4)

End Get

End Property

End Class

Page 239: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

235

<Sys-

tem.Drawing.ToolboxBitmapAttribute(GetType(CrystalDecisions.[Shared].ExportOptions),

"report.bmp")> _

Public Class CachedCrystalReport1

Inherits Component

Implements ICachedReport

Public Sub New()

MyBase.New

End Sub

<Browsable(false), _

DesignerSerializationVisibilityAttri-

bute(System.ComponentModel.DesignerSerializationVisibility.Hidden)> _

Public Overridable Property IsCacheable() As Boolean Implements CrystalDeci-

sions.ReportSource.ICachedReport.IsCacheable

Get

Return true

End Get

Set

'

End Set

End Property

<Browsable(false), _

DesignerSerializationVisibilityAttri-

bute(System.ComponentModel.DesignerSerializationVisibility.Hidden)> _

Public Overridable Property ShareDBLogonInfo() As Boolean Implements Crystal-

Decisions.ReportSource.ICachedReport.ShareDBLogonInfo

Get

Return false

End Get

Set

'

Page 240: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

236

End Set

End Property

<Browsable(false), _

DesignerSerializationVisibilityAttri-

bute(System.ComponentModel.DesignerSerializationVisibility.Hidden)> _

Public Overridable Property CacheTimeOut() As System.TimeSpan Implements

CrystalDecisions.ReportSource.ICachedReport.CacheTimeOut

Get

Return CachedReportConstants.DEFAULT_TIMEOUT

End Get

Set

'

End Set

End Property

Public Overridable Function CreateReport() As CrystalDeci-

sions.CrystalReports.Engine.ReportDocument Implements CrystalDeci-

sions.ReportSource.ICachedReport.CreateReport

Dim rpt As CrystalReport1 = New CrystalReport1()

rpt.Site = Me.Site

Return rpt

End Function

Public Overridable Function GetCustomizedCacheKey(ByVal request As Request-

Context) As String Implements CrystalDeci-

sions.ReportSource.ICachedReport.GetCustomizedCacheKey

Dim key As [String] = Nothing

'// The following is the code used to generate the default

'// cache key for caching report jobs in the ASP.NET Cache.

'// Feel free to modify this code to suit your needs.

'// Returning key == null causes the default cache key to

'// be generated.

'

Page 241: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

237

'key = RequestContext.BuildCompleteCacheKey(

' request,

' null, // sReportFilename

' this.GetType(),

' this.ShareDBLogonInfo );

Return key

End Function

End Class

„**********************************************************************

'CONFIGURACAO DE ACESSO AO BANCO

'**********************************************************************

CONFIGURACAO_ACESSO_BANCO.VB'

Public Class Configuracao_acesso_banco

'limpa os campos e move o curso para o primeiro campo

Private Sub limpar()

txt_usuarioPC.Clear()

txt_senha.Clear()

txt_usuario.Clear()

txt_usuarioPC.Focus()

End Sub

'desabilita os campos

Private Sub campos()

txt_senha.Enabled = False

txt_usuario.Enabled = False

txt_usuarioPC.Enabled = False

End Sub

'habilita os campos

Private Sub campos_habilitar()

txt_senha.Enabled = True

txt_usuario.Enabled = True

txt_usuarioPC.Enabled = True

End Sub

'desabilita botoes quando não há diretório

Page 242: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

238

Private Sub botoes()

btn_salvar.Enabled = True

btn_editar.Enabled = False

btn_abrir.Enabled = False

End Sub

'verificando se há diretório

Private Sub verifica_diretorio()

Try

Dim diretorio As New Sys-

tem.IO.DirectoryInfo("C:\Acesso_Banco\conectar\acesso")

If diretorio.Exists Then

campos() 'desabilita compos se houver diretório

btn_salvar.Enabled = False

btn_editar.Enabled = False

btn_abrir.Enabled = True

Else

campos_habilitar() 'habilitar campos se não houver diretório

botoes()

System.IO.Directory.CreateDirectory("C:\Acesso_Banco\conectar\acesso")

End If

Catch ex As Exception

MsgBox(ex.Message)

End Try

End Sub

Private Sub btn_salvar_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles btn_salvar.Click

Try

If txt_usuario.Text > " " And txt_senha.Text > " " And txt_usuarioPC.Text > " "

Then

If MsgBox("Deseja configurar esta conexão?", MsgBoxStyle.YesNo, "Confi-

guração de conexão") = vbYes Then

Dim arquivo As New I-

O.FileStream("C:\Acesso_Banco\conectar\acesso\acesso_banco.txt", I-

O.FileMode.OpenOrCreate, IO.FileAccess.ReadWrite, IO.FileShare.None)

Page 243: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

239

Dim sw As New IO.StreamWriter(arquivo)

sw.WriteLine(Label4.Text & " " & txt_usuarioPC.Text)

sw.WriteLine(Label3.Text & " " & txt_usuario.Text)

sw.WriteLine(Label2.Text & " " & txt_senha.Text)

sw.WriteLine("Provider=SQLOLEDB;Data Source=" &

Trim(txt_usuarioPC.Text) & "-PC\" & Trim(txt_usuario.Text) & ";Integrated Security=" &

Trim(txt_senha.Text) & ";Initial Catalog=lojacosmeticos")

sw.Close()

arquivo.Close()

limpar() 'método limpar

verifica_diretorio() 'Método para verificar se há diretório

Else

MsgBox("Configuração cancelada.", MsgBoxStyle.Exclamation, "Configu-

ração de conexão")

End If

Else

MsgBox("Campo nulo!", MsgBoxStyle.Critical, "Configuração de conexão")

txt_usuarioPC.Focus()

End If

Catch ex As Exception

MsgBox(ex.Message)

End Try

End Sub

Private Sub txt_usuarioPC_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles txt_usuarioPC.KeyPress

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

txt_usuario.Focus()

End If

End Sub

Private Sub txt_usuario_KeyPress1(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles txt_usuario.KeyPress

If e.KeyChar = Convert.ToChar(Keys.Return) Then

e.Handled = True

Page 244: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

240

txt_senha.Focus()

End If

End Sub

Private Sub txt_senha_KeyPress1(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles txt_senha.KeyPress

If e.KeyChar = Chr(13) Then

btn_salvar_Click(Me, EventArgs.Empty)

txt_usuarioPC.Focus() 'função focus, move o cursor para o campo especificado

End If

End Sub

Private Sub btn_abrir_Click_1(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles btn_abrir.Click

Try

Dim diretorio As New Sys-

tem.IO.DirectoryInfo("C:\Acesso_Banco\conectar\acesso")

If diretorio.Exists Then

If (Sys-

tem.IO.File.Exists("C:\Acesso_Banco\conectar\acesso\acesso_banco.txt") <> True) Then

MsgBox("Arquivo não encontrado. Configure a conexão!", MsgBoxSt-

yle.Critical, "Configuração de conexão")

campos_habilitar()

botoes()

txt_usuarioPC.Focus()

Else

Dim filereader As New I-

O.StreamReader("C:\Acesso_Banco\conectar\acesso\acesso_banco.txt")

Dim arquivo_banco, linha As String

Dim cont As Integer

While (filereader.Peek > -1)

linha = filereader.ReadLine

'condição para ler as linhas do arquivo de acesso ao banco

If cont = 0 Then 'linha 1

arquivo_banco = linha

txt_usuarioPC.Text = arquivo_banco.Substring(12)

Page 245: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

241

End If

If cont = 1 Then 'linha 2

arquivo_banco = linha

txt_usuario.Text = arquivo_banco.Substring(14)

End If

If cont = 2 Then 'linha 3

arquivo_banco = linha

txt_senha.Text = arquivo_banco.Substring(12)

End If

cont += 1

End While

filereader.Close()

txt_usuarioPC.Focus()

btn_editar.Enabled = True

End If

Else

MsgBox("Diretório não encontrado.", MsgBoxStyle.Exclamation, "Configu-

ração de conexão")

campos_habilitar()

botoes()

txt_usuarioPC.Focus()

End If

Catch ex As Exception

MsgBox(ex.Message)

End Try

End Sub

Private Sub btn_sair_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles btn_sair.Click

If MsgBox("Deseja encerrar a configuração?", MsgBoxStyle.YesNo, "Configura-

ção de conexão") = vbYes Then

Me.Close()

End If

End Sub

Page 246: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

242

Private Sub Configuracao_acesso_banco_Load(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles MyBase.Load

verifica_diretorio() 'verifica se existe o dirétório

End Sub

Private Sub btn_editar_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles btn_editar.Click

If btn_editar.Text = "Editar" Then

'condição para a edição dos dados da conexão.

If txt_senha.Text > " " And txt_usuario.Text > " " And txt_usuarioPC.Text > " "

Then 'os campos devem estar preenchidos para a edição. Usuário deve abrir o arquivo

btn_editar.Text = "Cancelar"

btn_salvar.Enabled = True

campos_habilitar()

Else

MsgBox("Campos inválido para edição.", MsgBoxStyle.Critical, "Configura-

ção de conexão")

End If

'Condição para o botão quando ele estiver com cancelar

ElseIf btn_editar.Text = "Cancelar" Then

btn_editar.Text = "Editar"

campos()

limpar()

btn_editar.Enabled = False

btn_salvar.Enabled = False

End If

txt_usuarioPC.Focus()

End Sub

End Class

4.3.2 Código de controle de vendas

**********************************************************************

‟MODULE

Page 247: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

243

'**********************************************************************

MODULE.VB

'

Module Module1

Public vlr_total As Double

Public cmd As OleDb.OleDbCommand

Public con As OleDb.OleDbConnection

Public reader As OleDb.OleDbDataReader

Public Sub conectar()

con = New OleDb.OleDbConnection 'instanciando a variavel con (conexão)

cmd = New OleDb.OleDbCommand 'instacinando a variavel cmd (comandos)

con.ConnectionString = "Provider=SQLOLEDB;Data Source=ADEILDO-

PC\ADEILDO;Integrated Security=SSPI;Initial Catalog=lojacosmeticos"

End Sub

Public quant As Integer

Public cont As Integer = 0

Public produto As String

Public mostrar As String

Public cod_venda As Integer

Public items_venda As Integer

Public local As String

Public indice As Integer

Public vlr_item As Double

Public usuario As String

Public cod_login As Integer

Public cod_usuario As Integer

'função para manipulação de números na textbox. Esta função habilita apenas núme-

ros.

Function SoNumeros(ByVal Keyascii As Short) As Short

If InStr("1234567890", Chr(Keyascii)) = 0 Then 'condição para definir o que será

aceito. 0 significa número

SoNumeros = 0

Else

Page 248: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

244

SoNumeros = Keyascii

End If

Select Case Keyascii

Case 8

SoNumeros = Keyascii '8 bits

Case 13

SoNumeros = Keyascii '13 bits

Case 32

SoNumeros = Keyascii '32 bits

Case 64

SoNumeros = Keyascii '64 bist

End Select

End Function

'função para manipulação de números na textbox. Está função Habilita números e

vírgula. Forma decimal.

Function Sodecimal(ByVal Keyascii As Short) As Short

If InStr("1234567890,", Chr(Keyascii)) = 0 Then 'condição para definir o que será

aceito. 0 significa número

Sodecimal = 0

Else

Sodecimal = Keyascii

End If

Select Case Keyascii

Case 8

Sodecimal = Keyascii '8 bits

Case 13

Sodecimal = Keyascii '13 bits

Case 32

Sodecimal = Keyascii '32 bits

Case 64

Sodecimal = Keyascii '64 bits

End Select

End Function

End Module

Page 249: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

245

„**********************************************************************

'CONSULTAR PRODUTOS

'**********************************************************************

CONSULTAR_PRODUTOS.VB

'

Public Class Consultar_Produto

Private Sub TextBox3_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox3.KeyPress

Dim cod_askii As Short = CShort(Asc(e.KeyChar))

cod_askii = CShort(Sodecimal(cod_askii)) 'função para desabilitar texto na textbox

'condição para habilitar os números. zero número, 1 texto..

If cod_askii = 0 Then

e.Handled = True

End If

'condição para desabilitar a barra de espaço na textbox (valor unitário)

If cod_askii = 32 Then

e.Handled = True

End If

'condição para limitar a vírgula. Só é aceito uma vírgula no campo valor do produ-

to.

If Not Char.IsNumber(e.KeyChar) And Not e.KeyChar = vbBack And Not

e.KeyChar = "," Then e.Handled = True

If e.KeyChar = "," And (InStr(TextBox3.Text, ",")) > 0 Then e.Handled = True

End Sub

Private Sub TextBox3_TextChanged(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles TextBox3.TextChanged

'Dim valor1 As Single

'If TextBox3.Text <> "" Then

' valor1 = TextBox3.Text

' TextBox3.Text = Format(valor1, "0.#0; $#.#0")

' End If

End Sub

Page 250: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

246

Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress

Dim KeyAscii As Short = CShort(Asc(e.KeyChar))

KeyAscii = CShort(SoNumeros(KeyAscii)) 'função para desabilitar texto na text-

box

'condição para habilitar os números. zero número, 1 texto.

If KeyAscii = 0 Then

e.Handled = True

End If

'condição para desabilitar a barra de espaço na textbox (código de barras do produ-

to)

If KeyAscii = 32 Then

e.Handled = True

End If

If e.KeyChar = Chr(13) Then

Button1.PerformClick()

End If

End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button1.Click

'Buscar informações do Produto pelo Cod. de Barras

Try

conectar()

con.Open()

cmd = con.CreateCommand

cmd.CommandType = CommandType.Text

If TextBox1.Text > " " Then

cmd.CommandText = "SELECT * FROM produtos WHERE cod_barras = '"

& Trim(TextBox1.Text) & "'"

ElseIf TextBox2.Text > " " Then

cmd.CommandText = "SELECT * FROM produtos WHERE nome_produto =

'" & Trim(TextBox2.Text) & "'"

End If

reader = cmd.ExecuteReader()

Page 251: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

247

reader.Read()

TextBox1.Text = Trim(reader("cod_barras"))

TextBox3.Text = reader("vlr_unitario")

TextBox2.Text = reader("nome_produto")

TextBox4.Text = reader("qtde_produto")

con.Close()

Catch ex As Exception

MsgBox("Produto não encontrado. Verifique o codigo de barras.", MsgBoxSt-

yle.Information, "Falha na conexão")

End Try

End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button3.Click

TextBox1.Text = ""

TextBox2.Text = ""

TextBox3.Text = ""

TextBox4.Text = ""

End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button2.Click

Me.Close()

End Sub

Private Sub Consultar_Produto_Load(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles MyBase.Load

TextBox1.Focus()

End Sub

Private Sub TextBox4_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox4.KeyPress

Dim KeyAscii As Short = CShort(Asc(e.KeyChar))

KeyAscii = CShort(SoNumeros(KeyAscii)) 'função para desabilitar texto na text-

box

'condição para habilitar os números. zero número, 1 texto.

If KeyAscii = 0 Then

e.Handled = True

Page 252: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

248

End If

'condição para desabilitar a barra de espaço na textbox (código de barras do produ-

to)

If KeyAscii = 32 Then

e.Handled = True

End If

End Sub

End Class

„**********************************************************************

'TELA DE SUPORTE

'**********************************************************************

SUPORTE.VB

'

Imports System.Net.Mail

Public Class Suporte

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button1.Click

ProgressBar1.Maximum = 6 'Máximo de operações (que pode ser variável)

ProgressBar1.Value = 0

'cria objeto com dados do e-mail

Dim smtpServer As New SmtpClient()

ProgressBar1.Value = ProgressBar1.Value + 1

Dim mail As New MailMessage

smtpServer.Credentials = New Net.NetworkCredential("[email protected]",

"etec@etec")

ProgressBar1.Value = ProgressBar1.Value + 1

smtpServer.Port = 25

smtpServer.Host = "smtp.live.com"

ProgressBar1.Value = ProgressBar1.Value + 1

smtpServer.EnableSsl = True

mail.From = New MailAddress("[email protected]")

ProgressBar1.Value = ProgressBar1.Value + 1

mail.To.Add("[email protected]")

Page 253: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

249

ProgressBar1.Value = ProgressBar1.Value + 1

mail.Subject = TextBox4.Text

mail.Body = TextBox2.Text & Chr(13) & TextBox3.Text & Chr(13) & Text-

Box1.Text

Try

smtpServer.Send(mail)

ProgressBar1.Value = ProgressBar1.Value + 1

MsgBox("Mensagem enviada com sucesso!", MsgBoxStyle.OkOnly, "Report")

TextBox1.Text = ""

TextBox2.Text = ""

TextBox3.Text = ""

TextBox4.Text = ""

ProgressBar1.Value = 0

Catch ex As Exception

MsgBox(ex.Message())

End Try

End Sub

Private Sub Button2_Click(sender As System.Object, e As System.EventArgs) Han-

dles Button2.Click

Tela_de_venda.Show()

Me.Close()

End Sub

End Class

„**********************************************************************

*****LOJACOSMETICOSDATASET

'**********************************************************************

LOJACOSMETICOSDATASET.VB

'

Partial Class lojacosmeticosDataSet

End Class

„**********************************************************************

'LOGIN - PONTO DE VENDAS

Page 254: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

250

'**********************************************************************

LOGIN1.VB

'

Public Class Login

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button1.Click

If TextBox2.Text = "" Then

Label3.Visible = True

ElseIf MaskedTextBox1.Text = "" Then

Label4.Visible = True

ElseIf TextBox2.Text <> "" And MaskedTextBox1.Text <> "" Then

Dim senha As String

Try

conectar()

con.Open()

cmd = con.CreateCommand

cmd.CommandType = System.Data.CommandType.Text

cmd.CommandText = "SELECT * FROM login WHERE nome_login = ?"

cmd.Parameters.Add("login", OleDb.OleDbType.VarChar)

cmd.Parameters("login").Value = TextBox2.Text

reader = cmd.ExecuteReader()

reader.Read()

senha = reader("senha")

cod_login = reader("cod_login")

con.Close()

If senha = MaskedTextBox1.Text Then

conectar()

con.Open()

cmd = con.CreateCommand

cmd.CommandType = CommandType.Text

cmd.CommandText = "SELECT * FROM usuario WHERE cod_login = ?"

cmd.Parameters.Add("@login", OleDb.OleDbType.VarChar)

cmd.Parameters("@login").Value = cod_login

Page 255: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

251

reader = cmd.ExecuteReader()

reader.Read()

cod_usuario = reader("cod_usuario")

con.Close()

usuario = TextBox2.Text

Tela_de_venda.Show()

Me.Hide()

Else

MsgBox("Senha Incorreta", vbCritical, "Erro")

MaskedTextBox1.Text = ""

End If

Catch ex As Exception

MsgBox("Usuário Não Cadastrado", vbCritical, "Erro")

TextBox2.Text = ""

MaskedTextBox1.Text = ""

End Try

End If

End Sub

Private Sub TextBox2_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox2.KeyPress

If e.KeyChar = Chr(13) Then

Button1.PerformClick()

End If

End Sub

Private Sub TextBox2_TextChanged(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles TextBox2.TextChanged

Label3.Visible = False

End Sub

Private Sub MaskedTextBox1_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles MaskedTextBox1.KeyPress

If e.KeyChar = Chr(13) Then

Button1.PerformClick()

End If

End Sub

Page 256: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

252

Private Sub MaskedTextBox1_MaskInputRejected(ByVal sender As System.Object,

ByVal e As System.Windows.Forms.MaskInputRejectedEventArgs) Handles MaskedText-

Box1.MaskInputRejected

End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button2.Click

Dim result As MsgBoxResult

result = MsgBox("Deseja realmente sair ?", MsgBoxStyle.YesNo, "Confirmação")

If result = MsgBoxResult.Yes Then

Application.Exit()

End If

End Sub

Private Sub MaskedTextBox1_TextChanged(ByVal sender As Object, ByVal e As

System.EventArgs) Handles MaskedTextBox1.TextChanged

Label4.Visible = False

End Sub

Private Sub PictureBox2_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles PictureBox2.Click

End Sub

End Class

„**********************************************************************

'TELA DE DESCONTO

'**********************************************************************

DESCONTO.VB

'

Public Class desconto

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button1.Click

Try

Tela_de_venda.txt_valor_total_venda.Text = Vlr_total_venda.Text

vlr_total = Vlr_total_venda.Text

Me.Close()

Catch ex As Exception

Page 257: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

253

MsgBox("Campo nulo!", vbCritical)

End Try

End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button3.Click

Me.Close()

End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As Sys-

tem.EventArgs) Handles Button2.Click

Try

Dim porcentagem As Double

Dim total As Double

porcentagem = CDbl(TextBox1.Text)

porcentagem = porcentagem / 100

total = CDbl(Vlr_total_venda.Text)

total = total - (total * porcentagem)

Vlr_total_venda.Text = total

Catch ex As Exception

MsgBox(ex.Message & vbCrLf & "Verifique os campos!", vbCritical + Msg-

BoxStyle.Critical, "Erro")

End Try

End Sub

Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress

Dim cod_askii As Short = CShort(Asc(e.KeyChar))

cod_askii = CShort(Sodecimal(cod_askii)) 'função para desabilitar texto na textbox

'condição para habilitar os números. zero número, 1 texto..

If cod_askii = 0 Then

e.Handled = True

End If

'condição para desabilitar a barra de espaço na textbox (valor unitário)

If cod_askii = 32 Then

e.Handled = True

End If

Page 258: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

254

'condição para limitar a vírgula. Só é aceito uma vírgula no campo valor do produ-

to.

If Not Char.IsNumber(e.KeyChar) And Not e.KeyChar = vbBack And Not

e.KeyChar = "," Then e.Handled = True

If e.KeyChar = "," And (InStr(TextBox1.Text, ",")) > 0 Then e.Handled = True

If e.KeyChar = Chr(13) Then

Button2.PerformClick()

End If

End Sub

Private Sub Vlr_total_venda_KeyPress(ByVal sender As Object, ByVal e As Sys-

tem.Windows.Forms.KeyPressEventArgs) Handles Vlr_total_venda.KeyPress

Dim cod_askii As Short = CShort(Asc(e.KeyChar))

cod_askii = CShort(Sodecimal(cod_askii)) 'função para desabilitar texto na textbox

'condição para habilitar os números. zero número, 1 texto..

If cod_askii = 0 Then

e.Handled = True

End If

'condição para desabilitar a barra de espaço na textbox (valor unitário)

If cod_askii = 32 Then

e.Handled = True

End If

'condição para limitar a vírgula. Só é aceito uma vírgula no campo valor do produ-

to.

If Not Char.IsNumber(e.KeyChar) And Not e.KeyChar = vbBack And Not

e.KeyChar = "," Then e.Handled = True

If e.KeyChar = "," And (InStr(Vlr_total_venda.Text, ",")) > 0 Then e.Handled =

True

End Sub

End Class‟

Page 259: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

255

CAPÍTULO V – Requisitos mínimos

Para o SISVE( Sistema de Controle de venda e Estoque) funcionar de forma eficiente re-

comenda-se os seguintes requisitos mínimos:

Sistema Operacional Microsoft Windows XP ou superior;

Processador Intel Pentium IV de 2,33 GHz, AMD Athlon 64 2800 ou superior;

Memória Ram: 512 megabytes DDR-I ou superior;

Espaço livre no disco rígido de 3 gigabytes;

Monitor com resolução esperada 1366 x 768 pixels;

Microsoft SQL Server versão 2008;

Adobe Acrobat Reader versão 5.05 ou superior;

Navegador Internet Explorer 6.0 ou superior.

Page 260: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

256

CAPÍTULO VI – Site do projeto

Houve a necessidade de possuir uma página na Internet com o objetivo de manter a do-

cumentação de ajuda SISVE sempre atualizada.

Além disto, essa página serve como forma de promover a divulgação do produto e para

fins educativos, pois toda a documentação de elaboração e desenvolvimento do projeto, como

o diário de bordo, diagramas, fotografias da empresa e código fonte estão disponíveis para

todos.

Há também uma apresentação da Escola Técnica Estadual “Irmã Agostina” com os cur-

sos oferecidos e sua localização.

O endereço na internet é http://sisve.host.sk.

Figura 6.1 – Página inicial do SISVE na internet

Page 261: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

257

CONCLUSÃO

É de extrema importância todas as empresas, desde as pequenas até as grandes, investi-

rem na sua informatização.

Quando instalado o software na "Perfumaria da Praça”, o problema da loja relacionado

ao controle de estoque e vendas, através de banco de dados, terá sido solucionado.

Pela criação e implantação do software “SISVE - Controle de Vendas e Estoque”, a loja

passará a ter uma maior rapidez no seu processo de venda e eficiência na administração do

estoque.

Este trabalho trouxe muito aprendizado para a equipe, dentre os quais a necessidade do

planejamento, da divisão de tarefa, da colaboração mútua, de conhecer profundamente os an-

seios do cliente, buscar sempre a excelência na qualidade em toda a fase do desenvolvimento

do projeto e união, pois só assim é uma equipe e não tão somente um grupo de pessoas.

Page 262: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

258

REFERÊNCIAS BIBLIOGRÁFICAS

MEIRELLES, F. S. 22ª Pesquisa Anual do Uso de TI. Artigo, Fundação Getúlio Vargas.

2011. 15 p.

SEBRAE-SC. Informatizar MPEs garante competitividade e produtividade nos negócios.

Disponível em: <http://www.sebrae-sc.com.br/newart/default.asp?materia=20279>. Acesso

em: 02 nov. 2011.

SILVA, João Carlos Lima. Manual de Elaboração de Relatório do TCC. 2011.

HALVORSON, Michael. Microsoft Visual Basic 2010 Passo a Passo. Porto Alegre: Editora

Bookman. 2011.

MACORATTI, José Carlos. Gerenciando os eventos de teclado no VB.NET. Disponível

em: <http://www.macoratti.net/vbn_keyp.htm>. Acesso em: 13 fev.. 2012.

VASCONCELOS, Laércio. Hardware na Prática – Construindo e Configurando Micros

de 32 e 64 Bits Single Core, Dual Core e Quad Core. Rio de Janeiro. Editora Laércio Vas-

concelos Computação. 2009.

JONAZ. Press Enter in Textbox to Trigger Click Event. Disponível em:

<http://www.a1vbcode.com/snippet-4148.asp>. Acesso em: 08 mar. 2012.

VBMANIA. Teclas de atalho no VB. Disponível em:

<http://www.vbmania.com.br/pages/index.php?varModulo=Forum&varMethod=abrir&varID

=341797>. Acesso em: 15 mar. 2012.

______. Trocar vírgula por ponto no VB. Disponível em:

<http://www.vbmania.com.br/pages/index.php?varModulo=Forum&varMethod=abrir&varID

=186981>. Acesso em: 22 fev. 2012.

BAIXAKI. Busca. Disponível em:

Page 263: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

259

<http://www.baixaki.com.br/busca.asp?q=%93pdv%94+%93estoque%94&go=&ord=4>.

Acesso em 10 abr. 2012.

TECMUNDO. Sobre o Baixaki. Disponível em:

<http://www.tecmundo.com.br/institucional/284-sobre-o-baixaki.htm>. Acesso em 10 abr.

2012.

TAGSOFT. Conheça o TagComércio. Disponível em: <http://www.tagsoft.com.br> Acesso

em: 15 abril. 2012.

SYSTRONIC. Apresentação do Systronic Office Comercial. Disponível em:

<http://www.systronic.com.br/portal/index.php/apresentacao/60-systronic-office-

comercial.html> Acesso em: 15 abr. 2012.

GIOVANE, Informática. Apresentação do SisAdvenPDV. Disponível em:

<http://www.giovaneinformatica.com.br/detalhe-sgi.htm> Acesso em: 15 abr. 2012.

NOVAVIA. Apresentação. Disponível em:

<http://www.novavia.com.br/sistemas/site2/produto.aspx?cod_prod=1> Acesso em: 15 abr.

2012.

VVS, Sistemas. Folder de produtos. Disponível em:

<http://www.vvssistemas.com.br/arquivos/marketing/FolderProdutos.zip>Acesso em: 15 abr.

2012. p. 2.

MICROSOFT. Microsoft® SQL Server® 2008 Express. Disponível em:

<http://www.microsoft.com/downloads/details.aspx?FamilyID=58ce885d-508b-45c8-9fd3-

118edd8e6fff&displaylang=pt-br>. Acesso em: 19 mai. 2012.

SILBERSCHATZ, Abraham; KORTH, Henry F; SUDARSHAN, S. Sistema de banco de

dados. Traduzido por Daniel Vieira. Rio de Janeiro: Elsevier;Campus, 2006.

BOOCH, Grady; RUMBAUGH, James; JACOBSON; Ivar. UML: Guia do Usuário. Rio de

Janeiro: Editora Campus, 2000.

Page 264: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

260

APÊNDICE A – Questionário aplicado ao Sr. Valdinei Cruz de lima (1ª parte)

Page 265: CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA …etecia.com.br/portaletecia/wp-content/uploads/2012/08/Sisve.pdf · Pesquisa mostra que os gastos investidos em tecnologia da informação

261

APÊNDICE B – Questionário aplicado ao Sr. Valdinei Cruz de lima (2ª parte)