Explosao da estrutura de produtos em um DBGrid

Delphi

09/09/2008

bom dia, estou criando um mini-sistema com MRP gostaria de listar as estruturas do produto nivel a nivel em um DBGrid

por exemplo:


Cadeira amostra
---Estrutura da cadeira amostra
------Pés frontais
------Pés trazeiros
------Travessas
---Assento da cadeira amostra
------Chapa do assento
------Tecido
------Espuma


dentro da estrutura da cadeira teria cadastrado só: Estrutura da cadeira e assento da cadeira

dentro da estrutura da cadeira teria os pés travessas etc...



estive pensando em algo com Inner join ou algo do genero para fazer isso... mas eu não conseguiria dar o espasso para ´distinguir´ os niveis ficaria tudo ´desordenado´ asim:
Cadeira Amostra
Estrutura Cadeira Amostra
Pés Frontais
Pés Traseiros
Travessas
Assento da Cadeira Amostra
....


Frega

Frega

Curtidas 0

Respostas

Adoniram

Adoniram

09/09/2008

Esses dados estão na mesma tabela?


GOSTEI 0
Frega

Frega

09/09/2008

sim os dados estao todos numa mesma que esta asim...


Pai
Filho
Quantidade

tenho a cadeira 12345678 o pé 5555555 e a madeira 9988776655


ficaria


pai --------------------- filho ------------------ Quantidade do Filho
12345678 ----------------555555555 --------------- 1 UN
55555555 ---------------- 9988776655 ------------- 0.008 M³


asim esta na tabela mas para visualizar queria que ficasse no esquema citado acima...


GOSTEI 0
Adoniram

Adoniram

09/09/2008

O que eu acho que você poderia fazer é trazer todo mundo em um select simples para uma tabela temporária (um clientdataset por exemplo) depois vc percorreria essa tabela temporária em uma procedure recursiva, passando como parâmetro o código do produto pai e um outro parâmetro que seria um espaço. A cada chamada a essa procedure, a rotina desceria um nível na sua hierarquia, devido a sua recursividade.

Ou então vc poderia usar um cxDBTreeView que faz isso automáticamente para você.


GOSTEI 0
POSTAR