Consulta perde os campos

Bom dia!
Estou com uma consulta que não tem origem em uma tabela. É uma query com left joins, Inner joins.

Ocorre que quando mudo qualqer coisa neste select e regravo os campos somem e tenho que refazer a aplicação.
Alguém já passou por isso ou estou fazendo algo errado??

Grato

Bom dia Luis, eu tive um problema parecido com isso.

Crie uma nova aplicação do tipo consulta e grave o seu sql com os joins, sem marcar a tabela no combo
Clique em criar e depois trabalhe normalmente.

Espero ter ajudado.

Obrigado, mas, é exatamente este o problema. Será que todas as vezes que uma modificação for feita na query tenho que refazer a aplicação??

Não sei como isso está se comportando no seu caso cara, porem aqui uma vez feito esse processo, caso eu altere o SQL na minha consulta na grid criada manualmente vai funcionar normalmente.

Apenas ocorreu aqui nas grids geradas na criação expressa…

Um bug? Talvez…

Carlos, a minha query é a sequinte:

SELECT c.ID_Chamado AS Numero_Chamado, c.Data_Hora_Chamado AS Abertura, uabre.Nome_Usuario AS Operador_Abertura, e.Nome_Cliente AS Empresa,
p.Descricao AS Prioridade, ass.nome_usuario AS Operador_Assumiu,
ass.data_hora_encaminhamento AS Data_Assumiu, usu_ence.Nome_Usuario AS Operador_Encerramento,
c.Data_Encerramento, c.Status AS Situacao,
IF(ISNULL(ass.nome_usuario),TIMEDIFF(NOW(),c.Data_Hora_Chamado), TIMEDIFF(ass.data_hora_encaminhamento,c.Data_Hora_Chamado)) AS dif_atend1,
TIMEDIFF(c.Data_Encerramento,c.Data_Hora_Chamado) AS dif_fim
FROM ctw_chamados c INNER JOIN ctw_empresas e ON c.ID_Empresa = e.ID_Empresa
INNER JOIN ctw_prioridades p ON c.ID_Prioridade = p.ID_Prioridade
INNER JOIN ctw_usuarios uabre ON c.ID_Usuario = uabre.ID_Usuario
LEFT JOIN ctw_usuarios usu_ence ON c.ID_Operador_Encerramento = usu_ence.ID_Usuario
LEFT JOIN (SELECT id_chamado, MIN(ID_Ocorrencia_Chamado), uo.Nome_Usuario, Data_Hora_Encaminhamento
FROM ctw_ocorrencias_chamados oc
INNER JOIN ctw_usuarios uo ON oc.id_operador_evento = uo.ID_Usuario
GROUP BY ID_Chamado) ass ON c.ID_Chamado = ass.id_chamado

Se alterar: inserindo oputra coluna, acrescentar um order by, mudar o nome da coluna, etc. eu tenho que refazer a aplicação.

O Sc busca as colunas do select para habilitar os campos disponíveis, e isso é feito na criação da app, quando vc troca as colunas do selec é como se estivesse refazendo a app, por isso os campo somem.
Você pode criar uma view desse select retornando as colunas com uma mesmo nome, e sempre que criar uma coluna nova adicione no final, assim você ameniza esse problema.

Acredito que a solução do Haroldo é a que melhor te atende mesmo…
Porem de qualquer forma voce vai ter de ir escolhendo os campos “manualmente” na hora de modificar a consulta

Bom dia!!
Muito obrigado a todos.
Resolvido. Criei a consulta com a tabela principal; criei os campos adicionais na aplicação e, no on load, faço a carga dos campos adicionais que necessito. Acredito que a performance cai, mas, está funcionando.
Podem considerar como resolvido.

Abraços