From a67f97271a7a65e3bd2dc52ebc976ff15f072d9c Mon Sep 17 00:00:00 2001 From: Luis Date: Mon, 19 Oct 2026 10:11:40 -0400 Subject: [PATCH] lsoto --- PROYECTO/bin/IMAGENES/LOGO.JPG | Bin 0 -> 12735 bytes PROYECTO/bin/IMAGENES/genero_logo.png | Bin 0 -> 46856 bytes PROYECTO/bin/cgprcs024.4rp | 84 + PROYECTO/bin/ipprrp014r.4rp | 74 + PROYECTO/bin/irprmt020.4rp | 122 ++ PROYECTO/bin/irprmt020_1.4rp | 126 ++ PROYECTO/bin/irprrp002.4rp | 85 + PROYECTO/bin/irprrp006.4rp | 53 + PROYECTO/bin/irprrp009.4rp | 115 + PROYECTO/bin/irprrp043.4rp | 86 + PROYECTO/bin/noprrp045.4rp | 145 ++ PROYECTO/cgdir/edprrp118b.4gl.bak-20261008 | 299 +++ PROYECTO/irdir/desglose_conteo.4gl | 128 ++ PROYECTO/irdir/imprequisicion.4gl | 165 ++ PROYECTO/irdir/irautorizareq.4fd | 62 + PROYECTO/irdir/irautorizareq.4gl | 438 ++++ PROYECTO/irdir/irbuscaprod.4gl | 103 + PROYECTO/irdir/irfmcs001.per | 73 + PROYECTO/irdir/irfmcs006.4fd | 54 + PROYECTO/irdir/irfmcs008.per | 101 + PROYECTO/irdir/irfmmt002.4fd | 172 ++ PROYECTO/irdir/irfmmt003.4fd | 79 + PROYECTO/irdir/irfmmt004.per | 40 + PROYECTO/irdir/irfmmt006.4fd | 83 + PROYECTO/irdir/irfmmt009.4fd | 75 + PROYECTO/irdir/irfmmt020.4fd | 128 ++ PROYECTO/irdir/irfmmt021.4fd | 61 + PROYECTO/irdir/irfmmt036.4fd | 82 + PROYECTO/irdir/irfmmt068.per | 31 + PROYECTO/irdir/irfmrp002.per | 21 + PROYECTO/irdir/irfmrp003.per | 23 + PROYECTO/irdir/irfmrp004.per | 16 + PROYECTO/irdir/irfmrp005.per | 21 + PROYECTO/irdir/irfmrp006.4fd | 39 + PROYECTO/irdir/irfmrp009.4fd | 33 + PROYECTO/irdir/irfmrp043.4fd | 33 + PROYECTO/irdir/irfmwd001.4fd | 32 + PROYECTO/irdir/irfmwd015.4fd | 80 + PROYECTO/irdir/irfmwd066.per | 37 + PROYECTO/irdir/irfmwd068.per | 35 + PROYECTO/irdir/irpantalla.4gl | 22 + PROYECTO/irdir/irprcs001.4gl | 256 +++ PROYECTO/irdir/irprcs006.4gl | 186 ++ PROYECTO/irdir/irprcs008.4gl | 1780 ++++++++++++++++ PROYECTO/irdir/irprgb000.4gl | 457 ++++ PROYECTO/irdir/irprmt002.4gl | 725 +++++++ PROYECTO/irdir/irprmt003.4gl | 281 +++ PROYECTO/irdir/irprmt004.4gl | 457 ++++ PROYECTO/irdir/irprmt006.4gl | 1101 ++++++++++ PROYECTO/irdir/irprmt009.4gl | 375 ++++ PROYECTO/irdir/irprmt020.4gl | 961 +++++++++ PROYECTO/irdir/irprmt021.4gl | 106 + PROYECTO/irdir/irprmt036.4gl | 1916 +++++++++++++++++ PROYECTO/irdir/irprmt066.4gl | 231 ++ PROYECTO/irdir/irprmt068.4gl | 416 ++++ PROYECTO/irdir/irprrp002.4gl | 283 +++ PROYECTO/irdir/irprrp003.4gl | 314 +++ PROYECTO/irdir/irprrp004.4gl | 189 ++ PROYECTO/irdir/irprrp005.4gl | 263 +++ PROYECTO/irdir/irprrp006.4gl | 204 ++ PROYECTO/irdir/irprrp009.4gl | 298 +++ PROYECTO/irdir/irprrp043.4gl | 354 ++++ PROYECTO/irdir/irprrp045.4gl | 353 ++++ PROYECTO/irdir/irprrpcs008.4gl | 152 ++ PROYECTO/irdir/irprrpcs008C.4rp | 200 ++ PROYECTO/lqdir/lqprrp009.4gl.bak_20261012 | 1040 +++++++++ PROYECTO/lqdir/lqprrp009.rdd.bak_20261012 | 1969 ++++++++++++++++++ PROYECTO/otrodir/apiclient.4gl.bak_20261014 | 305 +++ PROYECTO/otrodir/costoLiquidacion.4gl | 149 ++ PROYECTO/otrodir/cuentas.4gl | 19 + PROYECTO/otrodir/existenciaalmacenes.4fd | 38 + PROYECTO/otrodir/irdepartamento.4gl | 54 + PROYECTO/otrodir/maquinas.4gl | 42 + PROYECTO/otrodir/msgModal.4gl | 42 + PROYECTO/otrodir/productos_incluye.4gl | 45 + PROYECTO/otrodir/secciones.4gl | 17 + PROYECTO/otrodir/tramos.4gl | 18 + PROYECTO/resources/TopMenu.4st | 14 + WEBSERVICES/productosconteo.4gl.bak_20261012 | 213 ++ 79 files changed, 19279 insertions(+) create mode 100644 PROYECTO/bin/IMAGENES/LOGO.JPG create mode 100644 PROYECTO/bin/IMAGENES/genero_logo.png create mode 100644 PROYECTO/bin/cgprcs024.4rp create mode 100644 PROYECTO/bin/ipprrp014r.4rp create mode 100644 PROYECTO/bin/irprmt020.4rp create mode 100644 PROYECTO/bin/irprmt020_1.4rp create mode 100644 PROYECTO/bin/irprrp002.4rp create mode 100644 PROYECTO/bin/irprrp006.4rp create mode 100644 PROYECTO/bin/irprrp009.4rp create mode 100644 PROYECTO/bin/irprrp043.4rp create mode 100644 PROYECTO/bin/noprrp045.4rp create mode 100644 PROYECTO/cgdir/edprrp118b.4gl.bak-20261008 create mode 100644 PROYECTO/irdir/desglose_conteo.4gl create mode 100644 PROYECTO/irdir/imprequisicion.4gl create mode 100644 PROYECTO/irdir/irautorizareq.4fd create mode 100644 PROYECTO/irdir/irautorizareq.4gl create mode 100644 PROYECTO/irdir/irbuscaprod.4gl create mode 100644 PROYECTO/irdir/irfmcs001.per create mode 100644 PROYECTO/irdir/irfmcs006.4fd create mode 100644 PROYECTO/irdir/irfmcs008.per create mode 100644 PROYECTO/irdir/irfmmt002.4fd create mode 100644 PROYECTO/irdir/irfmmt003.4fd create mode 100644 PROYECTO/irdir/irfmmt004.per create mode 100644 PROYECTO/irdir/irfmmt006.4fd create mode 100644 PROYECTO/irdir/irfmmt009.4fd create mode 100644 PROYECTO/irdir/irfmmt020.4fd create mode 100644 PROYECTO/irdir/irfmmt021.4fd create mode 100644 PROYECTO/irdir/irfmmt036.4fd create mode 100644 PROYECTO/irdir/irfmmt068.per create mode 100644 PROYECTO/irdir/irfmrp002.per create mode 100644 PROYECTO/irdir/irfmrp003.per create mode 100644 PROYECTO/irdir/irfmrp004.per create mode 100644 PROYECTO/irdir/irfmrp005.per create mode 100644 PROYECTO/irdir/irfmrp006.4fd create mode 100644 PROYECTO/irdir/irfmrp009.4fd create mode 100644 PROYECTO/irdir/irfmrp043.4fd create mode 100644 PROYECTO/irdir/irfmwd001.4fd create mode 100644 PROYECTO/irdir/irfmwd015.4fd create mode 100644 PROYECTO/irdir/irfmwd066.per create mode 100644 PROYECTO/irdir/irfmwd068.per create mode 100644 PROYECTO/irdir/irpantalla.4gl create mode 100644 PROYECTO/irdir/irprcs001.4gl create mode 100644 PROYECTO/irdir/irprcs006.4gl create mode 100644 PROYECTO/irdir/irprcs008.4gl create mode 100644 PROYECTO/irdir/irprgb000.4gl create mode 100644 PROYECTO/irdir/irprmt002.4gl create mode 100644 PROYECTO/irdir/irprmt003.4gl create mode 100644 PROYECTO/irdir/irprmt004.4gl create mode 100644 PROYECTO/irdir/irprmt006.4gl create mode 100644 PROYECTO/irdir/irprmt009.4gl create mode 100644 PROYECTO/irdir/irprmt020.4gl create mode 100644 PROYECTO/irdir/irprmt021.4gl create mode 100644 PROYECTO/irdir/irprmt036.4gl create mode 100644 PROYECTO/irdir/irprmt066.4gl create mode 100644 PROYECTO/irdir/irprmt068.4gl create mode 100644 PROYECTO/irdir/irprrp002.4gl create mode 100644 PROYECTO/irdir/irprrp003.4gl create mode 100644 PROYECTO/irdir/irprrp004.4gl create mode 100644 PROYECTO/irdir/irprrp005.4gl create mode 100644 PROYECTO/irdir/irprrp006.4gl create mode 100644 PROYECTO/irdir/irprrp009.4gl create mode 100644 PROYECTO/irdir/irprrp043.4gl create mode 100644 PROYECTO/irdir/irprrp045.4gl create mode 100644 PROYECTO/irdir/irprrpcs008.4gl create mode 100644 PROYECTO/irdir/irprrpcs008C.4rp create mode 100644 PROYECTO/lqdir/lqprrp009.4gl.bak_20261012 create mode 100644 PROYECTO/lqdir/lqprrp009.rdd.bak_20261012 create mode 100644 PROYECTO/otrodir/apiclient.4gl.bak_20261014 create mode 100644 PROYECTO/otrodir/costoLiquidacion.4gl create mode 100644 PROYECTO/otrodir/cuentas.4gl create mode 100644 PROYECTO/otrodir/existenciaalmacenes.4fd create mode 100644 PROYECTO/otrodir/irdepartamento.4gl create mode 100644 PROYECTO/otrodir/maquinas.4gl create mode 100644 PROYECTO/otrodir/msgModal.4gl create mode 100644 PROYECTO/otrodir/productos_incluye.4gl create mode 100644 PROYECTO/otrodir/secciones.4gl create mode 100644 PROYECTO/otrodir/tramos.4gl create mode 100644 PROYECTO/resources/TopMenu.4st create mode 100644 WEBSERVICES/productosconteo.4gl.bak_20261012 diff --git a/PROYECTO/bin/IMAGENES/LOGO.JPG b/PROYECTO/bin/IMAGENES/LOGO.JPG new file mode 100644 index 0000000000000000000000000000000000000000..b125c9d59732d9ee26f411369ab877eb4c843e6c GIT binary patch literal 12735 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PROYECTO/bin/ipprrp014r.4rp b/PROYECTO/bin/ipprrp014r.4rp new file mode 100644 index 0000000..a0076cc --- /dev/null +++ b/PROYECTO/bin/ipprrp014r.4rp @@ -0,0 +1,74 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PROYECTO/bin/irprmt020.4rp b/PROYECTO/bin/irprmt020.4rp new file mode 100644 index 0000000..78df87b --- /dev/null +++ b/PROYECTO/bin/irprmt020.4rp @@ -0,0 +1,122 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PROYECTO/bin/irprmt020_1.4rp b/PROYECTO/bin/irprmt020_1.4rp new file mode 100644 index 0000000..5f42d77 --- /dev/null +++ b/PROYECTO/bin/irprmt020_1.4rp @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PROYECTO/bin/irprrp002.4rp b/PROYECTO/bin/irprrp002.4rp new file mode 100644 index 0000000..9d835b6 --- /dev/null +++ b/PROYECTO/bin/irprrp002.4rp @@ -0,0 +1,85 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PROYECTO/bin/irprrp006.4rp b/PROYECTO/bin/irprrp006.4rp new file mode 100644 index 0000000..7870855 --- /dev/null +++ b/PROYECTO/bin/irprrp006.4rp @@ -0,0 +1,53 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PROYECTO/bin/irprrp009.4rp b/PROYECTO/bin/irprrp009.4rp new file mode 100644 index 0000000..17a1f09 --- /dev/null +++ b/PROYECTO/bin/irprrp009.4rp @@ -0,0 +1,115 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PROYECTO/bin/irprrp043.4rp b/PROYECTO/bin/irprrp043.4rp new file mode 100644 index 0000000..93da1fe --- /dev/null +++ b/PROYECTO/bin/irprrp043.4rp @@ -0,0 +1,86 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PROYECTO/bin/noprrp045.4rp b/PROYECTO/bin/noprrp045.4rp new file mode 100644 index 0000000..2884ea3 --- /dev/null +++ b/PROYECTO/bin/noprrp045.4rp @@ -0,0 +1,145 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PROYECTO/cgdir/edprrp118b.4gl.bak-20261008 b/PROYECTO/cgdir/edprrp118b.4gl.bak-20261008 new file mode 100644 index 0000000..5bd21e0 --- /dev/null +++ b/PROYECTO/cgdir/edprrp118b.4gl.bak-20261008 @@ -0,0 +1,299 @@ +GLOBALS "cgprgb000.4gl" + +FUNCTION edprrp118( + fecha1, fecha2, detalle, entra, afecta, p_companias, acumulado_arr, usuario) + 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 + + DEFINE + acumulado_arr DYNAMIC ARRAY OF RECORD + cod_mov LIKE irtb00006.cod_mov, + descrip_mov LIKE intb00005.descrip_mov, + departamento SMALLINT, + nombre CHAR(30), + consumo DECIMAL(12, 2), + cuenta CHAR(10), + gasto_ind LIKE irtb00013.costo_st, + descripcion CHAR(50), + consumo_cuenta DECIMAL(12, 2), + cuenta_inv CHAR(10) + END RECORD, + ordenar CHAR(30) + + DEFINE + afecta CHAR(3), + fecha1, fecha2 DATE, + p_cctb01 RECORD LIKE cctb00001.*, + entra CHAR(14), + detalle CHAR(100), + p_companias CHAR(30), + idz INT, + ###### Variables para almacenar los datos selecionados + usuario, clave CHAR(80), + impresor SMALLINT + + LET r_filename = "edprrp118b.4rp" + LET idz = 1 + + FOR idx = 1 TO acumulado_arr.getLength() + 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 + + START REPORT entrada14 TO XML HANDLER HANDLER + + END IF + + LET ordenar = + acumulado_arr[idz].cuenta CLIPPED, + "-", + acumulado_arr[idz].departamento USING "&&&&&" + OUTPUT TO REPORT entrada14( + p_cctb01.*, + fecha1, + fecha2, + detalle, + entra, + afecta, + p_companias, + acumulado_arr[idz].*, + ordenar, usuario) + LET idz = idz + 1 + END FOR + + IF idx > 1 THEN + FINISH REPORT entrada14 + ELSE + CALL fgl_winmessage( + "INFO", + "NO HAY REGISTROS EN ESTE RANGO DE FECHA Y CON LOS PARAMETROS INDICADOS", + "INFO") + END IF + --RUN imprime +END FUNCTION + +REPORT entrada14( + x, fecha1, fecha2, detalle1, entrada, afecta, p_companias, y, xordenar, usuario) + + DEFINE x RECORD LIKE cctb00001.* + DEFINE usuario VARCHAR(50) + DEFINE + y RECORD + cod_mov LIKE irtb00006.cod_mov, + descrip_mov LIKE intb00005.descrip_mov, + departamento SMALLINT, + nombre CHAR(30), + consumo DECIMAL(12, 2), + cuenta CHAR(10), + gasto_ind LIKE irtb00013.costo_st, + descripcion CHAR(30), + consumo_cuenta DECIMAL(12, 2), + cuenta_inv CHAR(10) + END RECORD, + xordenar VARCHAR(30) + + ### Acumula los valores de las diferentes cuentas para entrada diario de nomina + DEFINE + invdebito, + invcredito, + debito, + credito, + total_departamento, + total_haber, + total_deber + DECIMAL(12, 2), + detalle1, nombre_cta, rango_fecha CHAR(100), + + fecha1, fecha2 DATE, #### Almacena las fecha del rango de busqueda + hora CHAR(5), + entrada CHAR(14), + actual VARCHAR(20), + afecta CHAR(3), + p_companias, desc_cuenta CHAR(30) + ORDER BY xordenar + FORMAT + FIRST PAGE HEADER + LET hora = TIME + LET actual = TODAY USING "dd/mm/yyyy" + LET rango_fecha = + "Del ", + fecha1 USING "dd/mm/yyyy", + " Al ", + fecha2 USING "dd/mm/yyyy" + LET total_deber = 0 + LET total_haber = 0 + BEFORE GROUP OF y.departamento + LET total_departamento = 0 + + AFTER GROUP OF xordenar + + IF y.consumo < 0 THEN + LET debito = GROUP SUM(y.consumo_cuenta) * -1 + LET credito = 0 + ELSE + LET debito = 0 + LET credito = GROUP SUM(y.consumo_cuenta) + END IF + PRINTX entrada, + hora, + actual, + rango_fecha, + p_companias, + y.cod_mov, + y.consumo, + y.cuenta, + y.departamento, + y.descrip_mov, + y.gasto_ind, + y.nombre, + y.consumo_cuenta, + y.descripcion, + debito, + credito, + detalle1 + + IF afecta = "S" THEN + BEGIN WORK + IF y.consumo < 0 THEN + INSERT INTO cgtb00004( + fecha, + tipo, + ref, + cuenta_no, + departamento, + detalle_1, + debito, + credito, + us_crea, + fech_crea) + VALUES(fecha2, + 1, + entrada, + y.cuenta, + y.departamento, + detalle1, + debito, + 0, + usuarios, + GETDATE()) + ELSE + INSERT INTO cgtb00004( + fecha, + tipo, + ref, + cuenta_no, + departamento, + detalle_1, + debito, + credito, + us_crea, + fech_crea) + VALUES(fecha2, + 1, + entrada, + y.cuenta, + y.departamento, + detalle1, + 0, + credito, + usuarios, + GETDATE()) + END IF + COMMIT WORK + END IF + LET total_deber = debito + total_deber + LET total_haber = credito + total_haber + ON LAST ROW + SELECT a.descripcion + INTO nombre_cta + FROM cgtb00001 a + WHERE a.cuenta_no = y.cuenta_inv + + IF nombre_cta IS NULL THEN + LET nombre_cta = "CUENTA SIN DESCRIPCION" + END IF + IF y.consumo < 0 THEN + LET invcredito = SUM(y.consumo_cuenta * -1) + LET invdebito = 0 + LET total_haber = invcredito + total_haber + ELSE + LET invdebito = SUM(y.consumo_cuenta) + LET invcredito = 0 + LET total_deber = invdebito + total_deber + END IF + IF afecta = "S" THEN + BEGIN WORK + IF y.consumo < 0 THEN + INSERT INTO cgtb00004( + fecha, + tipo, + ref, + cuenta_no, + detalle_1, + debito, + credito, + us_crea, + fech_crea) + VALUES(fecha2, + 1, + entrada, + y.cuenta_inv, + detalle1, + 0, + invcredito, + usuarios, + GETDATE()) + ELSE + INSERT INTO cgtb00004( + fecha, + tipo, + ref, + cuenta_no, + detalle_1, + debito, + credito, + us_crea, + fech_crea) + VALUES(fecha2, + 1, + entrada, + y.cuenta_inv, + detalle1, + invcredito, + 0, + usuarios, + GETDATE()) + END IF + + {UPDATE cgtb00011 + SET referencia = referencia + 1, + us_mod = usuario, + fech_mod = getdate() + WHERE entrada_no = 5} + COMMIT WORK + + END IF + + PRINTX y.cuenta_inv, + total_haber, + nombre_cta, + desc_cuenta, + total_deber, + invdebito, + invcredito +END REPORT diff --git a/PROYECTO/irdir/desglose_conteo.4gl b/PROYECTO/irdir/desglose_conteo.4gl new file mode 100644 index 0000000..3517f5f --- /dev/null +++ b/PROYECTO/irdir/desglose_conteo.4gl @@ -0,0 +1,128 @@ +DEFINE curr,i INT, + + kdatos DYNAMIC ARRAY OF RECORD + bookmash VARCHAR(50), + tipos VARCHAR(50), + lado_1 DEC(8,2), + lado_2 DEC(8,2), + lado_3 DEC(8,2), + cantidad SMALLINT, + cantidad2 FLOAT, + tono,calidad VARCHAR(100), + xobservacion VARCHAR(200), + id_producto CHAR(25), + bodega INT, + seccion INT, + tramo INT, + codid,idrow,idtrx INT + + END RECORD, + xcodid,xbodega,xseccion,xtramo,xcodn,xcodgrupo,xcodtipo,xcodsec,kidtrx INT, + xfecha DATE, + totalmedida DEC(12,5) +FUNCTION desglose_conteo(pcodid,pfecha,pbodega,pseccion,ptramo,pcodn,pcodgrupo,pcodtipo,pcodsec,descripcion,idtrx) + DEFINE pcodid,pbodega,pseccion,ptramo,pcodn,pcodgrupo,pcodtipo,pcodsec,idtrx INT,pfecha DATE, + descripcion VARCHAR(100) + + LET xcodid = pcodid + LET xbodega = pbodega + LET xseccion = pseccion + LET xtramo = ptramo + LET xfecha = pfecha + + LET xcodn = pcodn + LET xcodgrupo = pcodgrupo + LET xcodtipo = pcodtipo + LET xcodsec = pcodsec + LET kidtrx = idtrx + + CALL kdatos.clear() + + CALL busca_detalle() + OPEN WINDOW w1 WITH FORM "irfmwd015" + DISPLAY BY NAME pcodn,pcodgrupo,pcodtipo,pcodsec,descripcion + INPUT ARRAY kdatos FROM sdatos.* ATTRIBUTES(WITHOUT DEFAULTS) + BEFORE INPUT + LET curr = arr_curr() + LET totalmedida =0 + LET kdatos[curr].cantidad2 =0 + CALL bodegas('1') + CALL cseccion(kdatos[curr].bodega) + CALL ctramo(kdatos[curr].bodega,kdatos[curr].seccion) + AFTER FIELD cantidad + IF kdatos[arr_curr()].cantidad IS NOT NULL THEN + IF kdatos[arr_curr()].lado_1 IS NOT NULL THEN + LET kdatos[arr_curr()].cantidad2 =kdatos[arr_curr()].lado_1 *kdatos[arr_curr()].cantidad + END IF + IF kdatos[arr_curr()].lado_2 IS NOT NULL THEN + LET kdatos[arr_curr()].cantidad2 =kdatos[arr_curr()].lado_1 * kdatos[arr_curr()].lado_2* kdatos[arr_curr()].cantidad + END IF + IF kdatos[arr_curr()].lado_3 IS NOT NULL THEN + LET kdatos[arr_curr()].cantidad2 =kdatos[arr_curr()].cantidad2* kdatos[arr_curr()].lado_3* kdatos[arr_curr()].cantidad + END IF + DISPLAY kdatos[arr_curr()].cantidad2 TO sdatos[scr_line()].cantidad2 + LET totalmedida = totalmedida + kdatos[arr_curr()].cantidad2 + DISPLAY BY NAME totalmedida + END IF + AFTER INPUT + IF int_flag THEN + LET int_flag = FALSE + CALL msg(2) + END IF + LET totalmedida =0 + FOR i =1 to kdatos.getLength() + IF kdatos[i].cantidad IS NOT NULL THEN + IF kdatos[i].lado_1 IS NOT NULL THEN + LET kdatos[i].cantidad2 =kdatos[i].lado_1 *kdatos[i].cantidad + END IF + IF kdatos[i].lado_2 IS NOT NULL THEN + LET kdatos[i].cantidad2 =kdatos[i].lado_1 * kdatos[i].lado_2* kdatos[i].cantidad + END IF + IF kdatos[i].lado_3 IS NOT NULL THEN + LET kdatos[i].cantidad2 =kdatos[i].cantidad2* kdatos[i].lado_3 + END IF + LET totalmedida = totalmedida + kdatos[i].cantidad2 + END IF + + END FOR + EXIT INPUT + ON ACTION salvar ATTRIBUTE(TEXT="Guardar",IMAGE="fa-save") + CALL guarda_info() + END INPUT + CLOSE WINDOW w1 + RETURN totalmedida +END FUNCTION +FUNCTION busca_detalle() + DECLARE busca_desglose CURSOR FOR + SELECT a.book,a.tipos,a.lado_1,a.lado_2,a.lado_3,a.cantidad,a.cantidad2,a.tono,a.calidad, + a.observacion, + a.idproducto,a.bodega,a.cod_seccion,a.cod_tramo,a.codid, a.idrow,a.idtrx + FROM iptb00062 a WHERE a.codid = xcodid AND a.fecha = xfecha + ORDER BY a.lado_1 + + LET i = 1 + FOREACH busca_desglose INTO kdatos[i].* + + LET i = i + 1 + END FOREACH +END FUNCTION +FUNCTION guarda_info() + BEGIN WORK + + DELETE FROM iptb00062 WHERE fecha = xfecha AND bodega = xbodega AND codid = xcodid + + FOR i = 1 TO kdatos.getLength() + IF kdatos[i].cantidad2 IS NOT NULL THEN + INSERT INTO iptb00062 (codid,cod_n,cod_grupo,cod_tipo,cod_Sec,cantidad,cantidad2,lado_1,lado_2,lado_3, + book,tipos,cod_seccion,cod_tramo,bodega,us_crea,fech_crea,idproducto,idtrx,tono,calidad,fecha, + observacion) + VALUES (kdatos[i].codid,xcodn,xcodgrupo,xcodtipo,xcodsec,kdatos[i].cantidad,kdatos[i].cantidad2, + kdatos[i].lado_1,kdatos[i].lado_2,kdatos[i].lado_3,kdatos[i].bookmash,kdatos[i].tipos, + kdatos[i].seccion,kdatos[i].tramo,kdatos[i].bodega,suser_sname(),getdate(), + kdatos[i].id_producto,kidtrx,kdatos[i].tono,kdatos[i].calidad,xfecha, + kdatos[i].xobservacion) + END IF + END FOR + COMMIT WORK + CALL msg(1) +END FUNCTION \ No newline at end of file diff --git a/PROYECTO/irdir/imprequisicion.4gl b/PROYECTO/irdir/imprequisicion.4gl new file mode 100644 index 0000000..478e696 --- /dev/null +++ b/PROYECTO/irdir/imprequisicion.4gl @@ -0,0 +1,165 @@ +GLOBALS "irprgb000.4gl" + DEFINE xcodigo VARCHAR(50) + DEFINE despiece1 DYNAMIC ARRAY OF RECORD + id_etiqueta SMALLINT, + cod_n SMALLINT, + cod_grupo SMALLINT, + cod_tipo SMALLINT, + cod_sec SMALLINT, + lado_1 DEC(12,5), + lado_2 DEC(12,5), + lado_3 DEC(12,5), + cantidad DEC(12,5), + medida DEC(12,5), + secuencia,id_despiece INT, + bodega SMALLINT + + END RECORD + DEFINE vendedor VARCHAR(100) + +FUNCTION impdocumentos(numeroid,codmov) + DEFINE numeroid,codmov INT + + CALL buscadoc(numeroid,codmov) + + LET r_filename = "irprmt020.4rp" + iF fgl_report_loadCurrentSettings(r_filename) THEN -- load the .4rp file + + LET r_output="PDF" + LET preview=1 + CALL fgl_report_selectDevice(r_output) -- changing default + CALL fgl_report_selectPreview(preview) -- changing default + LET handler = fgl_report_commitCurrentSettings() -- commit changes + ELSE + RETURN + END IF + + START REPORT requiere TO XML HANDLER HANDLER + + FOR idx = 1 TO arr_irtb58.getLength() + IF arr_irtb58[idx].cod_Sec IS NOT NULL THEN + LET xcodigo =arr_irtb58[idx].cod_n USING '&&&&&','-', + arr_irtb58[idx].cod_grupo USING '&&&&&','-', + arr_irtb58[idx].cod_tipo USING '&&&&&&','-', + arr_irtb58[idx].cod_sec USING '&&&&&&&' + + DISPLAY arr_irtb58[idx].* + DISPLAY xcodigo + + OUTPUT TO REPORT requiere(arr_irtb58[idx].*,despiece[idx].*, xcodigo) + + END IF + + END FOR + FINISH REPORT requiere + LET tienedespiece = FALSE +END FUNCTION + +REPORT requiere(detalle,xdespiece,codigo) + DEFINE hora STRING, + detalle RECORD + area INT, + cod_n,cod_grupo,cod_tipo,cod_sec INT, + descripcion VARCHAR(100), + unidad_med VARCHAR(4), + cantidad_1,cantidad,cantidad_o1,cantidad1,factor_conv DEC(12,5) + END RECORD, + xdespiece RECORD + id_etiqueta SMALLINT, + cod_n SMALLINT, + cod_grupo SMALLINT, + cod_tipo SMALLINT, + cod_sec SMALLINT, + lado_1 DEC(12,5), + lado_2 DEC(12,5), + lado_3 DEC(12,5), + cantidad DEC(12,5), + medida DEC(12,5), + secuencia,id_despiece INT, + bodega SMALLINT + + END RECORD, + codigo VARCHAR(50), + + x INT, + etiqueta VARCHAR(100) + + ORDER BY codigo + FORMAT + FIRST PAGE HEADER + SELECT a.nombre INTO p_companias.nombre FROM companias a + LET hora = CURRENT + PRINTX hora,p_companias.nombre + BEFORE GROUP OF codigo + PRINTX detalle.*,p_irtb57.*, + nombreMov,nombreBodega,nombreBodegaDestino,nombreUsuario + + ON EVERY ROW + SELECT a.descripcion INTO etiqueta FROM vetb00026 a + WHERE a.codid = xdespiece.id_etiqueta + + + LET total_cantidad = total_cantidad + xdespiece.cantidad + + PRINTX codigo,xdespiece.*,tienedespiece,etiqueta,total_cantidad,total_medida +END REPORT + +FUNCTION buscadoc(numid,codmov) + DEFINE numid,codmov INT + + LET vendedor = null + SELECT a.numero_Doc,a.cod_mov,a.fecha,a.num_oc,a.tipo_cliente,a.sec_cliente,a.nombre,a.bodega,a.bodega_destino, + a.estado,a.url_destino,a.observacion,b.descrip_mov,c.descripcion, + '('||ISNULL(CAST(f.num_emp AS VARCHAR(10)),' ')||')'||ISNULL(rtrim(f.nom1_emp),' ')||' '||ISNULL(f.apell1_emp,' ') + + INTO p_irtb57.numero_doc,p_irtb57.cod_mov,p_irtb57.fecha,p_irtb57.num_oc,p_irtb57.tipo_cliente,p_irtb57.sec_cliente, + p_irtb57.cliente,p_irtb57.bodega,p_irtb57.bodega_destino,p_irtb57.estado, + p_irtb57.url_file,p_irtb57.observacion,nombreMov,nombreBodega,vendedor + FROM irtb00057 a INNER JOIN irtb00005 b ON b.cod_mov = a.cod_mov + INNER JOIN intb00009 c ON c.cod_bodega = a.bodega + LEFT OUTER JOIN prtb00012 d ON d.num_oc = a.num_oc + LEFT OUTER JOIN adtb00003 f ON f.num_emp = d.sec_vend + WHERE a.numero_doc = numid AND a.cod_mov = codmov + #BODEGA DESTINO + IF p_irtb57.bodega_destino IS NOT NULL THEN + SELECT a.descripcion INTO nombreBodegaDestino FROM intb00009 a WHERE a.cod_bodega = p_irtb57.bodega_destino + END IF + DECLARE buscardetalle CURSOR FOR + SELECT a.area,a.cod_n,a.cod_grupo,a.cod_tipo,a.cod_sec,a.descripcion,a.unidad_med, + a.cantidad_1,a.cantidad_2, + c.id_etiqueta, + c.lado_1,c.lado_2,c.lado_3,c.cantidad,c.medida + FROM irtb00058 a + LEFT OUTER JOIN irtb00060 c ON c.cod_n =a.cod_n AND c.cod_grupo = a.cod_grupo AND + c.cod_tipo = a.cod_tipo AND c.cod_sec = a.cod_Sec AND + c.id_despiece = a.numero_Doc + WHERE a.numero_Doc = numid AND a.cod_mov = codmov + + LET idx = 1 + CALL arr_irtb58.clear() + LET tienedespiece = FALSE + FOREACH buscardetalle INTO arr_irtb58[idx].area, + arr_irtb58[idx].cod_n, + arr_irtb58[idx].cod_grupo, + arr_irtb58[idx].cod_tipo, + arr_irtb58[idx].cod_sec, + arr_irtb58[idx].descripcion, + arr_irtb58[idx].unidad_med, + arr_irtb58[idx].cantidad_1, + arr_irtb58[idx].cantidad, + #arr_irtb58[idx].factor_conv, + despiece1[idx].id_etiqueta, + despiece1[idx].lado_1, + despiece1[idx].lado_2, + despiece1[idx].lado_3, + despiece1[idx].cantidad, + despiece1[idx].medida + IF despiece1[idx].cantidad > 0 THEN + LET tienedespiece = TRUE + ELSE + LET tienedespiece = FALSE + END IF + + LET idx = idx + 1 + END FOREACH +END FUNCTION \ No newline at end of file diff --git a/PROYECTO/irdir/irautorizareq.4fd b/PROYECTO/irdir/irautorizareq.4fd new file mode 100644 index 0000000..96a4a80 --- /dev/null +++ b/PROYECTO/irdir/irautorizareq.4fd @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +