Registra noprmt024 (Maestra de Puestos) y corrige duplicado en Nuevo

Se agrega noprmt024 al proyecto usando nofmmt024.per.

Se corrige adpcad023(): tras un INSERT exitoso el codigo hacia NEXT
FIELD nom_puesto para permitir capturar otro puesto, pero sin limpiar
los campos del registro anterior. Combinado con el orden real de
tabulacion del formulario (nivel_sal/salario_min/salario_max quedan
antes que cod_puesto_sirla en el orden de atributos, aunque
visualmente aparecen despues), esto permitia disparar un segundo
INSERT accidental con datos incompletos/residuales del registro
previo. Se agrega CLEAR FORM y reset de los campos tras cada insercion
exitosa, igual que en los demas programas de Nuevo ya corregidos.

Probado ciclo completo: Nuevo (confirmado que ya no duplica),
Buscar, Escoger y eLiminar sobre puesto de prueba.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Abel López
2026-09-25 11:48:21 -04:00
co-authored by Claude Sonnet 5
parent 58909014ab
commit 303a722875
2 changed files with 17 additions and 1 deletions
+5
View File
@@ -481,6 +481,7 @@
<File filePath="nodir/nofmmt018.per"/>
<File filePath="nodir/nofmmt019.per"/>
<File filePath="nodir/nofmmt023.4fd"/>
<File filePath="nodir/nofmmt024.per"/>
</Library>
<Library binaryName="FUNCIONES_NO" id="-306412216" label="FUNCIONES_NO">
<File filePath="nodir/noprgb000.4gl"/>
@@ -527,6 +528,10 @@
<Configuration commandLineArguments="alopez Lopez2023" id="-700000064" label="Configuration"/>
<File filePath="nodir/noprmt023.4gl"/>
</Application>
<Application binaryName="noprmt024" dependencies="-1026233879,-764824792,-306412216,-335228674" id="-700000065" label="noprmt024">
<Configuration commandLineArguments="alopez Lopez2023" id="-700000066" label="Configuration"/>
<File filePath="nodir/noprmt024.4gl"/>
</Application>
</Group>
<Group id="1667448785" label="PRODUCTOS TERMINADOS">
<Library binaryName="FORMULARIOS_IP" dependencies="-1026233879" id="-1826025351" label="FORMULARIOS_IP">
+11
View File
@@ -160,6 +160,17 @@ FUNCTION adpcad023()
LET numero_msg = 1
CALL msg(numero_msg)
CLEAR FORM
LET puesto.nom_puesto = NULL
LET puesto.otra_descripcion = NULL
LET puesto.funciones = NULL
LET puesto.funcion1 = NULL
LET puesto.nivel_sal = NULL
LET puesto.salario_min = NULL
LET puesto.salario_max = NULL
LET puesto.tipo_puesto = NULL
LET puesto.supervisor = NULL
LET puesto.cod_puesto_sirla = NULL
NEXT FIELD nom_puesto