Files
MBS/WEBSERVICES/pregunta.4gl
T

93 lines
3.0 KiB
Plaintext

IMPORT util
IMPORT os
IMPORT security
DEFINE j INT,
url_folder STRING,
tmpfile STRING
FUNCTION preguntas(pdata)
DEFINE pdata STRING
DEFINE credenciales RECORD
usuario,clave,referencia_pregunta VARCHAR(50)
END RECORD
DEFINE p RECORD
pregunta RECORD
id_pregunta INT,
pregunta VARCHAR(100),
fechaVence DATE,
cuenta INT,
referencia_p STRING
END RECORD,
referencias DYNAMIC ARRAY OF RECORD
descripcion STRING,
id INT
END RECORD,
mensajes RECORD
cod_msg INT,
descripcion STRING
END RECORD
END RECORD,
selec STRING,
idx INT
CALL util.JSON.parse(pdata,credenciales)
IF STATUS < 0 THEN
LET p.mensajes.cod_msg=400
LET p.mensajes.descripcion = 'ERROR EN CONEXION ',SQLCA.sqlerrm
RETURN util.JSON.stringify(p)
END IF
LET url_folder = FGL_GETENV("IMAGENES")
CONNECT TO "smarmotech" USER credenciales.usuario USING credenciales.clave
IF STATUS < 0 THEN
LET p.mensajes.cod_msg=400
LET p.mensajes.descripcion = 'ERROR EN CONEXION BASE DE DATOS ',SQLCA.sqlerrm
DISCONNECT CURRENT
RETURN util.JSON.stringify(p)
END IF
DISPLAY "<PREGUNTAS:>USUARIO: ",credenciales.usuario," pass ",credenciales.clave
LET selec =
"SELECT a.id_pregunta,a.pregunta,a.fechaVence,'0',RTRIM(a.referencia_pregunta) FROM encuestas.dbo.preguntas a
where
a.referencia_pregunta ='",credenciales.referencia_pregunta clipped,"'"
PREPARE comando FROM selec
EXECUTE comando INTO p.pregunta.* # USING credenciales.referencia_pregunta
IF STATUS = NOTFOUND THEN
LET p.mensajes.cod_msg=400
LET p.mensajes.descripcion = 'PREGUNTA CON LA REFERENCIA ',credenciales.referencia_pregunta CLIPPED,
' NO EXISTE'
DISCONNECT CURRENT
RETURN util.JSON.stringify(p)
END IF
LET selec =
"SELECT a.descripcion,a.idrow FROM encuestas.dbo.preguntas_referencias a, encuestas.dbo.preguntas b
where
a.referencia_pregunta= b.referencia_pregunta and b.estado = 'ONLINE'"
PREPARE comando_ref FROM selec
DECLARE busca_ref CURSOR FOR comando_Ref
LET idx = 1
FOREACH busca_ref INTO p.referencias[idx].*
LET idx = idx + 1
END FOREACH
DISCONNECT CURRENT
LET p.mensajes.cod_msg=200
LET p.mensajes.descripcion = 'GENERACION DATA SATISFACTORIA'
DISPLAY "NUMERO DE REFERENCIAS: ",idx
LET p.pregunta.cuenta = idx
DISPLAY "<PREGUNTA REF:>", p.pregunta.referencia_p
RETURN util.JSON.stringify(p)
END FUNCTION