Cláusula Where na Inicialização do Filtro da Consulta Sem Sucesso

Scriptcase: 9.4…último release
Description Subject :
=> A filragem inicial dos dados select não é executado conforme o código nos eventos. <=


==> Como está RETORNA todos os DADOS da Tabela, não obedecendo aos códigos abaixo. <==

a) SQL principal:
SELECT
Iif(Substring(cx.cx_conta From 1 For 1)=‘1’,’(+) RECEBIMENTOS em ‘,
Iif(Substring(cx.cx_conta From 1 For 1)=‘2’,’(-) PAGAMENTOS em ‘,
Iif(Substring(cx.cx_conta From 1 For 1)=‘3’ and ccx.tipo=‘R’,’(+) SAQUES’,
Iif(Substring(cx.cx_conta From 1 For 1)=‘3’ and ccx.tipo=‘D’,’(-) DEPÓSITOS’,’(O) SALDO C/C’))))
As LANCAMENTOS_EM_CAIXA,
ccx.tipo As CONTA_TIPO,
m.mo_nome as MOEDA_NOME,
DATA_MOVIMENTO,
u.usuario,
AUTENTICACAO,
ccx.cx_nome,
(VALOR+JUROS+MULTA-DESCONTO) As VALOR_LANCAMENTO,
MUTUARIO_MATRICULA,
MENSALIDADE_MES,
MENSALIDADE_ANO,
HISTORICO,
EXTORNO
FROM CAIXA cx
Join Par_Usuario u On (U.id_usuario=cx.funcionario_matricula)
Join Contacx ccx On (ccx.conta=cx.cx_conta)
Join Moeda m On (m.id_moeda=cx.moeda)
Order By 1,2,3,
cx.DATA_MOVIMENTO Desc, cx.funcionario_matricula, cx.autenticacao Desc

b) Código do Evento OnApplicationInit:
$sql =“SELECT FIRST 1 DATA_OPERACAO FROM CAIXA_OPERADOR ORDER BY 1 DESC”;
sc_lookup(Query, $sql);

echo('Valor da Global Data Inicial '.[GLO_DATAINICIAL]);

[GLO_DATAINICIAL] = {Query[0][0]};

echo('Valor da Global Data Inicial '.[GLO_DATAINICIAL]);

if (empty({sc_where_atual})){
sc_select_where(add) = “where cx.DATA_MOVIMENTO <= ‘[GLO_DATAINICIAL]’”;
}
else{
sc_select_where(add) = “AND cx.DATA_MOVIMENTO <= ‘[GLO_DATAINICIAL]’”;
}

echo('Valor do Sc_Where_Atual '.{sc_where_current});

c) Código do Evento OnScriptInit:
$sql =“SELECT FIRST 1 DATA_OPERACAO FROM CAIXA_OPERADOR ORDER BY 1 DESC”;
sc_lookup(Query, $sql);

echo('Valor da Global Data Inicial '.[GLO_DATAINICIAL]);

[GLO_DATAINICIAL] = {Query[0][0]};

echo('Valor da Global Data Inicial '.[GLO_DATAINICIAL]);

if (empty({sc_where_atual})){
sc_select_where(add) = “where cx.DATA_MOVIMENTO <= ‘[GLO_DATAINICIAL]’”;
}
else{
sc_select_where(add) = “AND cx.DATA_MOVIMENTO <= ‘[GLO_DATAINICIAL]’”;
}

echo('Valor do Sc_Where_Atual '.{sc_where_current});

d) Como diacho ativo o DEBUG para VISUALIZAR o valor das chamadas ECHO? Mesmo com os comandos não me aparece nada.

Antecipadamente agradecido.

Primeiro: acho que esse evento não é o local apropriado para fazer esse select. O correto seria no onScriptInit

Aqui, faz o seguinte: coloque um echo $sql; e um echo {Query[0][0]}; e nos mostre o que retorna.

Sobre o modo debug vá em Aplicação e ative o Modo debug

Pessoal, resolvido o caso. Abaixo relato como procedi.

a) Código no ApplicationInit:
/* RECUPERAR a última da Operação/MOvimento */
$sql =“SELECT FIRST 1 DATA_OPERACAO FROM CAIXA_OPERADOR ORDER BY 1 DESC”;
sc_lookup(Query, $sql);

/* Inicializa Global Dara Inicial */
[GLO_DATAINICIAL] = {Query[0][0]};

b) Código no ScriptInit;
/* Ativa o filtro Inicial */
if (empty({sc_where_atual})){
sc_select_where(add) = “where cx.DATA_MOVIMENTO >= ‘[GLO_DATAINICIAL]’”;
}

===> Para fechar o tópico como RESOLVIDO, peço apenas o seguinte: tem como posicionar os valores/totais da quebra na mesma linha de seu label <===

Antecipadamente agradecido.