93 lines
2.5 KiB
Plaintext
93 lines
2.5 KiB
Plaintext
{
|
|
PROGRAMA: MaintainXAct
|
|
OBJETIVO: Actualizar informacion en la plataforma MaintainX
|
|
FECHA DESARROLLO: 08/05/2026
|
|
|
|
}
|
|
SCHEMA smarmotech
|
|
|
|
GLOBALS
|
|
DEFINE usuarios, clave VARCHAR(50)
|
|
END GLOBALS
|
|
MAIN
|
|
|
|
DEFER INTERRUPT
|
|
CALL STARTLOG("irprmt36.log")
|
|
CALL ARG_VAL(1) RETURNING usuarios
|
|
CALL ARG_VAL(2) RETURNING clave
|
|
|
|
CONNECT TO "smarmotech" USER usuarios USING clave
|
|
|
|
CALL proceso()
|
|
|
|
END MAIN
|
|
FUNCTION proceso()
|
|
|
|
DEFINE
|
|
items RECORD LIKE irtb00002.*,
|
|
answer STRING
|
|
|
|
DECLARE buscaitems CURSOR FOR
|
|
SELECT a.cod_n,
|
|
a.cod_grupo,
|
|
a.cod_tipo,
|
|
a.cod_sec,
|
|
ISNULL(SUM(b.cantidad_2), 0),
|
|
ISNULL(a.exist_min, 0),
|
|
ISNULL(c.costo_st, 0),
|
|
a.id_maintainx,
|
|
a.descrip_esp
|
|
FROM irtb00002 a,
|
|
irtb00006 b
|
|
LEFT OUTER
|
|
JOIN irtb00013 c
|
|
ON b.cod_n = c.cod_n
|
|
AND b.cod_grupo = c.cod_grupo
|
|
AND b.cod_tipo = c.cod_tipo
|
|
AND b.cod_Sec = c.cod_sec
|
|
AND c.mes_fin = 12
|
|
AND c.ano = 2026
|
|
WHERE a.cod_n = b.cod_n
|
|
AND a.cod_grupo = b.cod_grupo
|
|
AND a.cod_tipo = b.cod_tipo
|
|
AND a.cod_Sec = b.cod_sec
|
|
AND a.enviarMX IS NOT NULL
|
|
AND a.status_t IS NULL
|
|
AND b.status_t IS NULL
|
|
GROUP BY a.cod_n,
|
|
a.cod_grupo,
|
|
a.cod_tipo,
|
|
a.cod_sec,
|
|
a.exist_min,
|
|
a.id_maintainx,
|
|
c.costo_st,
|
|
a.descrip_esp
|
|
|
|
FOREACH buscaitems
|
|
INTO items.cod_n,
|
|
items.cod_grupo,
|
|
items.cod_tipo,
|
|
items.cod_sec,
|
|
items.existencia,
|
|
items.exist_min,
|
|
items.descrip_ing,
|
|
items.id_maintainx,
|
|
items.descrip_esp
|
|
|
|
CALL ApiMaintainR(
|
|
'PATCH', items.id_maintainx, items.*, usuarios)
|
|
RETURNING answer
|
|
DISPLAY "PROCESE ESTE ITEM: ",
|
|
items.cod_n,
|
|
"-",
|
|
items.cod_grupo,
|
|
"-",
|
|
items.cod_tipo,
|
|
"-",
|
|
items.cod_sec,
|
|
" answ: ",
|
|
answer
|
|
END FOREACH
|
|
|
|
END FUNCTION
|