[RESOLVIDO] sc_lookup no onRecord dando conflito com subconsulta da GRID

Bom dia pessoal! Me deparei com uma situação já faz um tempo, achei que tinha resolvido a questão mas não era o que eu imaginava! Então decidi ver se conseguem me ajudar nessa questão.

Tenho uma grid, que tem uma subconsulta. No evento onRecord da GRID eu utilizo o seguinte select -

sc_lookup (PE, “SELECT REGISTRO_PACIENTE_EXTERNO FROM PACIENTE_EXTERNO WHERE REGISTRO_PACIENTE_EXTERNO=” . {REGISTRO_PACIENTE});

No entanto, quando eu rodo a aplicação me deparo com o erro a seguir:

Atenção
ibase_query(): supplied resource is not a valid Firebird/InterBase link resource
Atenção
gridProntuarioEletronicoEvolucao_grid::grid(): invalid statement handle

Mas quando eu removo a subconsulta, esse erro não ocorre, e minha aplicação funciona normalmente.
Não sei o que pode ser, não sei se o problema está vindo da subconsulta de fato, ou da propria grid.

Agradeço a atenção!


exemplo2.png

tente:

$sql=“SELECT REGISTRO_PACIENTE_EXTERNO FROM PACIENTE_EXTERNO WHERE REGISTRO_PACIENTE_EXTERNO=” . {REGISTRO_PACIENTE};
sc_lookup (PE, $sql);

Infelizmente não deu certo Haroldo, A minha grid e minha sub consulta estão fazendo o select na mesma tabela, será que pode ser algo relacionado?

Habilitando o modo debug o select é executado?

Ele chega fazer o select, e até me retorna o resultado, mas não sei porque esse erro. Anexei uma foto do Debug


exemplo3.png

o select esta dando erro.
Você executou direto no banco de dados?

Sim, o select no banco ele não me da erro, contudo esse Registro do paciente que ele está usando, ele retorna null, será que pelo fato de ele retornar null gera esse erro ?

se retornou null, sim provavelmente.
deve testar o retorno.

Eu forcei o select com um registro que iria me retornar algum valor, no entanto me retorna o mesmo erro! ou seja, tanto null quanto algum tipo de valor, está gerando esse erro! meu scriptcase estava na versão 9.0.0 atualizei para 9.3.002 mas mesmo assim não adiantou! Estou mexendo aqui, se conseguir posto a solução

Resolvi retirando as consultas que estavam dando erro no onRecord, e passei a trabalhar com variável global pegando informações da aplicação Mestre! E comigo funcionou para o que eu precisava!

🚀 O Scriptcase 9.12 já está disponível! Veja as novidades aqui 👉🚀 Na próxima segunda (24/02), o Scriptcase 9.12 será lançado! Veja as novidades antes de todo mundo 👉