{ Esta funcion se utiliza para desplegar mensajes de los reportes de los sistemas de Ray-O-Vac Dominicana. Realizada por JUAN SOTO FECHA : 13/7/2009 } FUNCTION msgrp000(tipo_papel) DEFINE tipo_papel SMALLINT, longitud CHAR(11), linea_papel CHAR(50) CASE WHEN tipo_papel = 1 LET longitud = " 9 1/2 x 11" WHEN tipo_papel = 2 LET longitud = "14 7/8 x 11" END CASE LET linea_papel = "Coloque papel ",longitud," en la impresora." DISPLAY linea_papel AT 15,14 DISPLAY "Asegurese de que la impresora este encendida." AT 16,14 DISPLAY " Ejecuta impresion Cancela impresion" AT 18,14 END FUNCTION FUNCTION defecto(usuarios,clave,impresor) DEFINE impresor,idx SMALLINT, negrillas_on, negrillas_off, doble_on, doble_off, doce, comp_on, comp_off, normal CHAR(6), archivo CHAR(80), lpnum INTEGER, imprime CHAR(150), prt RECORD prtcodigo SMALLINT, nombre VARCHAR(60), lpprog VARCHAR(150), lppipe VARCHAR(20), puerto VARCHAR(80) END RECORD, usuarios,clave CHAR(80),copia CHAR(100) SELECT a.codigo,a.nombre,a.lpprog,a.lppipe,a.puerto INTO prt.* FROM prttb00001 a WHERE a.codigo = impresor CASE WHEN prt.prtcodigo = 1 LET doble_on = ASCII 14 LET doble_off = ASCII 18 LET negrillas_on = ASCII 27, ASCII 69 LET negrillas_off = ASCII 27, ASCII 70 LET comp_on = ASCII 15 LET comp_off = ASCII 18 LET doce = ASCII 27,ASCII 77 LET normal = ASCII 27,ASCII 80 EXIT CASE WHEN prt.prtcodigo = 2 {Printer Central. Contabilidad} LET doble_on = ASCII 001 LET doble_off = ASCII 002 LET negrillas_on = ASCII 027, ASCII 098 LET negrillas_off = ASCII 027, ASCII 099 LET comp_on = ASCII 031 LET comp_off = ASCII 029 LET doce = ASCII 030 LET normal = ASCII 029 EXIT CASE WHEN impresor = 3 LET doble_on = ASCII 14 LET doble_off = ASCII 18 LET negrillas_on = ASCII 27, ASCII 69 LET negrillas_off = ASCII 27, ASCII 70 LET comp_on = ASCII 15 LET comp_off = ASCII 18 LET doce = ASCII 27,ASCII 77 LET normal = ASCII 27,ASCII 80 EXIT CASE END CASE # BUSCA EL NUMERO DE IMPRESION A SEGUIR SELECT MAX(ult_imp) INTO lpnum FROM prttb00002 IF lpnum IS NULL THEN LET lpnum = 1 END IF LET lpnum = lpnum + 1 LET archivo = FGL_GETENV("FGLSPOOL"),"\\",lpnum USING "<<<<<<<<<<" LET imprime = prt.lpprog CLIPPED," ",archivo CLIPPED," ", prt.lppipe," ",prt.puerto LET copia = prt.lppipe," ",prt.puerto { UPDATE prttb00002 set ult_imp = lpnum + 1, usuario = suser_sname()} INSERT INTO prttb00002 (ult_imp,usuario)VALUES (lpnum,usuarios) RETURN imprime,negrillas_on,negrillas_off,doble_on,doble_off, comp_on,comp_off,doce,normal,archivo,copia END FUNCTION FUNCTION ElijeImpresion(parametro) DEFINE parametro CHAR(2), orden,destino CHAR(1) DEFINE letras RECORD negrillas_on CHAR(6), negrillas_off CHAR(6), doble_on CHAR(6), doble_off CHAR(6), comp_on CHAR(6), comp_off CHAR(6), doce CHAR(6), normal CHAR(6) END RECORD OPEN WINDOW wopcion AT 10,5 WITH FORM "msgfmwd001" ATTRIBUTE (BORDER,FORM LINE FIRST + 1) CASE WHEN parametro = "OD" INPUT BY NAME orden,destino EXIT CASE WHEN parametro = "D" INPUT BY NAME destino EXIT CASE END CASE IF destino = "P" THEN INITIALIZE letras.* TO NULL END IF CLOSE WINDOW wopcion RETURN orden,destino,letras.* END FUNCTION FUNCTION fdestino(p_destino,p_archivo,p_imprime) DEFINE p_destino CHAR(1), p_imprime,ejecuta CHAR(80), p_archivo CHAR(80) CASE WHEN p_destino = "I" DISPLAY P_IMPRIME AT 18,2 RUN p_imprime EXIT CASE WHEN p_destino = "P" LET ejecuta = FGL_GETENV("EDITOR")," ",p_archivo CLIPPED RUN ejecuta EXIT CASE END CASE END FUNCTION FUNCTION configureOutput(tipo_file) DEFINE tipo_file CHAR(3) IF NOT fgl_report_loadCurrentSettings(NULL) THEN RETURN NULL END IF # CALL fgl_report_selectLogicalPageMapping("multipage") # CALL fgl_report_configureMultipageOutput(2, 4, TRUE) CALL fgl_report_setPageMargins("0.5cm","0.5cm","0.5cm","0.5cm") --CALL fgl_report_selectDevice("XLS") # CALL fgl_report_selectDevice(getPreviewDevice()) # CALL fgl_report_configureCompatibilityOutput(1,'Franklin Gothic Heavy',false,'existencia',NULL,NULL) CALL fgl_report_selectDevice(tipo_file) CALL fgl_report_selectPreview(TRUE) RETURN fgl_report_commitCurrentSettings() END FUNCTION FUNCTION getPreviewDevice() DEFINE fename String CALL ui.interface.frontcall("standard", "feinfo", ["fename"],[fename]) IF fename == "Genero Desktop Client" THEN RETURN "SVG" ELSE RETURN "PDF" END IF END FUNCTION