[firebase-br] RES: Dúvida com tabelas

José Otávio Lussari tavinhol em gmail.com
Qui Maio 19 10:05:44 -03 2011


Olá Eduardo, obrigado pela explicação e ótima por sinal :)
Então, acontece que não teremos controle de produção para as O.S's. Tenho
que controlar item a item até que complete a ordem de serviço! Depois que a
Ordem de Serviço estiver completa, vou controlar os estágios por O.S e não
por Itens da O.S. Por exemplo: em usinagem, montagem/Teste, Inspeção
Externa, etc... ou seja, esses status será para a Ordem de Serviço completa.
Por isso que segui a lógica que passei pra vc... Mesmo assim vc acha que não
esta legal? obrigado pela atenção!

atenciosamente,

[ ]’s
José Otávio Lussari
Analista de Sistemas
Bel. em Sistemas de Informação

> -----Mensagem original-----
> De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br]
Em
> nome de Eduardo Jedliczka
> Enviada em: quinta-feira, 19 de maio de 2011 09:46
> Para: FireBase
> Assunto: Re: [firebase-br] Dúvida com tabelas
> 
> Acho que sua lógica está um pouco equivocada.
> 
> Existem muitas formas diferentes para se resolver isto.
> 
> Hipotéticamente, uma matéria-prima pode ser transformada em "um ou
> mais" produtos acabados e/ou insumos. E um produto/insumo pode
> consumir "uma ou mais" matéria-prima". Ok talvez este não seja o caso
> atual, mas vai por mim, uma hora ou outra vai surgir esta necessidade.
> 
> Então eu criaria:
> 
> - tabela produto (e um campo tipo para saber se é materia-prima,
> insumo, produto acabado, etc)
> 
> - tabela producao-mestre (código do produto acabado, quantidade do
> produto acabado produzida, e algum controle seja do prazo de produção,
> ou necessidade de agendar algum equipamento)
> - tabela producao-detalhe (codigo da produto, código da materia-prima,
> quantidade a ser consumida)
> 
> - tabela OS-mestre (vendedor, data da os, cliente, etc.
> - tabela OS-detalhe (codigo do produto, quantidade, etc).
> 
> - tabela ordem-producao (cod os, cod produto, quantidade)
> 
> - tabela compras (cod produto, quantidade, *opcional* cod ordem producao)
> 
> Imaginando que eu tenha um pedido de 10 peças, mas só tenho 3 em
> estoque, e só tenho matéria prima para produzir mais 4 peças.
> 
> com esta estrutura, seria necessário três passos:
> 
> 1º) De posse da OS, select na tabela produto para encontrar produtos
> já fabricados.
> 
> 2º) como falta peças, é preciso gerar um pedido de producao da
> diferença. A partir dela, select na matéria prima para saber as
> quantidade necessárias para fabricação.
> 
> 3º) ao constatar a falta de estoque para fabricação, gerar uma
> requisição de compra.
> 
> Claro que todos estes passos (e respectivas tabelas) precisam ter um
> "controle de estado" ou seja, se estão "em andamento, aguardando
> aprovação, aguardando material, etc..)
> 
> ==========================
> Eduardo Jedliczka
> Apucarana - Pr
> ==========================
> 
> 
> 
> 
> Em 19 de maio de 2011 09:22, José Otávio Lussari <tavinhol em gmail.com>
> escreveu:
> > Pessoal, bom dia! Vamos ver se alguém consegue me ajudar, ou melhor,
vamos
> > ver se eu consigo passar pra vcs minha duvida =)
> >
> > Tenho uma tabela de Itens da Ordem de serviço, onde cada item pode ter
se
> > transformar em “um” produto acabado. Então eu informo a peça bruta que a
> > Ordem de Serviço necessita e tbem preciso informar a peça acabada que
essa
> > peça bruta irá se transformar. Como cada item pode se transformar em
apenas
> > uma peça bruta, eu fiz o seguinte:
> >
> >
> >
> > CREATE TABLE "ITEM_OSEV"
> >
> > (
> >
> >  "ID"    INTEGER NOT NULL,
> >
> >  "COD_OS"     INTEGER NOT NULL,
> >
> >  "COD_PROD" INTEGER NOT NULL, <<<<<<< Código da Peça Bruta
> >
> >  "QTDE_OS"    NUMERIC(12,3) NOT NULL,
> >
> >  "QTDE_ATEND"         NUMERIC(12,3) NOT NULL,
> >
> >  "COD_PROD_ACAB"  INTEGER, <<<<<<<<< Código do Produto Acabado
> >
> >  "STATUS"       VARCHAR(8) NOT NULL,
> >
> >  "BAIXADO_PA"          CHAR(1),
> >
> >  "QTDE_PA"    NUMERIC(12,3),
> >
> > CONSTRAINT "PK_ITEM_OS" PRIMARY KEY ("ID")
> >
> > );
> >
> >
> >
> > A lógica é a seguinte:
> >
> > - Quando eu lançar a O.S no sistema, o sistema deverá primeiramente
analisar
> > se o COD_PROD_ACAB está preenchido.
> >
> > - Se estiver preenchido, verifico no estoque sem tem o produto acabado
em
> > estoque; (COD_PROD_ACAB)
> >
> > - Caso contrário verifico se possui a peça bruta em estoque (COD_PROD);
> >
> >
> >
> > Acontece o seguinte, a Ordem de serviço pode precisar de 10 PC, onde no
> > estoque pode ter 1 PC Acabada, 2 PC Bruta e o restante emitir uma
> > solicitação de compra!
> >
> > Se for baixada algum Produto acabado (COD_PROD_ACAB), eu preencho o
> campo
> > BAIXADO_PA com ‘S’ e a quantidade baixada de produto acabado em
> “QTDE_PA”.
> >
> > Existe uma forma melhor de tratar isso pessoal? Estou ficando confuso ao
> > gerar consultas SQL com isso... Espero que alguém possa me ajudar! Desde
já,
> > muito obrigado!
> >
> >
> >
> > Uso Firebird 1.5.3, D7, FIBPlus.
> >
> > obs: Ocultei alguns campos que não tem necessidade de aparecer nesse
> > exemplo, Ok?)
> >
> >
> >
> > atenciosamente,
> >
> >
> >
> > [ ]’s
> > José Otávio Lussari
> > Analista de Sistemas
> >
> > Bel. em Sistemas de Informação
> >
> >
> >
> > ______________________________________________
> > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> > Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> >
> 
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa





Mais detalhes sobre a lista de discussão lista