Files
MBS/WEBSERVICES/productos/vusuario.4gl
T

83 lines
2.1 KiB
Plaintext

IMPORT com
IMPORT util
TYPE t_sync_cmd RECORD
oper STRING,
data STRING
END RECORD
DEFINE url STRING
MAIN
CALL testrnc()
END MAIN
FUNCTION testrnc()
DEFINE pusuarios RECORD
usuario,clave VARCHAR(50),
sesion VARCHAR(10)
END RECORD,
R RECORD
pERROR STRING,
pbodega SMALLINT
END RECORD,d,ret,res STRING,
r_cmd t_sync_cmd
# LET url = "https://ws.marmotech.com.do/gas/ws/r/restserver"
LET url = "http://192.168.40.4/gas/ws/r/restserver"
LET pusuarios.usuario='jsoto'
LET pusuarios.clave = 'lmmjvsd2014'
LET pusuarios.sesion = 'ABRIR'
LET r_cmd.oper = 'v_usuarios'
LET r_cmd.data = util.JSON.stringify(pusuarios)
LET d = util.JSON.stringify(r_cmd)
DISPLAY "s-",d
CALL sync_send_command(url, d) RETURNING ret, res
DISPLAY "DATOS ",d," respuesta ",res
END FUNCTION
FUNCTION sync_send_command(url, cmd)
DEFINE url, cmd STRING
DEFINE result, tmp STRING
DEFINE http_req com.HTTPRequest
DEFINE http_resp com.HTTPResponse
TRY
LET http_req = com.HTTPRequest.Create(url)
CALL http_req.setConnectionTimeout(40)
CALL http_req.setTimeout(40)
CALL http_req.setMethod("POST")
CALL http_req.setCharset("UTF-8")
CALL http_req.setHeader("DBSync-Client","mbs")
CALL http_req.setHeader("Content-Type","dbsync/json")
CALL http_req.doTextRequest(cmd)
LET http_resp=http_req.getResponse()
IF http_resp.getStatusCode() != 200 THEN
RETURN http_resp.getStatusCode(), http_resp.getStatusDescription()
END IF
LET tmp = http_resp.getStatusDescription()
IF (tmp == "OK" || tmp == "no error" ) THEN
RETURN -1, SFMT("HTTP request status description: %1 ",tmp)
END IF
LET result = http_resp.getTextResponse()
CATCH
RETURN -2, SFMT("HTTP request error: STATUS=%1 (%2)",STATUS,SQLCA.SQLERRM)
END TRY
RETURN 0, result
END FUNCTION
FUNCTION show_sync_err(msg)
DEFINE msg STRING
CALL fgl_winmessage(%"ERROR", msg, "exclamation")
END FUNCTION