SISTEMA DE VENDAS

ADILSOO 13/04/2012 22:05:15
#399840
Gente, estou com duvidas em um sistema de vendas que estou começando, bom, queria saber assim, quais tabelas tem que criar?, eu estava tentando mas to só quebrando a cara, hehe, exemplo, certamente teria que ter uma [txt-color=#0000f0]tabvendas[/txt-color]? os campos seriam, [txt-color=#0000f0]codvenda, codcliente, codproduto, quantidade, unit, total[/txt-color], o básico, mas eu tava pensando, como ficaria o [txt-color=#0000f0]codvenda[/txt-color]? sendo que se irá se repetir a cada iten, em uma compra com mais de um item já nao daria certo, se eu mesmo mandar gravar o codvenda repetido poderia até da certo, mas o problema ficaria trabalhando em rede, bom é isso aí galera, se alguem puder me ajudar na lógica, só isso, sem códigos... até mais, um abraço...
SAMUKA 13/04/2012 22:50:29
#399843
ADILSOO, essa duvida que vc está é relacionado a teoria dos banco de dados relacionais e suas 3 Formas.

Leia um pouco de teoria, é sempre bom: http://pt.wikipedia.org/wiki/Banco_de_dados_relacional

Só pra dar um ponta pé inicial: é necessário 2 tabelas (no mínimo) pra armazenar as vendas: tbVenda e tbVendaItens

Sendo que na primeira vc guarda os dados principais e na segunda os itens da Venda. Sendo que ambas tabelas são relacionadas pelo campo CodVenda.
MACYSZYN 13/04/2012 23:07:31
#399844
ADILSOO o meu colega SAMUKA disse tudo, é isso mesmo, relacionamento entre tabelas.
OMAR2011 14/04/2012 00:00:02
#399847
Adilsoo,anexei um arquivo para você estudar.
Este exemplo pela sua mensagem acredito que
vai servir.Já enviei para alguns.
Verifique.
Omar
SAMUKA 14/04/2012 01:18:19
#399848
OMAR2011, me desculpe pela crítica, mas seu exemplo não faz uso das melhores tecnicas do Banco Relacional. Aconselho a dar uma olhada naquele link que passei acima.

A sua tabela tblPedidos repete o campo data, pra todos os itens do pedido, e essa não é a forma correta de se trabalhar. O relacionamento entre tabelas existe pra evitar repetições de dados. Imagine se o pedido tivesse 30 itens, a tabela teria a informação data repetida 30 vezes (só pra citar o campo existente). Num projeto com poucos campos, pode parecer um problema insignificante, mas num exemplo real essa tabela pode conter muitos campos e os mesmos estarão repetidos para cada item do pedido.

OMAR2011 14/04/2012 07:35:00
#399849
Velho SAMUKA, a questão é de dar uma uma idéia de como
fazer.Aflorar o raciocínio da pessoa.Se não forçar a pessoa a
raciocínar ela vai ficar com a verdadeira preguiça mental.Lembro
muito bem de um dos participantes do Forum quando fiz uma
pergunta e ele me respondeu.Não vou te dar o PEIXE,mas vou
ensinar você a pescar.Nunca esqueci desse detalhe.
Toda crítica construtiva é boa.Pode ter certeza que não vou
ficar chateado por causa do seu comentário.Vou ler.
Valeu.
Omar.
ROMERO.KCOAL 14/04/2012 09:41:49
#399852
Ola... tive de criar minhas proprias ideias de como fazer uma tabela de venda... e como nosso colega disse.. se vc nao entender de relacionamento de nada vai adiantar continuar programando, pois a programação exige estes esforços...

vou dar uma noção de como um relacionamento deste funciona...

Tabela_cliente (logo explico porque)
Tebela_produtos
Tabela_Venda
Tabela_Liga_venda_produto

na tabela procuto vc vai ter os seus produtos
na tabela cliente vc vai ter os seus clientes

pois bem aqui o trabalho fica divertido...
vc vai fazer uma venda... vc registra a venda que vai ter um ID único as sim como a tabela produtos e a cliente, na tabela liga venda vc tem 2 campos que liga o código único da tabela venda com a tabela produto, este relacionamento também é conhecido como relacionamento vários para vários, onde vc tem varias vendas pra vários produtos, vc tem na tabela um campo que liga a tabela venda com um cliente, isso se vc fez a venda pra um cliente, se não fez ela pode ficar nula.

desta forma quando vc carrega a tabela venda, consegue saber quem foi o cliente que fez a compra, carregando a Tabela_Liga_venda_produto pelo ID da tabela venda vc consegue saber qual foram os produtos vendido para esta venda..

Deu de entender.. ou precisa desenha?

Divirta-se
ADILSOO 14/04/2012 10:00:56
#399853
em vez de criar tantas tabelas não seria melhor criar uma consulta então e fazer o relacionamento entre elas?, assim a cada dado inserido a consulta será atualizada e jogará os dados na tela...
ROMERO.KCOAL 14/04/2012 10:24:52
#399854
nao sei no seu caso.. mas o vb nao aceita editar uma tabela relacionada se vc usar um recordset, a menos que use uma grid pois ela cuida do relacionamento pra vc), no meu caso eu uso recordset independentes e assim tenho controle total do que esta sendo inserido em uma tabela ou o que esta sendo lido... ficando por minha conta os relacionamentos evitando assim informações erradas em um relacionamento mau feito. mas no caso de exibir.. isso sem problema...

no caso de inserir vc precisa mesmo de recordset separado.. pois como vai fazer a inserção de uma tabela relacionada de vários pra vários em uma consulta? acho impossivel... use o modelo que passei que da certinho
ADILSOO 16/04/2012 16:42:40
#399985
Na hora de gravar uma venda, terei que gravar na tabitens os itens da compra repetindo o codigo da venda certo? e em outra o codigo da venda e o codigo do cliente? aí eu relaciono elas e consigo saber qual venda foi de qual, estou certo?
SAMUKA 16/04/2012 17:52:13
#399992
ADILSOO, é isso aí!

Internamente o banco de dados cria consistencia nos dados através dos relacionamentos.
Página 1 de 3 [27 registro(s)]
Tópico encerrado , respostas não são mais permitidas