Añadir modulo COMPRAS (coprmt001, coprmt009, coprmt016)

- coprmt001 (Suplidores): agregar campos faltantes (tipo_doc,rnc,cuenta_no)
  al RECORD interno de ApiMaintainC() en api_test.4gl, y unificar la
  aridad de RETURNING en las 3 llamadas (POST/PATCH/DELETE) - el
  enlazador exige el mismo numero de valores de retorno en todo el modulo.
- coprmt009 (Ordenes de Compra): reemplazar fgl_report_loadCurrentSettings/
  selectDevice/selectPreview/commitCurrentSettings (no disponibles en este
  FGL) por om.XmlWriter.createFileWriter en coprorden.4gl; agregar
  verificacion defensiva en lugarentrega.4gl (ui.combobox.forname puede
  devolver NULL si el formulario actual no tiene el combo "bodega"); quitar
  "ordenes.bodega" de los INPUT BY NAME (campo oculto, no se puede enlazar).
  Pendiente: probar el flujo completo de creacion de orden (se corto por
  una caida de conexion transitoria durante la prueba).
- coprmt016 (Terminos de Pago): CRUD simple, sin cambios de codigo.
- mbsERP.4pw: crear modulo COMPRAS (estaba vacio) con librerias
  FUNCIONES_CO y FORMULARIOS_CO, y registrar los 3 programas.
- otrodir/smarmotech.sch: diccionario de esquema completo (antes faltaba
  en este directorio, causaba fallos de link en api_test.4gl).
- .gitignore: excluir logs de STARTLOG() (bin/*.TXT) y archivos .err de
  compilacion.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Abel López
2026-08-25 16:58:59 -04:00
co-authored by Claude Sonnet 5
parent 347e8139fc
commit acacf34eea
8 changed files with 8963 additions and 33 deletions
+12 -11
View File
@@ -1,9 +1,9 @@
{
------------------------------------------------------------------
PROGRAMA : MaintainX_API
OBJETIVO : Código que ejecuta los POST, GET Y PUT ENTRE MAINTAINX
Y GÉNERO
PROGRAMADOR : Ing. Elvis García.
OBJETIVO : Cdigo que ejecuta los POST, GET Y PUT ENTRE MAINTAINX
Y GNERO
PROGRAMADOR : Ing. Elvis Garca.
FECHA REALIZACION : Agosto 15, 2024.
------------------------------------------------------------------
}
@@ -83,7 +83,7 @@ END MAIN}
FUNCTION ApiMaintainC(metodo, idApi, Data, usuario) --FUNCION PARA COMPRAS
DEFINE data RECORD
DEFINE data RECORD
area_sp VARCHAR(10),
ciu_sp VARCHAR(30),
cod_pais VARCHAR(3),
@@ -91,6 +91,7 @@ FUNCTION ApiMaintainC(metodo, idApi, Data, usuario) --FUNCION PARA COMPRAS
cod_sp_sec SMALLINT,
cont_sp VARCHAR(30),
contactID INTEGER,
cuenta_no VARCHAR(10),
dir_sp VARCHAR(60),
email VARCHAR(60),
fax_sp VARCHAR(25),
@@ -98,13 +99,15 @@ FUNCTION ApiMaintainC(metodo, idApi, Data, usuario) --FUNCION PARA COMPRAS
fech_mod DATETIME YEAR TO FRACTION,
id_maintainx INTEGER,
nom_sp VARCHAR(41),
rnc VARCHAR(11),
status_t VARCHAR(1),
tel_sp VARCHAR(25),
term_sp SMALLINT,
tipo_doc VARCHAR(10),
us_crea VARCHAR(50),
us_mod VARCHAR(50)
END RECORD,
usuario STRING
END RECORD,
usuario STRING
DEFINE response RECORD
name STRING,
@@ -445,12 +448,10 @@ FUNCTION ApiMaintainC(metodo, idApi, Data, usuario) --FUNCION PARA COMPRAS
EXIT CASE
END CASE
IF answer2 IS NOT NULL THEN
IF answer2 IS NOT NULL THEN
DISPLAY answer2
RETURN answer, answer2
ELSE
RETURN answer
END IF
END IF
RETURN answer, answer2
END FUNCTION