diff --git a/.gitignore b/.gitignore index 771bb5c..98cc1d6 100644 --- a/.gitignore +++ b/.gitignore @@ -34,7 +34,6 @@ mydatabase.db # ── Logs de ejecución ── *.log *.err -PROYECTO/bin/*.TXT # ── Spool de reportes (salida temporal de impresión) ── PROYECTO/spool/ @@ -53,17 +52,11 @@ desktop.ini # -- Paquetes GAR: se generan en el build (gsmake -t mbs mbsERP.4pw), no van al repo -- *.gar -# -- bin/IMAGENES: solo las imagenes que usan los programas/reportes -- -# (lo demas son fotos, temporales y archivos subidos en ejecucion, p.ej. comprobantes) -PROYECTO/bin/IMAGENES/** -!PROYECTO/bin/IMAGENES/Logo.png -!PROYECTO/bin/IMAGENES/Logo_DCM.png -!PROYECTO/bin/IMAGENES/genero_logo.png -!PROYECTO/bin/IMAGENES/LOGO.JPG -!PROYECTO/bin/IMAGENES/logo1.png -!PROYECTO/bin/IMAGENES/EMPLEADOS/ -PROYECTO/bin/IMAGENES/EMPLEADOS/* -!PROYECTO/bin/IMAGENES/EMPLEADOS/.gitkeep +# -- PROYECTO/bin: no se versiona (compilados, imagenes, ejecutables, datos de ejecucion) -- +# salvo los disenos de reporte .4rp, que son fuentes registradas en mbsERP.4pw. +PROYECTO/bin/** +!PROYECTO/bin/**/ +!PROYECTO/bin/**/*.4rp # -- Llaves y certificados: NUNCA en el repo (se entregan aparte a quien los necesite) -- *.jks diff --git a/PROYECTO/codir/coprrp001.4gl b/PROYECTO/codir/coprrp001.4gl index 6585f30..4d4c9c8 100644 --- a/PROYECTO/codir/coprrp001.4gl +++ b/PROYECTO/codir/coprrp001.4gl @@ -144,11 +144,13 @@ FUNCTION coprrp001() archivo, copia - -- La API de configuracion de reportes (fgl_report_*) no esta - -- disponible en este FGL; se escribe el XML directo a un archivo - -- en FGLSPOOL en lugar de usar la plantilla .4rp con vista previa. - LET r_filename = FGL_GETENV("FGLSPOOL"), "/coprrp001_catalogo.xml" - LET handler = om.XmlWriter.createFileWriter(r_filename) + LET r_filename = 'coprrp001.4rp' + CALL seleccionarSalida() RETURNING r_output + IF fgl_report_loadCurrentSettings(r_filename) THEN + CALL fgl_report_selectDevice(r_output) + CALL fgl_report_selectPreview(TRUE) + LET handler = fgl_report_commitCurrentSettings() + END IF START REPORT catalogo2 TO XML HANDLER handler #### Enviando la informacion al registro del reporte diff --git a/PROYECTO/codir/coprrp004.4gl b/PROYECTO/codir/coprrp004.4gl index f90f373..64bdf5a 100644 --- a/PROYECTO/codir/coprrp004.4gl +++ b/PROYECTO/codir/coprrp004.4gl @@ -117,13 +117,8 @@ END IF # doce,normal,archivo,copia - -- La API de configuracion de reportes (fgl_report_*) no esta - -- disponible en este FGL; seleccionarsalida()/configureoutput() - -- tampoco estan definidas en este programa. Se escribe el XML - -- directo a un archivo en FGLSPOOL en lugar de usar la plantilla - -- .4rp con vista previa. - LET r_filename = FGL_GETENV("FGLSPOOL"), "/coprrp004_cronologico.xml" - LET handler = om.XmlWriter.createFileWriter(r_filename) + CALL seleccionarsalida() RETURNING r_output + CALL configureoutput(r_output) RETURNING handler START REPORT cronologico TO XML HANDLER handler @@ -194,7 +189,7 @@ REPORT cronologico(x) LET bandera1 = "N" LET hora = time LET l = (80 - LENGTH(p_companias.nombre CLIPPED))/2 - PRINT COLUMN 3, ASCII 27, ASCII 80,comp_off, negrillas_on + PRINT COLUMN 3, comp_off, negrillas_on # sin ESC P (codigo de impresora matricial) PRINT COLUMN 1, "coprrp004", COLUMN l, p_companias.nombre CLIPPED, COLUMN 73, "Pag. ",pageno using "###" @@ -259,7 +254,7 @@ REPORT cronologico(x) SKIP 1 LINES ON LAST ROW PRINT COLUMN 2, "Total Registros Impresos = ", count(*) USING "<<<<" - PRINT COLUMN 2, ASCII 27, ASCII 80 + PRINT COLUMN 2, "" # sin ESC P (codigo de impresora matricial) PRINT COLUMN 1, "==================================================", "=============================" END REPORT diff --git a/PROYECTO/codir/coprrp007.4gl b/PROYECTO/codir/coprrp007.4gl index 22b356f..344a7a0 100644 --- a/PROYECTO/codir/coprrp007.4gl +++ b/PROYECTO/codir/coprrp007.4gl @@ -164,13 +164,8 @@ LET idx = 1 END IF IF idx = 1 THEN - -- La API de configuracion de reportes (fgl_report_*) no esta - -- disponible en este FGL; seleccionarsalida()/configureoutput() - -- tampoco estan definidas en este programa. Se escribe el XML - -- directo a un archivo en FGLSPOOL en lugar de usar la plantilla - -- .4rp con vista previa. - LET r_filename = FGL_GETENV("FGLSPOOL"), "/coprrp007_organiza.xml" - LET handler = om.XmlWriter.createFileWriter(r_filename) + CALL seleccionarsalida() RETURNING r_output + CALL configureoutput(r_output) RETURNING handler START REPORT organiza TO XML HANDLER handler END IF @@ -221,6 +216,7 @@ LET idx = 1 DEFINE hora CHAR(5) OUTPUT + RIGHT MARGIN 148 TOP MARGIN 0 LEFT MARGIN 0 diff --git a/PROYECTO/codir/coprrp019.4gl b/PROYECTO/codir/coprrp019.4gl index ea2f301..2d1347b 100644 --- a/PROYECTO/codir/coprrp019.4gl +++ b/PROYECTO/codir/coprrp019.4gl @@ -105,13 +105,8 @@ FUNCTION coprrp019() DECLARE ent_curs SCROLL CURSOR FOR busca_entrega OPEN ent_curs - -- La API de configuracion de reportes (fgl_report_*) no esta - -- disponible en este FGL; seleccionarsalida()/configureoutput() - -- tampoco estan definidas en este programa. Se escribe el XML - -- directo a un archivo en FGLSPOOL en lugar de usar la plantilla - -- .4rp con vista previa. - LET r_filename = FGL_GETENV("FGLSPOOL"), "/coprrp019_documento.xml" - LET handler = om.XmlWriter.createFileWriter(r_filename) + CALL seleccionarsalida() RETURNING r_output + CALL configureoutput(r_output) RETURNING handler START REPORT documento TO XML HANDLER handler @@ -249,6 +244,7 @@ FUNCTION coprrp019() DEFINE valor DECIMAL(12,2) DEFINE p_base DECIMAL(10,2) OUTPUT + RIGHT MARGIN 165 TOP MARGIN 0 LEFT MARGIN 0 BOTTOM MARGIN 2 @@ -256,15 +252,15 @@ FUNCTION coprrp019() ORDER BY x.tipo,x.num_oc,z.codigo FORMAT PAGE HEADER - LET doble_on = ASCII 14 - LET doble_off = ASCII 20 - 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 doble_on = NULL -- sin codigos de impresora (salida PDF/Excel) + LET doble_off = NULL -- sin codigos de impresora (salida PDF/Excel) + LET negrillas_on = NULL -- sin codigos de impresora (salida PDF/Excel) + LET negrillas_off = NULL -- sin codigos de impresora (salida PDF/Excel) + LET comp_on = NULL -- sin codigos de impresora (salida PDF/Excel) + LET comp_off = NULL -- sin codigos de impresora (salida PDF/Excel) LET imp = "T" - LET doce = ASCII 27, ASCII 77 - LET normal = ASCII 27, ASCII 80 + LET doce = NULL -- sin codigos de impresora (salida PDF/Excel) + LET normal = NULL -- sin codigos de impresora (salida PDF/Excel) LET hora = time LET l = (162 - LENGTH(p_companias.nombre CLIPPED))/2 @@ -357,7 +353,7 @@ FUNCTION coprrp019() PRINT COLUMN 2,negrillas_on, "Puerto: ",negrillas_off, - " ","(",x.cod_pt clipped,")"," ",x.nom_pt, + " ","(",x.cod_pt clipped,")"," ",x.nom_pt CLIPPED, COLUMN 48, negrillas_on,"Flete: ",negrillas_off, x.c_flete using "##,###,###.##", COLUMN 80, negrillas_on,"Gastos: ",negrillas_off, @@ -391,6 +387,7 @@ FUNCTION coprrp019() COLUMN 101, valor using "##,###,###.##"; AFTER GROUP OF x.num_oc + PRINT -- cierra la ultima linea de detalle (termina en ";") PRINT COLUMN 1, "__________________________________________________", "__________________________________________________", "__________________________________________________", diff --git a/PROYECTO/cpdir/cpprrp001.4gl b/PROYECTO/cpdir/cpprrp001.4gl index 58f81e9..4317cca 100644 --- a/PROYECTO/cpdir/cpprrp001.4gl +++ b/PROYECTO/cpdir/cpprrp001.4gl @@ -94,12 +94,9 @@ END MAIN RETURN END IF - CALL defecto(usuarios,clave,impresor) RETURNING imprime,negrilla_on,negrillas_of, - doble_on,doble_off,comp_on,comp_off, - doce,normal,archivo,copia - - - START REPORT impreso_mvto TO archivo + CALL seleccionarsalida() RETURNING r_output + CALL configureoutput(r_output) RETURNING handler + START REPORT impreso_mvto TO XML HANDLER handler LET selec = "SELECT a.tipo_doc,a.num_doc,a.cod_sp,a.cod_sp_sec, ", "b.nom_sp,a.fecha_orig,a.aplica_a,a.detalle,a.valor ", @@ -145,7 +142,7 @@ END MAIN OUTPUT TO REPORT impreso_mvto(prt_mvto.*,mvto.fecha_in,mvto.fecha_fi) END WHILE FINISH REPORT impreso_mvto - RUN imprime + -- RUN imprime: era para la impresora matricial; ahora sale por PDF/Excel/pantalla END FUNCTION REPORT impreso_mvto(x,fecha1,fecha2) @@ -174,7 +171,8 @@ END MAIN negrillas_off CHAR(6), hora CHAR(5) - OUTPUT + OUTPUT + RIGHT MARGIN 138 LEFT MARGIN 0 TOP MARGIN 1 BOTTOM MARGIN 4 @@ -182,14 +180,14 @@ END MAIN ORDER BY x.num_doc FORMAT PAGE HEADER - LET negrillas_on = ASCII 27, ASCII 69 - LET negrillas_off = ASCII 27, ASCII 70 - LET doble_on = ASCII 14 - LET doble_off = ASCII 20 - LET comprimido_on = ASCII 15 - LET comprimido_off = ASCII 18 - LET comprimido_12_on = ASCII 27, ASCII 77 - LET comprimido_12_off = ASCII 27, ASCII 80 + LET negrillas_on = NULL -- sin codigos de impresora (salida PDF/Excel) + LET negrillas_off = NULL -- sin codigos de impresora (salida PDF/Excel) + LET doble_on = NULL -- sin codigos de impresora (salida PDF/Excel) + LET doble_off = NULL -- sin codigos de impresora (salida PDF/Excel) + LET comprimido_on = NULL -- sin codigos de impresora (salida PDF/Excel) + LET comprimido_off = NULL -- sin codigos de impresora (salida PDF/Excel) + LET comprimido_12_on = NULL -- sin codigos de impresora (salida PDF/Excel) + LET comprimido_12_off = NULL -- sin codigos de impresora (salida PDF/Excel) LET hora = time LET lj = (131 - LENGTH(p_companias.nombre CLIPPED))/2 PRINT COLUMN 1,comprimido_on,negrillas_on