• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

cristpate

desenho de uma base de dados

11 mensagens neste tópico

Ola a todos,

eu tenho um impasse pequeno mas que esta a se tornar grande.

quero construir um sitema que necessitara de tabelas .

o sistema e o seguinte:

registar pedidos feitos por clientes - ja tenho uma tabela para esses pedidos

cada pedido feito e atendido por um tecnico especifico - ja tenho uma tabela para o tecnico

o meu impasse e que quero predefinir numa tabela,  que tecnico e que faz o que, mas o que acontece e que ha casos em um tecnico atende varios pedidos, como posso ter isso registado em uma tabela?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Se a tua tabela de pedidos tiver o ID do técnico que atendeu o pedido então isso é suficiente.

Se tiveres casos em que mais de um técnico atendeu um mesmo pedido, tens de ter uma tabela de ligação entre os técnicos e os pedidos, tipicamente com o ID do técnico, o ID do pedido.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

entendi, uma terceira tabela que ligara o tecnico e os pedidos mas como haveria de fazer esse registo

digamos que tenha se feito um pedido e 2 tecnicos responderam, que campos alem das duas chaves primarias eu teria de ter para colmatar esses casos?

teria de fazer por exemplo:

pedido X atendido por tecnico 1

pedido X atendido por tecnico 2

com estas repeticoes? estaria certo?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não necessitas de mais campos. Com os IDs fazes as ligações aos técnicos e ao pedidos.

A tabela terá exactamente a informação que tens na tua descrição, haverá uma linha com o ID do pedido será X e o ID do técnico será 1 e outra linha onde o ID do pedido será X e o ID do técnico será 2.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

ok entendi bro, mas o que acontece e que eu quero predefinir os quem faz os servicos

quando o cliente fizer o pedido as definicoes ja estarao na tabela,  resolucoes de pedidos ja definidos

que o tecnico X atende pedido Y

tecnico W atende pedido Z OU Y

e por isso que estou a dizer que seriam necessarios mais campos para predefinir essa situacao

nao e bro?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Tens que ter na tabela pedidos mais ou menos assim:

Tabela pedidos

Id do cliente

Id do Técnico

Tipo ou descrição da avaria

Data

Hora

Basicamente a tua tabela ficaria neste formato.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

O que queres não é pedidos pré-definidos que são atendidos por um determinado técnico mas sim tipos de pedidos que são atendidos por um determinado técnico.

Quando chega um pedido, seleccionas de que tipo é e então esse pedido é atribuído ao técnico responsável por esse tipo de pedido.

A tabela de tipos de pedido é idêntica à dos pedidos que referi atrás, com uma ligeira diferença, em vez de teres o ID dos pedidos tens o ID dos tipos de pedidos, que aponta para a tabela dos tipos de pedido.

Isto permite que tenhas n técnicos responsáveis por um determinado tipo de pedido e que um pedido possa ser atendido por mais de um técnico.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

vbtipo, essa solução não está normalizada no caso de teres n:n, como é o caso aqui descrito.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

boy eu vou tentar te explicar o que mais ou menos eu to a fazer.

eu tenho uma base de dados para um sistema de gestao de pedidos.

tenho uma tabela para tecnicos que atendem os pedidos uma para os clientes que fazem os pedidos e uma para os pedidos que sao feitos, o que eu quero e predefinir quem resolve cada pedido feito sendo encaminhado para o tecnico que estiver definido na base de dados caso seja solicitado esse pedido pelo cliente, e so isso predefinir quem faz o que

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

boas,

Tabela Clientes:

Id

campo x

campo y

...

Tabela Tecnicos:

Id

campo x

campo y

...

Tabela Pedidos:

Id_pedido

Id_cliente  (Todos os pedidos têm um cliente, certo? )

campo x

campo y

...

Para resolveres o problema:

Tabela PedidosTecnico:

Id_pedido

Id_tecnico

... (podes acrescentar mais campos que julgues serem necessários, como por exemplo a data em que o técnico "pegou" no pedido, ou um campo com observações do técnico.....

Espero que assim te ajude.

cumps,

Nuno Ruivo

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora