50 lines
1.3 KiB
Plaintext
50 lines
1.3 KiB
Plaintext
IMPORT util
|
|
|
|
FUNCTION requisicion_doc(data)
|
|
DEFINE data STRING,
|
|
idx SMALLINT
|
|
DEFINE p RECORD
|
|
credenciales RECORD
|
|
usuario,clave VARCHAR(50),
|
|
num_req INT
|
|
END RECORD,
|
|
documentos DYNAMIC ARRAY OF RECORD
|
|
contenido STRING,
|
|
nombre_file STRING
|
|
END RECORD,
|
|
mensajes RECORD
|
|
cod_msg INT,
|
|
mensaje_out STRING
|
|
END RECORD
|
|
|
|
END RECORD,
|
|
pfile BYTE,
|
|
pnombre STRING
|
|
|
|
CALL util.JSON.parse(data,p)
|
|
|
|
CONNECT TO "smarmotech" USER p.credenciales.usuario USING p.credenciales.clave
|
|
|
|
IF STATUS < 0 THEN
|
|
LET p.mensajes.cod_msg = STATUS
|
|
LET p.mensajes.mensaje_out = 'ERROR EN USUARIO CONECTANDOSE A LA BASE DE DATOS'
|
|
RETURN util.JSON.stringify(p)
|
|
END IF
|
|
|
|
LOCATE pfile IN MEMORY
|
|
DECLARE busca_file CURSOR FOR
|
|
SELECT a.documento,a.nombre_file FROM cotb00044 a
|
|
WHERE a.num_req = p.credenciales.num_req
|
|
|
|
LET idx = 1
|
|
FOREACH busca_file INTO pfile,pnombre
|
|
CALL pfile.writeFile(pnombre)
|
|
CALL file_to_b64(pnombre) RETURNING p.documentos[idx].contenido
|
|
LET p.documentos[idx].nombre_file=pnombre
|
|
|
|
LET idx = idx + 1
|
|
END FOREACH
|
|
DISCONNECT CURRENT
|
|
RETURN util.json.stringify(p)
|
|
|
|
END FUNCTION |