Si ordenamos la consulta, tal vez surja algo:
Código SQL:
Ver originalSELECT
DECODE(`t1`.`ct_numero_contrato`,
130003156,
'Excedentes',
130005164,
'Excedentes',
130005089,
'Excedentes',
130000001,
'Convenio 300',
DECODE(`t1`.`tipo_registro`,
'1',
'Boleta',
'Guia')) Tipo_Documento,
`t2`.`nro_docto` Número_Documento,
`t1`.`ct_numero_contrato` Convenio,
DECODE((SELECT
`t3`.`respaldo_fisico_requerido`
FROM
`parametros_liquidacion` `t3`
WHERE
`t3`.`ct_numero_contrato` = `t1`.`ct_numero_contrato`),
'S',
'Con Respaldo',
'Sin Respaldo') Condición_Convenio,
`t1`.`monto_credito` Monto
FROM
`detalle_consumos` `t1`,
`transacciones_pos` `t2`,
`PARAMETROS_LIQUIDACION` `T3`
WHERE
`t1`.`codigo` = `t2`.`codigo`
AND `t1`.`ct_numero_contrato` = `t3`.`ct_numero_contrato`
AND `t1`.`estado_consumo` = '1'
AND `t1`.`lo_codigo` = $_SESSION["filial_id"]
AND `fecha_consumo` = TO_DATE('".$FechaI."', 'dd/mm/yyyy')
AND `t1`.`monto_credito` > 0
AND `t1`.`ct_numero_contrato` NOT IN (130003156,130005164, 130005089)
AND `t3`.`respaldo_fisico_requerido` = 'S'
ORDER BY tipo_documento, Condición_Convenio
En principio, hay un par de cosas que podrían provocar problemas:
1) Estás usando letras acentuadas para los alias de las columnas, y eso es proclive a generar problemas cuando se trabaja con bases de datos y también con PHP. Ninguno de los dos se lleva bien con las acentuadas si no está todo correctamente configurado.
2) No está claro qué DBMS usas, por las cláusulas y funciones usadas supongo que es Oracle. Pero si estás usando algo diferente, te puede dar error de sintaxis, porque estás usando funciones propietarias de Oracle que los otros no reconocerán.
Fuera de eso, a nivel de consulta, la veo bastante ineficiente, pero no necesariamente mal escrita.
Como dice @Triby: Sin que nos digas qué error devuelve, no hay por donde ayudarte...