Comparar valores de 2 tabelas sql - com MasterSource

Delphi

27/06/2013

Bom dia pessoal. Peço encarecidamente a ajuda de vocês do forum. Vamos aos problemas.

Estou fazendo um software para uma lavanderia industrial, no momento da expedição. O usuário efetua o lançamento das peças que chegaram na lavanderia e das que estão saindo.

Está sendo feito assim.

Tenho uma tabela Pai de entrada de roupa e uma tabela Filha de entrada de roupa.

Utilizando MasterSource.

Estrutura das tabelas:

Tabela entrada de Roupa Pai

    ID_CODIGO   INTEGER NOT NULL, 
    NROL        INTEGER, 
    ID_CLIENTE  INTEGER, 
    DATA        DATE, 
    HORA        TIME, 
    ID_FUNC     INTEGER 

ALTER TABLE ENT_ROUPA_PAI ADD CONSTRAINT PK_ENT_ROUPA_PAI PRIMARY KEY (ID_CODIGO) 




Tabela de entrada de Roupa Filha

    ID_COD_PAI   INTEGER NOT NULL, 
    ID_COD_PECA  INTEGER NOT NULL, 
    QUANTIDADE   NUMERIC(15,0) 

ALTER TABLE ENT_ROUPA_FILHA ADD CONSTRAINT PK_ENT_ROUPA_FILHA PRIMARY KEY (ID_COD_PAI, ID_COD_PECA) 



Utilizando a mesma estrutura tenho as tabelas da expedição


Nem irei colar aki pois a estrutura é igual, sendo uma tabela pai, e uma filha com mastersource e a filha com chave primaria dupla também.

Agora o meu problema.

Preciso compara as duas tabelas no quesito quantidade, mas pelo NROL e ID_CLIENTE.

Exemplo:

Na tabela entrada pai tenho os seguintes dados:

ID_CODIGO 1
NROL 123
ID_CLIENTE 3

Na tabela entrada filha tenho os seguintes dados:

ID_COD_PAI 1
ID_COD_PECA 1
QUANTIDADE 500

ID_COD_PAI 1
ID_COD_PECA 2
QUANTIDADE 300

Explicando:

Chegou a lavanderia 500 peças 1 do cliente 3 e 300 peças tipo 2 do mesmo cliente todos sob o NROL 123.

Agora efetuo a saida

Digamos que:

Tabela saida Pai

ID_COD 1
NROL 123
ID_CLIENTE 3

Tabela saída filha

ID_COD_PAI 1
ID_COD_PECA 1
QUANTIDADE 400


ID_COD_PAI 1
ID_COD_PECA 2
QUANTIDADE 250

Explicando:

Está sendo entregue ao hotel 400 peças do tipo 1 do cliente 3 e 250 peças do tipo 2 do mesmo cliente sob o mesmo NROL 123.

Agora o problema real:

Preciso fazer com q o delphi veja esta diferença.

Que foi dada entrada em 500 peças do tipo 1 e foi devolvida somente 400 ficando na lavanderia 100 peças do tipo 1

A mesma situação com as peças do tipo 2 veio para lavanderia 300 e foi devolvida somente 250 ficando 50 peças na lavanderia.

Acho que consegui me explicar.

Resumindo::

Preciso que busque pelo cliente e nrol e calcule as quantidades.



Fico no aguardo dos sempre atenciosos foristas.

Desde já agradeço.
Eduardo Amaral

Eduardo Amaral

Curtidas 0

Respostas

Lindolfo Junior

Lindolfo Junior

27/06/2013

porque vc não cria uma terceira tabela de saldos, com o cliente, nrol, tp_peça e saldo, aí quando vc faz a entrada atualiza essa tabela e quando vc faz a saída, baixa dessa tabela, dessa forma seu saldo sempre estará atualizado, se for o caso daria até pra incluir um esquema de lote, não sei se entendi direito.. espero que ajude alguma coisa...
GOSTEI 0
Eduardo Amaral

Eduardo Amaral

27/06/2013

Meu kerido...

mto obrigado. Vou fazer deste jeito.

Abs
GOSTEI 0
Dms Logistica

Dms Logistica

27/06/2013

Boa noite Eduardo e Lindolfo... tudo certinho com vocês?? :)


Uma outra proposta seria criar uma tabela só, onde você teria a qtd de entrada e a qtd de saida
possibilitando assim uma maior mobilidade e menos joins :)

Tipo você teria uma tabela só uma PAI
e uma tabela FILHA contendo os campos mencionados acima :)

E uma outra possibilidade.. :)


Abraços :)
GOSTEI 0
José

José

27/06/2013

Como aparentemente a duvida foi solucionada, estou finalizando este tópico.
GOSTEI 0
POSTAR