82 lines
2.3 KiB
Plaintext
82 lines
2.3 KiB
Plaintext
{
|
|
PROGRAMA: clienteexterno.4gl
|
|
DESARROLLADO: Ing. JUAN SOTO
|
|
FECHA: FEBRERO 7, 2023
|
|
}
|
|
GLOBALS
|
|
DEFINE usuario,clave VARCHAR(50)
|
|
DEFINE handler om.SaxDocumentHandler, -- return value from fgl_report_commitCurrentSettings()
|
|
r_filename STRING, -- filename of Report Design Document including .4rp extension
|
|
r_output STRING, -- output format option
|
|
preview INTEGER -- TRUE/FALSE, to set preview option
|
|
|
|
END GLOBALS
|
|
MAIN
|
|
CALL arg_val(1) RETURNING usuario
|
|
CALL arg_val(2) RETURNING clave
|
|
|
|
CONNECT to "smarmotech" USER usuario USING clave
|
|
CALL grafica()
|
|
END MAIN
|
|
|
|
FUNCTION grafica()
|
|
DEFINE dataencuesta RECORD
|
|
ANO SMALLINT,
|
|
mes VARCHAR(30),
|
|
vendedor,tiponegocio VARCHAR(100),
|
|
fecha DATE,
|
|
respuesta smallint
|
|
|
|
END RECORD,
|
|
selec STRING,
|
|
ano,idx SMALLINT
|
|
|
|
OPEN WINDOW w WITH FORM "fmclienteexterno"
|
|
|
|
INPUT BY NAME ano
|
|
LET selec = "SELECT a.ano,a.mes,a.vendedor,a.tipoNegocio,a.fecha,a.respuesta
|
|
FROM encuesta.dbo.vwencuesta_cliente a where a.ano = ? order by a.ano"
|
|
|
|
PREPARE comando FROM selec
|
|
DECLARE buscar CURSOR FOR comando
|
|
OPEN buscar USING ano
|
|
|
|
LET idx = 1
|
|
FOREACH buscar INTO dataencuesta.*
|
|
IF idx = 1 THEN
|
|
IF fgl_report_loadCurrentSettings(r_filename) THEN
|
|
|
|
LET preview=1
|
|
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
|
|
LET idx = 2
|
|
|
|
START REPORT impdata TO XML HANDLER HANDLER
|
|
LET idx = 2
|
|
END IF
|
|
|
|
OUTPUT TO REPORT impdata(dataencuesta.*)
|
|
END FOREACH
|
|
IF idx > 1 THEN
|
|
FINISH REPORT impdata
|
|
END IF
|
|
CLOSE WINDOW w
|
|
END FUNCTION
|
|
REPORT impdata(x)
|
|
|
|
DEFINE x RECORD
|
|
ANO SMALLINT,
|
|
mes VARCHAR(30),
|
|
vendedor,tiponegocio VARCHAR(100),
|
|
fecha DATE,
|
|
respuesta smallint
|
|
|
|
END RECORD
|
|
FORMAT
|
|
ON EVERY ROW
|
|
PRINTX x.*
|
|
END REPORT |