[firebase-br] [OFF TOPIC] Ajuda com Mestre-detalhe-detalhe
Bruno Nogueira
bruno.nogueira em pgfinformatica.com.br
Ter Maio 27 17:31:31 -03 2008
Olá pessoal, uma boa tarde para todos!
Gostaria que vocês me ajudassem com a solução deste problema:
Tenho 3 tabelas (Genericas - Similar ao que realmente estou fazendo)
TblEmpresas
COD (Primary Key)
NOME Not Null
________________________
TblSetores
COD (Primary Key)
NOME Not Null
________________________
TblFuncionarios
COD (Primary Key)
NOME Not Null
________________________
TblEstruturaEmpresa
Cod_Empresa (FOREIGN KEY REFERENCES TblEmpresas(COD)) Not Null
Cod_Setor (FOREIGN KEY REFERENCES TblSetores(COD)) Not Null
Cod_Funcionario (FOREIGN KEY REFERENCES TblFuncionarios(COD)) Not Null
Primary Keys(Cod_Empresa, Cod_Setor, Cod_Funcionario) O funcionário
poderá trabalhar em divesas empresas e em setores diferentes - Isto não vem
ao caso. Lembre-se que isto é similar à minhas tabelas reais.
_________________________
Bom, a estrutura é essa aí.
Agora tenho que especificar os ferramentas e soluções que estou
utilizando para criar o sistema:
Delphi 2007 for Win32 + Firebird 2.1.0.17798.
Acesso a Dados: IBX.
Veja como ficou as IBQuery's que utilizei:
IBQueryEmpresas:
select distinct COD_EMPRESA, NOME
from TBLESTRUTURA_EMPRESA
join TBLEMPRESAS
on COD_EMPRESA = COD
IBQuerySetores
select distinct COD_EMPRESA, COD_SETOR, NOME
from TBLESTRUTURA_EMPRESA
join TBLSETORES
on COD_SETOR = COD
where COD_EMPRESA = :COD_EMPRESA
IBQueryFuncionarios
select distinct COD_EMPRESA, COD_SETOR, COD_FUNCIONARIO, DESCRICAO
from TBLESTRUTURA_EMPRESA
join TBLFUNCIONARIO
on COD_FUNCIONARIO = COD
where COD_EMPRESA = :COD_EMPRESA
and COD_SETOR = :COD_SETOR
A situação é o seguinte:
Após setar as DataSources devidamente nas query´s tudo
funcionou normalmente no Delphi.
Porém meus problemas começaram quando criei um relatorio no
RAVE REPORTS 7.5. Criei 3 DataBands linkados nos respectivos IBQuery´s,
configurei as propriedades relativas ao Master/Detalhe e no relatório só sai
o Nome da Empresa e os Setores. A listagem de funcionarios só sai no
primeiro setor de cada empresa. Os outros setores são impressos um abaixo do
outro sem os funcionários.
Será que alguém poderia me ajudar?!
Mais detalhes sobre a lista de discussão lista