Registrar y corregir ipprcs002 (Consulta Maestra de Productos)
- Registrar formulario ipfmcs002.per (faltaba) - Extraer la funcion pantalla() de ipmn00000.4gl (programa de menu con su propio MAIN) a un archivo compartido nuevo (otrodir/pantalla_ip.4gl) para poder reutilizarla sin conflicto de MAIN duplicado - Bug corregido: el programa nunca tenia CONNECT TO, dependia de heredar una conexion de otro programa que nunca lo invoca en este contexto de prueba - se agrego ARG_VAL + CONNECT TO "smarmotech" como en el resto de los programas - Bug corregido: el arreglo global "prod" (usado solo por este programa) era de tamaño fijo ARRAY[200], causaba error -1326 con mas de 200 resultados - convertido a DYNAMIC ARRAY, y se agrego prod.clear() antes de repoblarlo - Agregado titulo a la ventana (usaba "screen size" clasico sin TITLE) Pendiente de decision de Johnny: la pantalla no exige ningun filtro de busqueda y hace una consulta SQL adicional por cada producto encontrado (calculo de existencia) - sin filtro intenta traer todo el catalogo y tarda mas de una hora antes de fallar. Se probo exitosamente usando siempre un codigo de producto completo (clase-grupo-tipo-secuencia). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
database smarmotech
|
||||
screen size 24 by 80
|
||||
screen size 24 by 80 title "Consulta Maestra de Productos"
|
||||
{
|
||||
|
||||
Producto Terminado [a ]-[b ]-[c ]-[d ] [a1 ]
|
||||
|
||||
@@ -9,8 +9,12 @@ DIRECTOR PROYECTO : JOSE ALFREDO PAULINO ALEJO
|
||||
}
|
||||
GLOBALS "ipprgb000.4gl"
|
||||
|
||||
MAIN
|
||||
MAIN
|
||||
DEFER INTERRUPT
|
||||
CALL ARG_VAL(1) RETURNING usuarios
|
||||
CALL ARG_VAL(2) RETURNING clave
|
||||
|
||||
CONNECT TO "smarmotech" USER usuarios USING clave
|
||||
SELECT * INTO p_companias.* FROM companias
|
||||
CALL ipprcs002()
|
||||
END MAIN
|
||||
@@ -55,6 +59,7 @@ LET SELEC =
|
||||
## Busca los registros con la condicion dada y verifica si el producto terminado
|
||||
## existe en el catalogo de bienes y servicios.
|
||||
|
||||
CALL prod.clear()
|
||||
LET idx = 1
|
||||
FOREACH accion INTO prod[idx].*,descrip1
|
||||
IF int_flag THEN
|
||||
|
||||
@@ -328,7 +328,7 @@ DEFINE prod11 DYNAMIC ARRAY OF RECORD
|
||||
fecha_ordenada DATE
|
||||
END RECORD
|
||||
|
||||
DEFINE prod ARRAY[200] OF RECORD
|
||||
DEFINE prod DYNAMIC ARRAY OF RECORD
|
||||
cod_n1 SMALLINT,
|
||||
cod_grupo1 SMALLINT,
|
||||
cod_tipo1 SMALLINT,
|
||||
|
||||
Reference in New Issue
Block a user