Array
(
    [0] => stdClass Object
        (
            [Votos_Balanceados] => 4
            [id] => 561988
            [titulo] => SELECT COM SUB TABELAS
            [dataCadastro] => DateTime Object
                (
                    [date] => 2016-09-07 12:58:41
                    [timezone_type] => 3
                    [timezone] => America/Sao_Paulo
                )

            [isFirstPost] => -1
            [idUsuario] => 383412
            [status] => A
            [isExample] => 
            [NomeUsuario] => RUBENS PENA
            [Login] => rubens.pena7@gmail.com
            [Apelido] => 
            [Foto] => 
            [Conteudo] => [code]
begin //BUSCA POR COLECAO
ibAuxConsulta.SQL.Clear;// entrando na query e limpando
ibAuxConsulta.SQL.Add('select * from cadastro_referencias ref ');
ibAuxConsulta.SQL.Add('join cadastro_vestuario vest on (ref.idtipovestuario = vest.idvestuario) ');
ibAuxConsulta.SQL.Add('join cadastro_colecoes colec on (ref.idcolecoes = colec.idcolecao) ');
ibAuxConsulta.SQL.Add('where (colec.colnome like :pcolecoes) -- where (lower(colec.colnome) like lower(:pcolecoes))) ');





ibAuxConsulta.ParamByName('pcolecoes').Value:= EditBusca.Text+'%';
ibAuxConsulta.Open;
end;
[/code]

http://prntscr.com/cf9pxw

fica dando o seguinte erro: Unknown SQL Data type (0) quando coloco o programa pra rodar e clico no botao de consulta ) )

SELECT COM SUB TABELAS

Rubens Pena
   - 05 set 2016

Boa noite pessoal, mais uma vez venho ate vocês com mas uma duvida.
Pois bem no meu projeto estou montando um forme para consultas no qual estou utilizando quatro formulários (tabelas) com os respectivos nomes: CADASTRO_REFERENCIAS (essa e a janela principal), CADASTRO_COLECOES , CADASTRO_VESTUARIO e CADASTRO_CLIENTES.
http://prntscr.com/celzl3 (print CADASTRO_REFERENCIAS)
http://prntscr.com/celzrr (print CADASTRO_COLECOES) ----------- FK de CADASTRO_REFERENCIAS
http://prntscr.com/celzxk (CADASTRO_VESTUARIO) ---------------- FK de CADASTRO_REFERENCIAS
http://prntscr.com/cem23d (CADASTRO_CLIENTES) ---------------- FK de CADASTRO_REFERENCIAS
dentro do DataModule (tabelaReferencias criei três field's: codColecoes, codTipoVestuario e codClientes (pra aparecer os nomes no dbgrid invés do Código)
dentro do meu formulário tenho um RarioGroup com 05 itens (no meu exemplo estou usando o item [03] com o nome Coleção.
tenho um DBGrid, um Edit (com o nome de EditBusca), um IBQuery com o nome de (ibAuxConsulta) e um DS com o nome (dsFormeConsulltas)
um botao com o seguinte comando no evento onClick
procedure TfConsRef.BotaoProcurarClick(Sender: TObject);
begin
B_Retornar.Enabled:=False;
ibAuxConsulta.Close;
ibAuxConsulta.SQL.Clear;
ibAuxConsulta.SQL.Add('Select REFFULL, REFDATACRIACAO, IDCLIENTES, IDCOLECOES, IDTECIDO1 from cadastro_Referencias');
case RG_Opcoes.ItemIndex Of
3:
begin //BUSCA POR COLECAO
ibAuxConsulta.SQL.Clear;
ibAuxConsulta.SQL.Add('select * from cadastro_referencias ref ');
ibAuxConsulta.SQL.Add('join cadastro_vestuario vest ');
ibAuxConsulta.SQL.Add('on ref.idtipovestuario = vest.idvestuario ');
ibAuxConsulta.SQL.Add('join cadastro_colecoes colec ');
ibAuxConsulta.SQL.Add('on ref.idcolecoes = colec.idcolecao ');
ibAuxConsulta.SQL.Add('and colec.colnome like :pcolecoes ');
ibAuxConsulta.ParamByName('pcolecoes').Value:= EditBusca.Text+'%';
ibAuxConsulta.Open;

ate ai tudo bem ta fazendo a busca, direitinho dento do IBExpert, mais quando eu coloco o programa pra rodar e mando fazer a busca do que eu quero ele nao ta mandando os campos como e pra ser como na imagem abaixo:
http://prntscr.com/cem8gn
os campos codTipoVestuario, codClientes e codColecoes nao estao aparecendo (essas são as field's criadas).
O que tem de errado com meu código?

Post mais votado

Rubens Pena
   - 07 set 2016

#Código
begin //BUSCA POR COLECAO
ibAuxConsulta.SQL.Clear;// entrando na query e limpando
ibAuxConsulta.SQL.Add('select * from cadastro_referencias ref ');
ibAuxConsulta.SQL.Add('join cadastro_vestuario vest on (ref.idtipovestuario = vest.idvestuario) ');
ibAuxConsulta.SQL.Add('join cadastro_colecoes colec on (ref.idcolecoes = colec.idcolecao) ');
ibAuxConsulta.SQL.Add('where (colec.colnome like :pcolecoes) -- where (lower(colec.colnome) like lower(:pcolecoes))) ');

ibAuxConsulta.ParamByName('pcolecoes').Value:= EditBusca.Text+'%';
ibAuxConsulta.Open;
end;


http://prntscr.com/cf9pxw

fica dando o seguinte erro: Unknown SQL Data type (0) quando coloco o programa pra rodar e clico no botao de consulta

Rubens Pena
   - 06 set 2016

continuo travado, algum se prontifica em me ajudar?

Raylan
|
MVP
Pontos: 860
    07 set 2016

Tente assim e veja se retorna certo
#Código
select * from cadastro_referencias ref
join cadastro_vestuario vest on (ref.idtipovestuario = vest.idvestuario)
join cadastro_colecoes colec on (ref.idcolecoes = colec.idcolecao)
where (colec.colnome like :pcolecoes) -- where (lower(colec.colnome) like lower(:pcolecoes))

Raylan
|
MVP
Pontos: 860
    07 set 2016

#Código

ibAuxConsulta.SQL.Add('where (colec.colnome like :pcolecoes) ');
ibAuxConsulta.ParamByName('pcolecoes').AsString := EditBusca.Text+'%';

Rubens Pena
   - 09 set 2016

Boa noite, depois de seguir as orientações de Raylan e ver alguns estudos em videos na net consegui criar a sql pro meu problema, agora ta dando certo.

#Código3:
begin //BUSCA POR COLECAO

ibAuxConsulta.SQL.Clear;// entrando na query e limpando
ibAuxConsulta.SQL.Add(' select REFFULL as Referencia, REFDATACRIACAO as Data, VEST.VESNOME as Vestuario, CLINOME as Cliente, REFANO as Ano, COLEC.COLNOME as Colecao, TEC.TECNOME as Tecido1, REFDESCRICAO as Descricao ');
ibAuxConsulta.SQL.Add(' from cadastro_referencias ref ');
ibAuxConsulta.SQL.Add(' join cadastro_vestuario vest on ref.idtipovestuario = vest.idvestuario ');
ibAuxConsulta.SQL.Add(' join cadastro_colecoes colec on ref.idcolecoes = colec.idcolecao ');
ibAuxConsulta.SQL.Add(' join cadastro_clientes clie on ref.idclientes = clie.idcliente ');
ibAuxConsulta.SQL.Add(' join cadastro_tecidos tec on ref.idtecido1 = tec.idtecido ');

if EditBusca.Text <> '' then
begin
ibAuxConsulta.SQL.Add('and colec.colnome like :pcolecoes ');
ibAuxConsulta.ParamByName('pcolecoes').Value:= EditBusca.Text+'%';
end;
ibAuxConsulta.Open;

Rubens Pena
   - 09 set 2016

So que a estrutura da dbgrid não ficou como eu quero, as colunas ficaram com muito espaço. Gostaria de saber qual seria os comandos para deixar as colunas com a largura por mim estabelecida.

http://prntscr.com/cg9836