Subject Re: [IBO] Select com "CASE" no componente TIB_Query
Author Svein Erling Tysvaer
Hi Marcos!

I do not understand Portuguese, but maybe IBO has some problems due to
you not qualifying all the fields properly. Do you still get an error if
you use aliases consistently? I.e:

SELECT ap.ID_APONTAMENTO
, ap.FG_ID_ANIMAL
, (SELECT an.COD_ANIMAL FROM ANIMAIS an WHERE
ap.FG_ID_ANIMAL = an.ID_ANIMAL) AS ANIMAL
, ap.DATA
, ap.HORA
, ap.FG_ID_TAREFA
, CASE when ap.FG_ID_TAREFA = 114 THEN
ap.PERGUNTA ||'/'|| (select a.DESCRICAO FROM eventos_medidas a
where ap.FG_ID_OPCAO = a.ID_EVENTO_MEDIDA)
ELSE
ap.PERGUNTA
END
, ap.FG_ID_OPCAO
, ap.RESPOSTA
, ap.TIPO
, ap.RESPOSTA2
FROM APONTAMENTOS ap

HTH,
Set

mmusetti70 wrote:
> Bom dia !
>
> Tenho o seguinte select em um componente TIB_QUERY:
>
> SELECT ID_APONTAMENTO
> , FG_ID_ANIMAL
> , (SELECT COD_ANIMAL FROM ANIMAIS WHERE
> APONTAMENTOS.FG_ID_ANIMAL =3D ANIMAIS.ID_ANIMAL) AS ANIMAL
> , DATA
> , HORA
> , FG_ID_TAREFA=20=20=20=20=20
> , CASE when FG_ID_TAREFA =3D 114 THEN
> PERGUNTA ||'/'|| (select DESCRICAO FROM eventos_medidas A=20
> where FG_ID_OPCAO =3D A.ID_EVENTO_MEDIDA)=20
> ELSE
> PERGUNTA
> END
> , FG_ID_OPCAO
> , RESPOSTA
> , TIPO
> , RESPOSTA2
> FROM APONTAMENTOS
>
> Ao clicar no bot=E3o "PREPARAR DATASET" do componente ocorre o seguinte=20
> erro:
>
> "Refer=EAncia personalizada a coluna DML inv=E1lida: PERGUNTA".
>
> Montei este select no IBExpert e funcionou perfeitamente.
>
> O que significa este erro e como resolv=EA-lo ?
>
> Obrigado,
>
> Marcos