IMPORT util FUNCTION ordenes_ia(data) DEFINE i SMALLINT, data STRING DEFINE credenciales RECORD usuario VARCHAR(50), clave VARCHAR(50), orden INT, rnc VARCHAR(25) END RECORD DEFINE p RECORD orden_master RECORD ventas char(1) , cotizacion_no INT , num_oc INT , tipo_cliente SMALLINT , sec_cliente SMALLINT , cliente VARCHAR(100), rnc VARCHAR(25) END RECORD, listaordenes DYNAMIC ARRAY OF RECORD orden,coditizacion_no INT END RECORD, mensajes RECORD cod_msg INT, descripcion STRING END RECORD END RECORD, idx INT CALL util.JSON.parse(data,credenciales) DISPLAY " INFORMACION CLIENTE ",credenciales.usuario," clave ",credenciales.clave, " orden: ",credenciales.orden, " rnc: ",credenciales.rnc IF credenciales.orden IS NULL AND credenciales.rnc IS NULL THEN LET p.mensajes.cod_msg=400 LET p.mensajes.descripcion='DEBES ENVIAR UN PARAMETRO, ORDEN PEDIDOS o RNC cliente' RETURN util.JSON.stringify(p) END IF CONNECT TO "smarmotech" USER credenciales.usuario USING credenciales.clave IF STATUS < 0 THEN LET p.mensajes.cod_msg=400 LET p.mensajes.descripcion='USUARIO NO ES VALIDO' DISPLAY "USUARIO NO VALIDO ",SQLCA.sqlerrm DISPLAY "ORDEN: ",credenciales.orden DISCONNECT CURRENT RETURN util.JSON.stringify(p) END IF IF credenciales.orden IS NOT NULL THEN SELECT DISTINCT a.ventas , a.cotizacion_no , a.num_oc , a.tipo_cliente ,a.sec_cliente ,d.nombre,a.rnc INTO p.orden_master.* FROM vetb00050 a LEFT OUTER JOIN prtb00012 b ON b.cotizacion_no = a.cotizacion_no AND b.status_t IS NULL, vetb00004 d WHERE b.num_oc = credenciales.orden AND a.status_t IS NULL IF STATUS = NOTFOUND THEN LET p.mensajes.cod_msg = 400 LET p.mensajes.descripcion = 'COTIZACION NO EXISTE EN LA BASE DE DATOS' DISCONNECT CURRENT RETURN util.JSON.stringify(p) END IF END IF IF credenciales.rnc IS NOT NULL THEN DECLARE busca_orden CURSOR FOR SELECT DISTINCT a.ventas , a.cotizacion_no , a.num_oc , a.tipo_cliente ,a.sec_cliente ,d.nombre,a.rnc INTO p.orden_master.* FROM vetb00050 a INNER JOIN prtb00012 b ON b.cotizacion_no = a.cotizacion_no AND b.status_t IS NULL INNER JOIN vetb00004 d ON d.tipo_cliente = b.tipo_cliente AND d.sec_cliente = b.sec_cliente WHERE a.cotizacion_no = b.cotizacion_no AND a.rnc = credenciales.rnc AND a.status_t IS NULL LET idx = 1 FOREACH busca_orden LET p.listaordenes[idx].coditizacion_no = p.orden_master.cotizacion_no LET p.listaordenes[idx].orden = p.orden_master.num_oc LET idx = idx + 1 END FOREACH IF idx=1 THEN LET p.mensajes.cod_msg = 400 LET p.mensajes.descripcion = 'NO EXISTEN REGISTROS CON ESOS PARAMETROS' DISCONNECT CURRENT RETURN util.JSON.stringify(p) END IF END IF LET p.mensajes.cod_msg = 200 LET p.mensajes.descripcion = 'OPERACION EXITOSA' DISCONNECT CURRENT RETURN util.JSON.stringify(p) END FUNCTION