Files
MBS/WEBSERVICES/requisicion_documentos.4gl
T

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