{ 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