lqprrp009: inicia el reporte con la primera fila y avisa cuando no hay registros

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-20 11:09:06 -04:00
co-authored by Claude Sonnet 5.5
parent 0f48fc5afc
commit 97b9c16bf1
+19 -12
View File
@@ -14,6 +14,7 @@ GLOBALS
"lqprgb000.4gl" "lqprgb000.4gl"
###### Variables para busqueda de rango de fecha ###### Variables para busqueda de rango de fecha
DEFINE elije,imp,afecta CHAR(1) DEFINE elije,imp,afecta CHAR(1)
DEFINE hay_filas SMALLINT
DEFINE m_mes,mes SMALLINT DEFINE m_mes,mes SMALLINT
DEFINE chequea_ent,p_ano CHAR(4) DEFINE chequea_ent,p_ano CHAR(4)
DEFINE detalla CHAR(30) DEFINE detalla CHAR(30)
@@ -144,16 +145,7 @@ CALL ui.Window.getCurrent().setText("Liquidacion Repuestos")
LET r_filename = 'lqprrp009.4rp' LET r_filename = 'lqprrp009.4rp'
LET preview = 1 LET preview = 1
IF fgl_report_loadCurrentSettings(r_filename) THEN LET hay_filas = FALSE
CALL seleccionarsalida() RETURNING r_output -- load the .4rp file
CALL fgl_report_selectDevice(r_output) -- changing default
CALL fgl_report_selectPreview(preview) -- changing default
LET handler = fgl_report_commitCurrentSettings() -- commit changes
END IF
IF HANDLER IS NOT NULL THEN
START REPORT liquida7 TO XML HANDLER HANDLER
@@ -180,6 +172,19 @@ CALL ui.Window.getCurrent().setText("Liquidacion Repuestos")
d.status_t is null ORDER BY c.num_oc,a.cod_n,a.cod_grupo,a.cod_tipo,a.cod_sec d.status_t is null ORDER BY c.num_oc,a.cod_n,a.cod_grupo,a.cod_tipo,a.cod_sec
FOREACH busca INTO busca_datos.* FOREACH busca INTO busca_datos.*
IF NOT hay_filas THEN
IF fgl_report_loadCurrentSettings(r_filename) THEN
CALL seleccionarsalida() RETURNING r_output
CALL fgl_report_selectDevice(r_output)
CALL fgl_report_selectPreview(preview)
LET handler = fgl_report_commitCurrentSettings()
END IF
IF handler IS NULL THEN
EXIT FOREACH
END IF
START REPORT liquida7 TO XML HANDLER HANDLER
LET hay_filas = TRUE
END IF
LET orden = busca_datos.num_oc USING "<<<<<<" LET orden = busca_datos.num_oc USING "<<<<<<"
IF elije != "L" THEN IF elije != "L" THEN
{# Busca el monto pagado al colector {# Busca el monto pagado al colector
@@ -240,9 +245,11 @@ CALL ui.Window.getCurrent().setText("Liquidacion Repuestos")
OUTPUT TO REPORT liquida7(busca_datos.*) OUTPUT TO REPORT liquida7(busca_datos.*)
END FOREACH END FOREACH
IF hay_filas THEN
FINISH REPORT liquida7 FINISH REPORT liquida7
ELSE
END IF CALL fgl_winmessage("INFO","NO EXISTEN REGISTROS PARA ESTOS PARAMETROS","INFO")
END IF
#IF imp = "S" THEN #IF imp = "S" THEN
# RUN imprime # RUN imprime