Relacionamento Composto
Caros amigos :D
Desculpem a tralha toda mas para mim ficou complicado e não
sabia bem como fazer a pergunta e resolvi detalhar para ver
se consigo expor com clareza minha dificuldade e dúvida.
tabela 2
Campo 1 = a02cod (inteiro)
Campo 2 = a02nome1 (string)
Campo 3 = a02coef (float)
Campo 4 = a02uni (string)
Campo 5 = a02vlr (float)
a02cod - chave
tabela 3
Campo 1 = a03cod
Campo 2 = a03nome2 (string)
Campo 3 = a03coef (float)
Campo 4 = a03uni (string)
Campo 5 = a03vlr (float)
a03cod - chave
tabela 4
Campo 1 = a04cdc (inteiro)
Campo 2 = a04cdi (inteiro)
Campo 3 = a04coef (float)
a04cdc - chave
a04cdi - chave
onde :
a03cod = a04cdc (inteiro)
a02cod = a04cdi (inteiro)
ex.:
tabela 2
a02cod a02nome1 a02coef a02uni a02vlr
9043 servente 1,00 h 5,00
9046 pedreiro 1,00 h 10,00
9010 cavador 1,00 h 20,00
tabela 3
a03cod a03nome2 a03coef a02uni
4000 Escavação tipo 1 1,00 m3
tabela 4
a04cdc a04cdi a03coef
4000 9043 2,00
4000 9046 4,00
5000 4000 1,00
5000 9010 50,00
Que é uma relação de 1 para vários
Obtida facilmente com Master Detail ou query parametrizada (a03cod)
onde terei:
a03cod a03nome2 a03coef a03uni a03vlr
4000 Escavação tipo 1 1,00 m3 50,00
9043 servente 2,00 h 10,00
9046 pedreiro 4,00 h 40,00
o que desejo:
Se criar na tabela 3 um outro tipo de escavação tipo 2 a partir da
escavação tipo 1 teremos
tabela 3
a03cod a03nome2
5000 Escavação tipo 2 1,00 m3 1050,00
a03cod - chave
onde terei a seguinte indicação na
tabela 4
a04cdc a04cdi a04coef
5000 +4000 1,00
5000 9010 50,00
Que é a nova relação que desejo criar
a03cod a03nome2 a03coef a03uni a03vlr
5000 Escavação tipo 2 1,00 m3 1050,00
+ 4000 Escavação tipo 1 1,00 m3 50,00
9010 Cavador 50,00 h 1000,00
Quando clicar na linha ou no + 4000 terei no meu grid o seguinte:
A Composição composta expandida
5000 Escavação tipo2 1,00 m3 1050,00
9043 servente 2,00 h 10,00
9046 pedreiro 4,00 h 40,00
9010 Cavador 50,00 h 1000,00
A minha pergunta é a seguinte como relacionar as tabelas e definir
as chaves para poder criar estas composições resumida e a composta.
Até pode ser em três dbgrid´s, porém não sei como criar as chaves
e ou as respectivas query´s.
Tem algum exemplo/demo disso na rede, não consegui achar nada?
Se alguem puder me ajudar fico muito grato. :idea: :?: :!:
saudações
drozinski
Desculpem a tralha toda mas para mim ficou complicado e não
sabia bem como fazer a pergunta e resolvi detalhar para ver
se consigo expor com clareza minha dificuldade e dúvida.
tabela 2
Campo 1 = a02cod (inteiro)
Campo 2 = a02nome1 (string)
Campo 3 = a02coef (float)
Campo 4 = a02uni (string)
Campo 5 = a02vlr (float)
a02cod - chave
tabela 3
Campo 1 = a03cod
Campo 2 = a03nome2 (string)
Campo 3 = a03coef (float)
Campo 4 = a03uni (string)
Campo 5 = a03vlr (float)
a03cod - chave
tabela 4
Campo 1 = a04cdc (inteiro)
Campo 2 = a04cdi (inteiro)
Campo 3 = a04coef (float)
a04cdc - chave
a04cdi - chave
onde :
a03cod = a04cdc (inteiro)
a02cod = a04cdi (inteiro)
ex.:
tabela 2
a02cod a02nome1 a02coef a02uni a02vlr
9043 servente 1,00 h 5,00
9046 pedreiro 1,00 h 10,00
9010 cavador 1,00 h 20,00
tabela 3
a03cod a03nome2 a03coef a02uni
4000 Escavação tipo 1 1,00 m3
tabela 4
a04cdc a04cdi a03coef
4000 9043 2,00
4000 9046 4,00
5000 4000 1,00
5000 9010 50,00
Que é uma relação de 1 para vários
Obtida facilmente com Master Detail ou query parametrizada (a03cod)
onde terei:
a03cod a03nome2 a03coef a03uni a03vlr
4000 Escavação tipo 1 1,00 m3 50,00
9043 servente 2,00 h 10,00
9046 pedreiro 4,00 h 40,00
o que desejo:
Se criar na tabela 3 um outro tipo de escavação tipo 2 a partir da
escavação tipo 1 teremos
tabela 3
a03cod a03nome2
5000 Escavação tipo 2 1,00 m3 1050,00
a03cod - chave
onde terei a seguinte indicação na
tabela 4
a04cdc a04cdi a04coef
5000 +4000 1,00
5000 9010 50,00
Que é a nova relação que desejo criar
a03cod a03nome2 a03coef a03uni a03vlr
5000 Escavação tipo 2 1,00 m3 1050,00
+ 4000 Escavação tipo 1 1,00 m3 50,00
9010 Cavador 50,00 h 1000,00
Quando clicar na linha ou no + 4000 terei no meu grid o seguinte:
A Composição composta expandida
5000 Escavação tipo2 1,00 m3 1050,00
9043 servente 2,00 h 10,00
9046 pedreiro 4,00 h 40,00
9010 Cavador 50,00 h 1000,00
A minha pergunta é a seguinte como relacionar as tabelas e definir
as chaves para poder criar estas composições resumida e a composta.
Até pode ser em três dbgrid´s, porém não sei como criar as chaves
e ou as respectivas query´s.
Tem algum exemplo/demo disso na rede, não consegui achar nada?
Se alguem puder me ajudar fico muito grato. :idea: :?: :!:
saudações
drozinski
Paulo Drozinski
Curtidas 0