This commit is contained in:
2026-08-25 16:48:40 -04:00
9 changed files with 252 additions and 49 deletions
+1 -1
View File
@@ -1,4 +1,4 @@
database marmotech
database smarmotech
screen
{
+15 -6
View File
@@ -10,7 +10,7 @@
GLOBALS
"cpprgb000.4gl"
DEFINE mvto RECORD
DEFINE mvto RECORD
fecha_in DATE,
fecha_fi DATE,
cod_sp SMALLINT
@@ -18,6 +18,8 @@ GLOBALS
decide CHAR(1),
entrada CHAR(14),
detalle1 CHAR(30)
DEFINE p_reportfile STRING
DEFINE p_ref_chk CHAR(50)
DEFINE prt_mvto11 RECORD
factura CHAR(10),
@@ -67,14 +69,15 @@ END MAIN
EXIT INPUT
END IF
AFTER FIELD entrada
SELECT UNIQUE a.ref FROM cgtb00004 a
WHERE a.ref = entrada
display "DIAG AFTER FIELD entrada: [",entrada CLIPPED,"]"
SELECT UNIQUE a.ref INTO p_ref_chk FROM cgtb00004 a
WHERE a.ref = entrada
IF STATUS != NOTFOUND THEN
LET numero_msg = 3
CALL msg(numero_msg)
NEXT FIELD entrada
END IF
END IF
AFTER FIELD fecha_in
IF mvto.fecha_in IS NULL THEN
LET numero_msg = 16
@@ -109,8 +112,9 @@ END MAIN
NEXT FIELD fecha
END IF
END IF
END IF
END INPUT
display "DIAG DESPUES DE INPUT: [",entrada CLIPPED,"]"
IF int_flag THEN
LET numero_msg = 2
@@ -119,7 +123,11 @@ END MAIN
RETURN
END IF
CALL configureoutput("SVG") RETURNING handler
-- 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 la vista previa SVG.
LET p_reportfile = FGL_GETENV("FGLSPOOL"), "/cpprrp011_cuentasft.xml"
LET handler = om.XmlWriter.createFileWriter(p_reportfile)
START REPORT cuenta_ft TO XML HANDLER handler
DECLARE movto CURSOR FOR
@@ -355,6 +363,7 @@ END MAIN
LET t_debito = t_debito + reg_final.debito
LET t_credito = t_credito + reg_final.credito
IF decide = "S" THEN
display "DIAGNOSTICO decide=[",decide,"] entrada=[",entrada CLIPPED,"]"
INSERT INTO cgtb00004 (fecha, tipo, ref, cuenta_no,departamento, num_doc,
cod_aux, cod_sec, detalles, detalle_1, detalle_2, debito, credito, status_t,
us_crea, fech_crea, us_mod, fech_mod)
+24 -7
View File
@@ -10,8 +10,9 @@
GLOBALS
"cpprgb000.4gl"
DEFINE selec1 CHAR(500)
DEFINE p_reportfile STRING
DEFINE mvto RECORD
DEFINE mvto RECORD
fecha_in DATE,
fecha_fi DATE,
cod_sp SMALLINT
@@ -32,7 +33,18 @@ GLOBALS
debito DECIMAL(12,2),
credito DECIMAL(12,2),
id INTEGER
END RECORD
END RECORD
MAIN
DEFER INTERRUPT
CALL ARG_VAL(1) RETURNING usuarios
CALL ARG_VAL(2) RETURNING clave
CONNECT to "smarmotech" user usuarios USING clave
SELECT a.* INTO p_companias.* FROM companias a
CALL cpprrp017()
END MAIN
FUNCTION cpprrp017()
CLEAR SCREEN
@@ -41,7 +53,6 @@ GLOBALS
#WHENEVER ERROR CONTINUE
OPEN FORM cpfmrp017 FROM "cpfmrp017"
DISPLAY FORM cpfmrp017
CALL PANTALLA()
DISPLAY "cpprrp017" AT 4,3 ATTRIBUTE(blue)
DISPLAY "Validacion de Facturas" AT 6,29
LET int_flag = FALSE
@@ -60,7 +71,10 @@ GLOBALS
LET selec =
"SELECT a.factura,a.cod_sp,a.cod_sp_sec,b.nom_sp,a.fecha,c.valor, ",
" a.cuenta_no,a.departamento,a.cod_aux,a.cod_sec,a.num_doc, ",
" a.debito,a.credito,a.rowid ",
" a.debito,a.credito, ",
-- a.rowid es una pseudo-columna de Informix, no existe en SQL Server;
-- se sustituye por un numero de fila equivalente para el orden del reporte.
" ROW_NUMBER() OVER (ORDER BY a.factura) ",
"FROM cptb00003 a,cotb00001 b,cptb00001 c ",
"WHERE (a.cod_sp = b.cod_sp AND a.cod_sp_sec = b.cod_sp_sec) and ",
" (a.cod_sp = c.cod_sp AND a.cod_sp_sec = c.cod_sp_sec) and ",
@@ -74,7 +88,10 @@ GLOBALS
DECLARE movto CURSOR FOR comando
OPEN movto
START REPORT val_ctas TO "C:\\archivo"
-- La ruta original "C:\archivo" no es escribible sin privilegios de
-- administrador; se usa un archivo en FGLSPOOL en su lugar.
LET p_reportfile = FGL_GETENV("FGLSPOOL"), "/cpprrp017_valctas.txt"
START REPORT val_ctas TO p_reportfile
DISPLAY "<< " AT 19,14
DISPLAY "<< Impresion En Proceso .... Espere Por Favor. >>" AT 19,14
@@ -86,9 +103,9 @@ GLOBALS
EXIT WHILE
END IF
OUTPUT TO REPORT val_ctas(prt_mvto11.*)
END WHILE
END WHILE
FINISH REPORT val_ctas
RUN "type C:\\archivo > %USPRINT%" END FUNCTION
END FUNCTION
REPORT val_ctas(x)
DEFINE x RECORD