JSOTO QA G6 (.250): arreglos CG/Activos/Repuestos/Informatica, DBDATE, imagenes de reportes y cgprrp008
Programas (bugs encontrados en las pruebas funcionales en la .250): - acprmt004/acprmt005: MIN/MAX sobre la fecha real (no sobre texto CONVERT 103); acprmt004 alinea rowid. - cgprrp008: lee cgtb00004 (no la copia cgtb00004_tmp del 14-mar-2026) y solo regenera cgtb00016 cuando se corre sin filtro de cuenta. - cgprrp014: CONSTRUCT con los nombres de campo del form (cod_sp_sc). - cgfmrp013: defaultValue del combo = cgprrp012.4rp. - cgprrp022/edprrp029: salida getPreviewDevice() en lugar de SVG fijo. - edprrp080: no consume numero ED con afecta = NO. - cgprmt004/022/037, segprmt0001: sin CONNECT "IFMX" (-6366); EXTERIOR via cross-DB. - irprcs001: agrega CONNECT; irprmt021: columna idestado; irprmt066: la anulacion sin MaintainX ya no se deshace (-255); otrodir/bodegas: rama '2' llena origen y destino. - teprmt001: ajustes G6. Despliegue G6: - DBDATE=dmy4 en config/Application.xcf, config/Main_prg.xcf, resources/Application.xcf y en el grupo MODULOS del .4pw (los programas lanzados por el menu heredan el entorno). - 31 .4rp: IMAGEBOX con rutas absolutas file:///E:|F:|C: -> relativas IMAGENES/...; se agregan IMAGENES/LOGO.JPG y genero_logo.png. - Paquete mbs: incluye bin/*.4rp y bin/IMAGENES (antes el GAR no llevaba los reportes). - resources/TopMenu.4st (irprcs008 daba -8014); bin/cgprcs024.4rp. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -4,7 +4,7 @@
|
||||
<Record additionalTables="" joinLeft="" joinOperator="" joinRight="" name="Undefined" order="" uid="{b4e41e18-a1ab-44ca-b0d2-21d63ec0b26b}" where="">
|
||||
<RecordField colName="fecha_inicial" fieldIdRef="0" name="p_ano" sqlTabName="formonly" sqlType="CHAR" table_alias_name="" uid="{8833f641-6222-46a4-ba92-53eb1fdc87ba}"/>
|
||||
<RecordField colName="fecha_final" defaultValue="01" fieldIdRef="1" name="p_mes" sqlTabName="formonly" sqlType="CHAR" table_alias_name="" uid="{a63991d6-4abf-4198-b711-b6a40886ffe1}"/>
|
||||
<RecordField colName="" defaultValue="BALANCE GENERAL" fieldIdRef="2" name="estado" sqlTabName="" table_alias_name="" uid="{07465cbc-3322-43fb-ab48-4f22dde68501}"/>
|
||||
<RecordField colName="" defaultValue="cgprrp012.4rp" fieldIdRef="2" name="estado" sqlTabName="" table_alias_name="" uid="{07465cbc-3322-43fb-ab48-4f22dde68501}"/>
|
||||
<RecordField colName="" defaultValue="ACTIVOS" fieldIdRef="3" name="tipo_estado" sqlTabName="" table_alias_name="" uid="{1846db6d-746f-4998-9702-857110865eac}"/>
|
||||
</Record>
|
||||
<Form gridHeight="10" gridWidth="55" name="cgfmrp012">
|
||||
@@ -27,7 +27,7 @@
|
||||
<Item lstrtext="false" name="12" text="DICIEMBRE"/>
|
||||
</ComboBox>
|
||||
<Label gridHeight="1" gridWidth="10" name="Label1" posX="2" posY="3" text="Estado"/>
|
||||
<ComboBox aggregateColName="" aggregateName="" aggregateTableAliasName="" aggregateTableName="" colName="" columnCount="" defaultValue="BALANCE GENERAL" fieldId="2" gridHeight="1" gridWidth="17" items="BALANCE GENERAL, INGRESOS Y EGRESOS" name="estado" posX="17" posY="3" rowCount="" sqlTabName="" stepX="" stepY="" tabIndex="3" table_alias_name="" title="ComboBox1" widget="ComboBox">
|
||||
<ComboBox aggregateColName="" aggregateName="" aggregateTableAliasName="" aggregateTableName="" colName="" columnCount="" defaultValue="cgprrp012.4rp" fieldId="2" gridHeight="1" gridWidth="17" items="BALANCE GENERAL, INGRESOS Y EGRESOS" name="estado" posX="17" posY="3" rowCount="" sqlTabName="" stepX="" stepY="" tabIndex="3" table_alias_name="" title="ComboBox1" widget="ComboBox">
|
||||
<Item lstrtext="false" name="cgprrp012.4rp" text="BALANCE GENERAL"/>
|
||||
<Item lstrtext="false" name="cgprrp013.4rp" text="INGRESOS Y EGRESOS"/>
|
||||
</ComboBox>
|
||||
|
||||
@@ -76,7 +76,7 @@ MAIN
|
||||
CALL ARG_VAL(3) RETURNING impresor
|
||||
# LET usuarios = "jsoto"
|
||||
# LET clave = "1234"
|
||||
CONNECT TO "marmotech" AS "IFMX" USER usuarios USING clave
|
||||
# CONNECT TO "marmotech" AS "IFMX" USER usuarios USING clave -- G6: -6366; EXTERIOR se lee cross-DB (exterior.dbo.*)
|
||||
CONNECT TO "smarmotech" AS "MSSQL" USER usuarios USING clave
|
||||
SELECT a.* INTO p_compania.* FROM companias a
|
||||
|
||||
@@ -126,6 +126,7 @@ FUNCTION cgpcad004()
|
||||
fecha1, fecha2 DATE,
|
||||
|
||||
pdescripcion CHAR(30)
|
||||
DEFINE l_sql STRING, l_cnt INTEGER -- G6: SQL dinamico cross-DB a EXTERIOR
|
||||
|
||||
LET hoy = TODAY
|
||||
LABEL vuelve:
|
||||
@@ -199,17 +200,18 @@ FUNCTION cgpcad004()
|
||||
CALL transac.clear()
|
||||
END IF
|
||||
IF cheques = "ED" THEN
|
||||
SET CONNECTION "IFMX"
|
||||
-- G6: antes SET CONNECTION "IFMX" (EXTERIOR); ahora cross-DB sobre la conexion unica
|
||||
INPUT BY NAME xentrada
|
||||
AFTER FIELD xentrada
|
||||
IF xentrada IS NULL THEN
|
||||
CALL msg(16)
|
||||
NEXT FIELD xentrada
|
||||
END IF
|
||||
SELECT DISTINCT a.ref
|
||||
FROM cgtb00004 a
|
||||
WHERE a.ref = xentrada AND a.status_t IS NULL
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET l_sql = "SELECT COUNT(*) FROM exterior.dbo.cgtb00004 a",
|
||||
" WHERE a.ref = ? AND a.status_t IS NULL"
|
||||
PREPARE p_ex_ed FROM l_sql
|
||||
EXECUTE p_ex_ed USING xentrada INTO l_cnt
|
||||
IF l_cnt = 0 OR l_cnt IS NULL THEN
|
||||
CALL msg(3)
|
||||
NEXT FIELD xentrada
|
||||
END IF
|
||||
@@ -219,19 +221,14 @@ FUNCTION cgpcad004()
|
||||
LET INT_FLAG = FALSE
|
||||
EXIT INPUT
|
||||
ELSE
|
||||
DECLARE busca_entrada1 CURSOR FOR
|
||||
SELECT A.CUENTA_NO,
|
||||
c.DEPARTAMENTO,
|
||||
SUM(c.DEBITO),
|
||||
SUM(c.CREDITO)
|
||||
FROM cgtb00001 a, cgtb00004 c
|
||||
WHERE a.cuenta_no = c.cuenta_no
|
||||
AND c.status_t IS NULL
|
||||
AND c.ref = xentrada
|
||||
GROUP BY A.CUENTA_NO, c.DEPARTAMENTO
|
||||
LET l_sql = "SELECT a.cuenta_no, c.departamento, SUM(c.debito), SUM(c.credito)",
|
||||
" FROM exterior.dbo.cgtb00001 a, exterior.dbo.cgtb00004 c",
|
||||
" WHERE a.cuenta_no = c.cuenta_no AND c.status_t IS NULL AND c.ref = ?",
|
||||
" GROUP BY a.cuenta_no, c.departamento"
|
||||
DECLARE busca_entrada1 CURSOR FROM l_sql
|
||||
|
||||
LET idx = 1
|
||||
FOREACH busca_entrada1
|
||||
FOREACH busca_entrada1 USING xentrada
|
||||
INTO transac[idx].cuenta,
|
||||
transac[idx].departamento,
|
||||
transac[idx].debito,
|
||||
@@ -244,15 +241,16 @@ FUNCTION cgpcad004()
|
||||
END IF
|
||||
|
||||
IF cheques = "CK" THEN
|
||||
SET CONNECTION "IFMX"
|
||||
-- G6: antes SET CONNECTION "IFMX" (EXTERIOR); ahora cross-DB sobre la conexion unica
|
||||
INPUT BY NAME fecha1, fecha2, pcuenta_no
|
||||
AFTER FIELD pcuenta_no
|
||||
SELECT a.descripcion
|
||||
INTO pdescripcion
|
||||
FROM cgtb00001 a
|
||||
WHERE a.cuenta_no = pcuenta_no AND a.status_t IS NULL
|
||||
LET l_sql = "SELECT a.descripcion FROM exterior.dbo.cgtb00001 a",
|
||||
" WHERE a.cuenta_no = ? AND a.status_t IS NULL"
|
||||
PREPARE p_ex_ck FROM l_sql
|
||||
LET pdescripcion = NULL
|
||||
EXECUTE p_ex_ck USING pcuenta_no INTO pdescripcion
|
||||
|
||||
IF STATUS = NOTFOUND THEN
|
||||
IF pdescripcion IS NULL THEN
|
||||
CALL msg(3)
|
||||
NEXT FIELD pcuenta_no
|
||||
END IF
|
||||
@@ -262,18 +260,15 @@ FUNCTION cgpcad004()
|
||||
EXIT INPUT
|
||||
END INPUT
|
||||
|
||||
DECLARE busca_cheques CURSOR FOR
|
||||
SELECT A.CUENTA_NO, c.DEPARTAMENTO, SUM(c.DEBITO), SUM(c.CREDITO)
|
||||
FROM cgtb00001 a, cgtb00004 c
|
||||
WHERE a.cuenta_no = c.cuenta_no
|
||||
AND c.status_t IS NULL
|
||||
AND c.fecha BETWEEN fecha1 AND fecha2
|
||||
AND detalles = pcuenta_no
|
||||
GROUP BY A.CUENTA_NO, c.DEPARTAMENTO
|
||||
ORDER BY a.cuenta_no
|
||||
LET l_sql = "SELECT a.cuenta_no, c.departamento, SUM(c.debito), SUM(c.credito)",
|
||||
" FROM exterior.dbo.cgtb00001 a, exterior.dbo.cgtb00004 c",
|
||||
" WHERE a.cuenta_no = c.cuenta_no AND c.status_t IS NULL",
|
||||
" AND c.fecha BETWEEN ? AND ? AND c.detalles = ?",
|
||||
" GROUP BY a.cuenta_no, c.departamento ORDER BY a.cuenta_no"
|
||||
DECLARE busca_cheques CURSOR FROM l_sql
|
||||
|
||||
LET idx = 1
|
||||
FOREACH busca_cheques
|
||||
FOREACH busca_cheques USING fecha1, fecha2, pcuenta_no
|
||||
INTO transac[idx].cuenta,
|
||||
transac[idx].departamento,
|
||||
transac[idx].debito,
|
||||
@@ -283,7 +278,7 @@ FUNCTION cgpcad004()
|
||||
|
||||
END IF
|
||||
IF cheques = "CP" THEN
|
||||
SET CONNECTION "IFMX"
|
||||
-- G6: antes SET CONNECTION "IFMX" (EXTERIOR); ahora cross-DB sobre la conexion unica
|
||||
INPUT BY NAME pcod_sp, fecha1, fecha2
|
||||
AFTER FIELD pcod_sp
|
||||
IF pcod_sp IS NULL THEN
|
||||
@@ -291,12 +286,10 @@ FUNCTION cgpcad004()
|
||||
NEXT FIELD pcod_sp
|
||||
END IF
|
||||
AFTER FIELD fecha2
|
||||
SELECT COUNT(*)
|
||||
INTO registros
|
||||
FROM cptb00003 a
|
||||
WHERE a.fecha BETWEEN fecha1 AND fecha2
|
||||
AND a.cod_sp = pcod_sp
|
||||
AND a.status_t IS NULL
|
||||
LET l_sql = "SELECT COUNT(*) FROM exterior.dbo.cptb00003 a",
|
||||
" WHERE a.fecha BETWEEN ? AND ? AND a.cod_sp = ? AND a.status_t IS NULL"
|
||||
PREPARE p_ex_cxp FROM l_sql
|
||||
EXECUTE p_ex_cxp USING fecha1, fecha2, pcod_sp INTO registros
|
||||
|
||||
IF registros < 0 OR registros IS NULL THEN
|
||||
CALL msg(3)
|
||||
@@ -306,27 +299,15 @@ FUNCTION cgpcad004()
|
||||
EXIT INPUT
|
||||
END INPUT
|
||||
|
||||
DECLARE busca_cxp CURSOR FOR
|
||||
SELECT A.CUENTA_NO,
|
||||
a.DEPARTAMENTO,
|
||||
a.cod_aux,
|
||||
a.cod_sec,
|
||||
a.num_doc,
|
||||
SUM(a.DEBITO),
|
||||
SUM(a.CREDITO)
|
||||
FROM cptb00003 a
|
||||
WHERE a.status_t IS NULL
|
||||
AND a.cod_sp = pcod_sp
|
||||
AND a.fecha BETWEEN fecha1 AND fecha2
|
||||
GROUP BY A.CUENTA_NO,
|
||||
a.DEPARTAMENTO,
|
||||
a.cod_aux,
|
||||
a.cod_Sec,
|
||||
a.num_doc
|
||||
ORDER BY a.num_doc DESC, 6 DESC, 2
|
||||
LET l_sql = "SELECT a.cuenta_no, a.departamento, a.cod_aux, a.cod_sec, a.num_doc,",
|
||||
" SUM(a.debito), SUM(a.credito) FROM exterior.dbo.cptb00003 a",
|
||||
" WHERE a.status_t IS NULL AND a.cod_sp = ? AND a.fecha BETWEEN ? AND ?",
|
||||
" GROUP BY a.cuenta_no, a.departamento, a.cod_aux, a.cod_sec, a.num_doc",
|
||||
" ORDER BY a.num_doc DESC, 6 DESC, 2"
|
||||
DECLARE busca_cxp CURSOR FROM l_sql
|
||||
|
||||
LET idx = 1
|
||||
FOREACH busca_cxp
|
||||
FOREACH busca_cxp USING pcod_sp, fecha1, fecha2
|
||||
INTO transac[idx].cuenta,
|
||||
transac[idx].departamento,
|
||||
transac[idx].cod_aux,
|
||||
@@ -711,18 +692,22 @@ FUNCTION cgpcad004()
|
||||
END IF
|
||||
|
||||
LET r_filename = "cgprmt004.4rp"
|
||||
LET r_output = "SVG"
|
||||
-- G6: el visor SVG (GRV) solo existe en GDC; en el navegador (GBC) se cuelga -> PDF
|
||||
LET r_output = getPreviewDevice()
|
||||
#LET preview = 1
|
||||
|
||||
-- configure report engine; the functions prefixed fgl that are called here are part of the GRW API
|
||||
IF fgl_report_loadCurrentSettings(r_filename) THEN -- load the .4rp file
|
||||
CALL fgl_report_selectDevice(r_output) -- changing default
|
||||
IF preview = 0 THEN
|
||||
IF r_output <> "SVG" THEN
|
||||
CALL fgl_report_selectPreview(1)
|
||||
ELSE IF preview = 0 THEN
|
||||
CALL fgl_report_selectPreview(1) -- changing default
|
||||
CALL fgl_report_configureSVGPreview("PrintOnDefaultPrinter")
|
||||
ELSE
|
||||
CALL fgl_report_selectPreview(preview)
|
||||
END IF
|
||||
END IF
|
||||
|
||||
LET handler = fgl_report_commitCurrentSettings() -- commit changes
|
||||
ELSE
|
||||
@@ -896,11 +881,12 @@ FUNCTION cgpcmf004()
|
||||
END IF
|
||||
|
||||
LET selec =
|
||||
"SELECT DISTINCT CONVERT(char(10),a.fecha,103),a.ref,a.tipo,a.detalle_1,a.detalle_2 ",
|
||||
-- G6: sin CONVERT(char(10),fecha,103): el texto dd/mm/aaaa no entra en un DATE (-1205)
|
||||
"SELECT DISTINCT a.fecha,a.ref,a.tipo,a.detalle_1,a.detalle_2 ",
|
||||
"FROM cgtb00004 a ",
|
||||
"WHERE ",
|
||||
criterio CLIPPED,
|
||||
" AND a.tipo IN(1,3) ORDER BY CONVERT(char(10),a.fecha,103),a.ref"
|
||||
" AND a.tipo IN(1,3) ORDER BY a.fecha,a.ref"
|
||||
DISPLAY "seleccion: ", selec
|
||||
PREPARE busca FROM selec
|
||||
DECLARE datos SCROLL CURSOR FOR busca
|
||||
@@ -1684,21 +1670,21 @@ FUNCTION cheques1()
|
||||
debito DEC(12, 2),
|
||||
credito DEC(12, 2)
|
||||
END RECORD
|
||||
DEFINE l_sql STRING -- G6: SQL dinamico cross-DB a EXTERIOR
|
||||
|
||||
OPEN WINDOW cgfmwd011
|
||||
AT 15, 10
|
||||
WITH FORM "cgfmwd011"
|
||||
ATTRIBUTE(BORDER, FORM LINE FIRST + 1, COMMENT LINE LAST)
|
||||
SET CONNECTION "IFMX"
|
||||
-- G6: antes SET CONNECTION "IFMX" (EXTERIOR); ahora cross-DB sobre la conexion unica
|
||||
INPUT BY NAME kfecha1, kfecha2, kcuenta_no
|
||||
AFTER FIELD kcuenta_no
|
||||
IF kcuenta_no IS NOT NULL THEN
|
||||
SELECT a.descripcion
|
||||
INTO kdescripcion
|
||||
FROM cgtb00001 a
|
||||
WHERE a.cuenta_no = kcuenta_no
|
||||
|
||||
IF STATUS = NOTFOUND THEN
|
||||
LET l_sql = "SELECT a.descripcion FROM exterior.dbo.cgtb00001 a WHERE a.cuenta_no = ?"
|
||||
PREPARE p_ex_cta FROM l_sql
|
||||
LET kdescripcion = NULL
|
||||
EXECUTE p_ex_cta USING kcuenta_no INTO kdescripcion
|
||||
IF kdescripcion IS NULL THEN
|
||||
CALL msg(3)
|
||||
NEXT FIELD kcuenta_no
|
||||
END IF
|
||||
@@ -1715,22 +1701,15 @@ FUNCTION cheques1()
|
||||
END IF
|
||||
END INPUT
|
||||
|
||||
DECLARE busca_ex CURSOR FOR
|
||||
SELECT A.CUENTA_NO,
|
||||
A.DESCRIPCION,
|
||||
c.DEPARTAMENTO,
|
||||
SUM(c.DEBITO),
|
||||
SUM(c.CREDITO)
|
||||
FROM cgtb00001 a, cgtb00004 c
|
||||
WHERE a.cuenta_no = c.cuenta_no
|
||||
AND c.status_t IS NULL
|
||||
AND c.fecha BETWEEN kfecha1 AND kfecha2
|
||||
AND detalles = kcuenta_no
|
||||
GROUP BY A.CUENTA_NO, A.DESCRIPCION, c.DEPARTAMENTO
|
||||
ORDER BY a.cuenta_no
|
||||
LET l_sql = "SELECT a.cuenta_no, a.descripcion, c.departamento, SUM(c.debito), SUM(c.credito)",
|
||||
" FROM exterior.dbo.cgtb00001 a, exterior.dbo.cgtb00004 c",
|
||||
" WHERE a.cuenta_no = c.cuenta_no AND c.status_t IS NULL",
|
||||
" AND c.fecha BETWEEN ? AND ? AND c.detalles = ?",
|
||||
" GROUP BY a.cuenta_no, a.descripcion, c.departamento ORDER BY a.cuenta_no"
|
||||
DECLARE busca_ex CURSOR FROM l_sql
|
||||
|
||||
LET idx = 1
|
||||
FOREACH busca_ex INTO kdetalle[idx].*
|
||||
FOREACH busca_ex USING kfecha1, kfecha2, kcuenta_no INTO kdetalle[idx].*
|
||||
LET transac[idx].cuenta = kdetalle[idx].cuenta_no
|
||||
LET transac[idx].departamento = kdetalle[idx].departamento
|
||||
LET transac[idx].debito = kdetalle[idx].debito
|
||||
|
||||
@@ -19,7 +19,8 @@ GLOBALS
|
||||
CALL ARG_VAL(1) RETURNING usuarios
|
||||
CALL ARG_VAL(2) RETURNING clave
|
||||
|
||||
CONNECT to "marmotech" AS "MSSQL" USER usuarios USING clave
|
||||
-- G6: "marmotech" no existe en el fglprofile (-6366); el binario de produccion (E:\MARMOTECH\BIN320 = EXTERIOR) conecta a smarmotech
|
||||
CONNECT to "smarmotech" AS "MSSQL" USER usuarios USING clave
|
||||
CALL cgprmt022()
|
||||
END MAIN
|
||||
FUNCTION cgprmt022()
|
||||
|
||||
@@ -471,7 +471,7 @@ DISPLAY solicitud.cuenta_no1
|
||||
ELSE
|
||||
COMMIT WORK
|
||||
LET r_filename ="cgprmt037.4rp"
|
||||
LET r_output = "SVG"
|
||||
LET r_output = getPreviewDevice() -- G6: SVG (GRV) solo en GDC; en web cuelga -> PDF
|
||||
#LET preview = 1
|
||||
|
||||
-- configure report engine; the functions prefixed fgl that are called here are part of the GRW API
|
||||
@@ -880,7 +880,7 @@ DIALOG ATTRIBUTES (UNBUFFERED,FIELD ORDER FORM )
|
||||
|
||||
ON ACTION imprimir
|
||||
LET r_filename ="cgprmt037.4rp"
|
||||
LET r_output = "SVG"
|
||||
LET r_output = getPreviewDevice() -- G6: SVG (GRV) solo en GDC; en web cuelga -> PDF
|
||||
IF fgl_report_loadCurrentSettings(r_filename) THEN -- load the .4rp file
|
||||
CALL fgl_report_selectDevice(r_output) -- changing default
|
||||
CALL fgl_report_selectPreview(true)
|
||||
@@ -940,7 +940,7 @@ DIALOG ATTRIBUTES (UNBUFFERED,FIELD ORDER FORM )
|
||||
ELSE
|
||||
COMMIT WORK
|
||||
LET r_filename ="cgprmt037.4rp"
|
||||
LET r_output = "SVG"
|
||||
LET r_output = getPreviewDevice() -- G6: SVG (GRV) solo en GDC; en web cuelga -> PDF
|
||||
IF fgl_report_loadCurrentSettings(r_filename) THEN -- load the .4rp file
|
||||
CALL fgl_report_selectDevice(r_output) -- changing default
|
||||
CALL fgl_report_selectPreview(true)
|
||||
|
||||
@@ -48,6 +48,7 @@ GLOBALS
|
||||
clave CHAR(16)
|
||||
END RECORD
|
||||
DEFINE fecha_inicial,fecha_final DATE
|
||||
DEFINE regenera SMALLINT -- TRUE = corrida sin filtro: actualiza cgtb00016
|
||||
MAIN
|
||||
DEFER INTERRUPT
|
||||
CALL ARG_VAL(1) RETURNING usuarios
|
||||
@@ -112,9 +113,15 @@ FUNCTION cgprrp008()
|
||||
END IF
|
||||
EXIT CONSTRUCT
|
||||
END CONSTRUCT
|
||||
-- cgtb00016 (base de cgprrp012/013) solo se regenera cuando se corre el mes
|
||||
-- COMPLETO; con filtro de cuenta se borraba el mes y se reinsertaban solo
|
||||
-- las cuentas filtradas (balance incompleto).
|
||||
LET regenera = (criterio.trim() = "1=1")
|
||||
IF regenera THEN
|
||||
DELETE FROM cgtb00016 WHERE ano = p_ano AND mes=p_mes AND programa='cgprrp012.4rp'
|
||||
DELETE FROM cgtb00016 WHERE ano = p_ano AND mes=p_mes AND programa='cgprrp013.4rp' AND
|
||||
estado_m='390'
|
||||
END IF
|
||||
|
||||
LET p = 1
|
||||
LET selec =
|
||||
@@ -132,7 +139,7 @@ DISPLAY "cuenta ",cuenta_reg
|
||||
LET selec =
|
||||
"SELECT b.cuenta_no,b.descripcion,b.estado_a,b.estado_m, ",
|
||||
" ISNULL(SUM(a.debito),0),ISNULL(SUM(a.credito),0),b.nivel,b.analitico,b.aplica_a ",
|
||||
"FROM cgtb00001 b LEFT OUTER JOIN cgtb00004_tmp a ON (a.cuenta_no = b.cuenta_no) AND (a.fecha BETWEEN ? AND ?) ",
|
||||
"FROM cgtb00001 b LEFT OUTER JOIN cgtb00004 a ON (a.cuenta_no = b.cuenta_no) AND (a.fecha BETWEEN ? AND ?) ",
|
||||
" AND (a.status_t IS NULL) ",
|
||||
"WHERE (a.status_t IS NULL) AND ",
|
||||
|
||||
@@ -290,7 +297,7 @@ REPORT mayor_anal_gral(x,fecha1,fecha2)
|
||||
# Balance Anterior
|
||||
LET x.cuenta_no = x.cuenta_no clipped
|
||||
|
||||
SELECT sum(debito-credito) INTO balan_ant FROM cgtb00004_tmp
|
||||
SELECT sum(debito-credito) INTO balan_ant FROM cgtb00004
|
||||
WHERE (fecha < fecha1) and (cuenta_no[1] = x.cuenta_no) and
|
||||
status_t is null
|
||||
|
||||
@@ -300,7 +307,7 @@ REPORT mayor_anal_gral(x,fecha1,fecha2)
|
||||
|
||||
# Actividades del mes
|
||||
SELECT SUM(a.debito),SUM(a.credito) INTO x.debito,x.credito
|
||||
FROM cgtb00004_tmp a
|
||||
FROM cgtb00004 a
|
||||
WHERE (a.cuenta_no[1] = x.cuenta_no) and a.status_t IS NULL AND
|
||||
(a.fecha between fecha1 and fecha2)
|
||||
|
||||
@@ -316,7 +323,7 @@ REPORT mayor_anal_gral(x,fecha1,fecha2)
|
||||
# Para Las Sub-control
|
||||
IF x.nivel > 1 THEN
|
||||
LET x.cuenta_no = x.cuenta_no clipped
|
||||
SELECT SUM(a.debito-a.credito) INTO balan_ant FROM cgtb00004_tmp a
|
||||
SELECT SUM(a.debito-a.credito) INTO balan_ant FROM cgtb00004 a
|
||||
WHERE (a.cuenta_no[1,2] = x.cuenta_no) and a.status_t IS NULL AND
|
||||
(a.fecha < fecha1 )
|
||||
IF balan_ant is null THEN
|
||||
@@ -325,14 +332,14 @@ REPORT mayor_anal_gral(x,fecha1,fecha2)
|
||||
|
||||
# Actividades del mes
|
||||
SELECT SUM(a.debito),SUM(a.credito) INTO x.debito,x.credito
|
||||
FROM cgtb00004_tmp a
|
||||
FROM cgtb00004 a
|
||||
WHERE (a.cuenta_no[1,2] = x.cuenta_no) and a.status_t IS NULL AND
|
||||
(a.fecha between fecha1 and fecha2)
|
||||
|
||||
|
||||
# Otras cuentas sub-controles (Balance Anterior)
|
||||
IF x.cuenta_no[3] != " " THEN
|
||||
SELECT SUM(a.debito-a.credito) INTO balan_ant FROM cgtb00004_tmp a
|
||||
SELECT SUM(a.debito-a.credito) INTO balan_ant FROM cgtb00004 a
|
||||
WHERE (a.cuenta_no[1,3] = x.cuenta_no) and a.status_t IS NULL AND
|
||||
(a.fecha < fecha1 )
|
||||
IF balan_ant is null THEN
|
||||
@@ -340,13 +347,13 @@ REPORT mayor_anal_gral(x,fecha1,fecha2)
|
||||
END IF
|
||||
# Actividades del mes
|
||||
SELECT SUM(a.debito),SUM(a.credito) INTO x.debito,x.credito
|
||||
FROM cgtb00004_tmp a
|
||||
FROM cgtb00004 a
|
||||
WHERE (a.cuenta_no[1,3] = x.cuenta_no) and a.status_t IS NULL AND
|
||||
(a.fecha between fecha1 and fecha2)
|
||||
END IF
|
||||
# Otras cuentas sub-controles (Actividades del mes)
|
||||
IF x.cuenta_no[4] != " " THEN
|
||||
SELECT SUM(a.debito-a.credito) INTO balan_ant FROM cgtb00004_tmp a
|
||||
SELECT SUM(a.debito-a.credito) INTO balan_ant FROM cgtb00004 a
|
||||
WHERE (a.cuenta_no[1,4] = x.cuenta_no) and a.status_t IS NULL AND
|
||||
(a.fecha < fecha1 )
|
||||
IF balan_ant is null THEN
|
||||
@@ -354,7 +361,7 @@ REPORT mayor_anal_gral(x,fecha1,fecha2)
|
||||
END IF
|
||||
|
||||
SELECT SUM(a.debito),SUM(a.credito) INTO x.debito,x.credito
|
||||
FROM cgtb00004_tmp a
|
||||
FROM cgtb00004 a
|
||||
WHERE (a.cuenta_no[1,4] = x.cuenta_no) and a.status_t IS NULL AND
|
||||
(a.fecha between fecha1 and fecha2)
|
||||
END IF
|
||||
@@ -382,11 +389,13 @@ REPORT mayor_anal_gral(x,fecha1,fecha2)
|
||||
#END IF
|
||||
LET balan_act = balan_ant + actividad
|
||||
|
||||
IF regenera THEN
|
||||
INSERT INTO cgtb00016(ano,mes,cuenta_no,estado_a,estado_m,balance_ant,actividad,balance_act,programa,descripcion,
|
||||
primern,debito,credito)
|
||||
VALUES (p_ano,p_mes,x.cuenta_no,x.estado_a,x.estado_m,
|
||||
balan_ant,actividad,balan_act,'cgprrp012.4rp',x.descripcion,x.nivel,
|
||||
x.debito,x.credito)
|
||||
END IF
|
||||
|
||||
IF valor_88_act is null THEN
|
||||
LET valor_88_act = 0
|
||||
@@ -408,7 +417,7 @@ REPORT mayor_anal_gral(x,fecha1,fecha2)
|
||||
IF x.nivel > 2 THEN
|
||||
|
||||
# Balance Inicial
|
||||
SELECT SUM(b.debito - b.credito) INTO balance FROM cgtb00004_tmp b
|
||||
SELECT SUM(b.debito - b.credito) INTO balance FROM cgtb00004 b
|
||||
WHERE (b.cuenta_no=x.cuenta_no) AND b.status_t IS NULL AND (b.fecha < fecha1)
|
||||
|
||||
IF balance IS NULL THEN
|
||||
@@ -435,11 +444,13 @@ REPORT mayor_anal_gral(x,fecha1,fecha2)
|
||||
COLUMN 112, balance + actividad USING "((,(((,(((,(((.##)"
|
||||
# END IF
|
||||
LET balan_act = balance + actividad
|
||||
IF regenera THEN
|
||||
INSERT INTO cgtb00016 (ano,mes,cuenta_no,estado_a,estado_m,balance_ant,actividad,balance_act,programa,
|
||||
descripcion,primern,debito,credito)
|
||||
VALUES (p_ano,p_mes,x.cuenta_no,x.estado_a,x.estado_m,
|
||||
balance,actividad,balan_act,'cgprrp012.4rp',x.descripcion,x.nivel,
|
||||
x.debito,x.credito)
|
||||
END IF
|
||||
END IF
|
||||
|
||||
# Busca las cuentas que tienen que ver con el beneficio neto
|
||||
@@ -482,7 +493,7 @@ REPORT mayor_anal_gral(x,fecha1,fecha2)
|
||||
FOREACH busca INTO x.cuenta_no,x.descripcion,x.estado_a,x.estado_m
|
||||
|
||||
LET x.cuenta_no = x.cuenta_no clipped
|
||||
SELECT sum(a.debito-a.credito) INTO balan_ant FROM cgtb00004_tmp a
|
||||
SELECT sum(a.debito-a.credito) INTO balan_ant FROM cgtb00004 a
|
||||
WHERE (a.cuenta_no[1] = x.cuenta_no) and (a.fecha < fecha1) and
|
||||
a.status_t is null
|
||||
|
||||
@@ -492,7 +503,7 @@ REPORT mayor_anal_gral(x,fecha1,fecha2)
|
||||
|
||||
# Actividades del mes
|
||||
SELECT SUM(a.debito),SUM(a.credito) INTO x.debito,x.credito
|
||||
FROM cgtb00004_tmp a
|
||||
FROM cgtb00004 a
|
||||
WHERE (a.cuenta_no[1] = x.cuenta_no) and a.status_t IS NULL AND
|
||||
(a.fecha between fecha1 and fecha2)
|
||||
|
||||
@@ -557,8 +568,10 @@ REPORT mayor_anal_gral(x,fecha1,fecha2)
|
||||
PRINT COLUMN 1, "---------------------------------------------------",
|
||||
"---------------------------------------------------",
|
||||
"-------------------------------"
|
||||
IF regenera THEN
|
||||
INSERT INTO cgtb00016 (ano,mes,estado_a,balance_ant,actividad,balance_act,programa,debito,credito)
|
||||
VALUES (p_ano,p_mes,'275',t_balan_ant,t_actividad,t_balan_act,'cgprrp012.4rp',t_debito,t_credito)
|
||||
END IF
|
||||
|
||||
SKIP TO TOP OF PAGE
|
||||
LET t_debito = 0
|
||||
@@ -610,8 +623,10 @@ REPORT mayor_anal_gral(x,fecha1,fecha2)
|
||||
|
||||
END IF
|
||||
|
||||
IF regenera THEN
|
||||
INSERT INTO cgtb00016 (ano,mes,estado_m,balance_ant,actividad,balance_act,programa,debito,credito)
|
||||
VALUES (p_ano,p_mes,'390',t_balan_ant,t_actividad,t_balan_act,'cgprrp013.4rp',t_debito,t_credito)
|
||||
END IF
|
||||
|
||||
|
||||
PRINT COLUMN 1, "---------------------------------------------------",
|
||||
|
||||
@@ -90,7 +90,7 @@ END MAIN
|
||||
END IF
|
||||
|
||||
CONSTRUCT criterio ON a.cuenta_no,a.num_doc,a.cod_aux,a.cod_Sec
|
||||
FROM cuenta_no,cod_sp,cod_sp_Sec,num_doc
|
||||
FROM cuenta_no,num_doc,cod_sp,cod_sp_sc -- G6: el form tiene cod_sp_sc (no cod_sp_Sec, -1102) y el orden debe seguir a las columnas
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
|
||||
@@ -89,7 +89,7 @@ FUNCTION cgprrp022()
|
||||
}
|
||||
|
||||
|
||||
CALL configureoutput("SVG") RETURNING HANDLER
|
||||
CALL configureoutput(getPreviewDevice()) RETURNING HANDLER -- G6: SVG (GRV) solo en GDC; en web cuelga -> PDF
|
||||
|
||||
START REPORT imp_entrada TO XML HANDLER handler
|
||||
|
||||
|
||||
@@ -191,7 +191,7 @@ FUNCTION edprrp029()
|
||||
RETURN
|
||||
END IF
|
||||
IF idx = 1 THEN
|
||||
CALL configureoutput("SVG") RETURNING handler
|
||||
CALL configureoutput(getPreviewDevice()) RETURNING handler -- G6: SVG (GRV) solo en GDC; en web cuelga -> PDF
|
||||
START REPORT prn_credito TO XML HANDLER HANDLER
|
||||
|
||||
END IF
|
||||
@@ -226,7 +226,7 @@ FUNCTION edprrp029()
|
||||
CALL fgl_winmessage("INFO","NO EXISTEN REGISTROS CON ESTAS CONDICIONES","INFO")
|
||||
END IF
|
||||
{ IF fgl_report_loadCurrentSettings("formato_entrada.4rp") THEN -- load the .4rp file
|
||||
CALL fgl_report_selectDevice("SVG") -- changing default
|
||||
CALL fgl_report_selectDevice(getPreviewDevice()) -- changing default
|
||||
CALL fgl_report_selectPreview(1)
|
||||
LET handler = fgl_report_commitCurrentSettings()
|
||||
START REPORT prn_credito TO XML HANDLER HANDLER
|
||||
@@ -250,7 +250,7 @@ FUNCTION edprrp029()
|
||||
RETURN
|
||||
END IF
|
||||
IF idx = 1 THEN
|
||||
CALL configureoutput("SVG") RETURNING HANDLER
|
||||
CALL configureoutput(getPreviewDevice()) RETURNING HANDLER
|
||||
|
||||
START REPORT ed29 TO XML HANDLER HANDLER
|
||||
END IF
|
||||
|
||||
@@ -238,9 +238,17 @@ FUNCTION ipprrp004()
|
||||
LET idx = 1
|
||||
LET acumulado.nombre_Cia = p_compania.nombre
|
||||
|
||||
CALL controlNumericoED(
|
||||
numero_ent, fecha_final, usuarios)
|
||||
RETURNING entrada_d
|
||||
-- Solo se consume la secuencia en cgtb00011 si se AFECTA el mayor;
|
||||
-- con afecta = "NO" se pide el numero en modo consulta (sin INSERT/UPDATE).
|
||||
IF afecta = "SI" THEN
|
||||
CALL controlNumericoED(
|
||||
numero_ent, fecha_final, usuarios)
|
||||
RETURNING entrada_d
|
||||
ELSE
|
||||
CALL controlNumericoED(
|
||||
numero_ent, fecha_final, NULL)
|
||||
RETURNING entrada_d
|
||||
END IF
|
||||
DISPLAY "entrada real: ", entrada_d
|
||||
|
||||
DISPLAY BY NAME entrada_d
|
||||
|
||||
Reference in New Issue
Block a user