Registrar y corregir ipprmt021 (Autorizaciones Requisiciones Almacenes)

- Registrar estadosprocesos.4gl y formulario ipfmmt021.4fd en el proyecto
- Corregir columna estado_proceso inexistente por idestado (error SQL -6372)
- Corregir desfase de columnas en SELECT/INTO de buscadoc() que dejaba
  usuario, bodega origen y tipo de movimiento vacios en el reporte impreso,
  y filtraba la descripcion del estado hacia el campo de observacion
This commit is contained in:
2026-09-10 13:03:01 -04:00
parent a3e88776a9
commit e414e52523
4 changed files with 21 additions and 5 deletions
+16 -3
View File
@@ -4,10 +4,10 @@ FUNCTION buscadoc(numid,codmov)
DEFINE numid,codmov INT
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,b.descripcion,a.observacion
a.estado,a.url_destino,b.descripcion,a.observacion,a.us_crea
INTO p_iptb57.numero_doc,p_iptb57.cod_mov,p_iptb57.fecha,p_iptb57.num_oc,p_iptb57.tipo_cliente,p_iptb57.sec_cliente,
p_iptb57.cliente,p_iptb57.bodega,p_iptb57.bodega_destino,p_iptb57.estado,
p_iptb57.url_file,p_iptb57.observacion
p_iptb57.url_file,p_iptb57.idstado,p_iptb57.observacion,p_iptb57.us_crea
FROM iptb00057 a, iptb00061 b
WHERE a.numero_doc = numid AND a.cod_mov = codmov AND
a.idestado = b.idestado
@@ -15,7 +15,20 @@ FUNCTION buscadoc(numid,codmov)
#BODEGA DESTINO
IF p_iptb57.bodega_destino IS NOT NULL THEN
SELECT a.descripcion INTO nombreBodegaDestino FROM intb00009 a WHERE a.cod_bodega = p_iptb57.bodega_destino
END IF
END IF
#BODEGA ORIGEN
IF p_iptb57.bodega IS NOT NULL THEN
SELECT a.descripcion INTO nombreBodega FROM intb00009 a WHERE a.cod_bodega = p_iptb57.bodega
END IF
#TIPO DE MOVIMIENTO
IF p_iptb57.cod_mov IS NOT NULL THEN
SELECT RTRIM(a.descrip_mov) || '(' || CAST(a.cod_mov AS VARCHAR(6)) || ')' INTO nombreMov
FROM iptb00005 a WHERE a.cod_mov = p_iptb57.cod_mov
END IF
#USUARIO QUE CREO EL DOCUMENTO
IF p_iptb57.us_crea IS NOT NULL THEN
CALL usuarioSistema(p_iptb57.us_crea) RETURNING nombreUsuario,email
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,b.factor_conv,
+2 -1
View File
@@ -51,7 +51,8 @@ GLOBALS
estado VARCHAR(50),
ruta_documento ,
url_file STRING,
idstado VARCHAR(60)
idstado VARCHAR(60),
us_crea VARCHAR(50)
END RECORD,
arr_iptb58 DYNAMIC ARRAY OF RECORD
area INT,
+1 -1
View File
@@ -91,7 +91,7 @@ FUNCTION ipprmt021()
UPDATE iptb00057 SET us_mod=usuarios,fech_mod=getdate(),
estado_proceso = arr_busqueda[arr_curr()].idestado
idestado = arr_busqueda[arr_curr()].idestado
WHERE numero_doc = arr_busqueda[arr_curr()].numeroid AND
cod_mov = arr_busqueda[arr_curr()].cod_mov