/// <summary> /// Se consultan todas las operaciones de un agente entre un rango de numeros de orden /// Se arma un JSon para el request a partir de una clase ya definida. /// Se actualizan 2 variables publicas que se van a utilizar en Service1: /// _resultado: Diccionario string, string donde esta toda la respuesta de CV. /// _descripcionError: Obtenido desde CV. /// </summary> /// <param name="TransaccionLocal">Clase que se utiliza para armar el JSON</param> /// <returns>true: Se obtuvieron operaciones - false: No.</returns> public bool ConsultarOperaciones(AccesoDatos.ConexionDB2.Transaccion TransaccionLocal) { // Limpio el diccionario de respuesta para luego poder agregar orden _resultado.Clear(); ConsultarOrdenJSON _request = new ConsultarOrdenJSON(); _request.codigoAgente = TransaccionLocal.TramaMensaje.Substring(10, 4); _request.ordenDesde = TransaccionLocal.TramaMensaje.Substring(2, 6); _request.ordenHasta = (Convert.ToDecimal(TransaccionLocal.TramaMensaje.Substring(2, 6)) + 10).ToString(); string strJson = new JavaScriptSerializer().Serialize(_request); // Envio hacia Senebi string _response = RealizarEnvio(strJson, "consultarOrdenesBilateral"); // Lectura de JSON _resultado = ProcesarRespuesta(_response); string _codRespuesta = _resultado.FirstOrDefault(x => x.Key == "resultado").Value; if (_codRespuesta.ToUpper() == "OK") { _descripcionError = string.Empty; return(true); } else { _descripcionError = _resultado.FirstOrDefault(x => x.Key == "observaciones").Value; return(false); } }
/// <summary> /// Enviar solicitud de ingreso de orden (para alta de Tipo C o V) hacia CV. /// Se arma un JSon para el request a partir de una clase ya definida. /// Se actualizan 2 variables publicas que se van a utilizar en Service1: /// _resultado: Diccionario string, string donde esta toda la respuesta de CV. /// _descripcionError: Obtenido desde CV. /// </summary> /// <param name="TransaccionLocal">Clase a partir de la cual se arma el JSON</param> /// <returns>true: Se dio de alta la orden - false: No.</returns> public bool IngresarOrden(AccesoDatos.ConexionDB2.Transaccion TransaccionLocal) { // Limpio el diccionario de respuesta para luego poder agregar orden _resultado.Clear(); //ToDo: Verificar armado de mensaje IngresarOrdenJSON _requestJson = new IngresarOrdenJSON(); _requestJson.agente = TransaccionLocal.TramaMensaje.Substring(0, 4); _requestJson.idOrigen = TransaccionLocal.NumeroSecuencia; _requestJson.fechaOrigen = TransaccionLocal.FechaAlta; _requestJson.ejecucion = "SINCRONICA"; _requestJson.tipo = TransaccionLocal.TramaMensaje.Substring(4, 1); _requestJson.instrumento = TransaccionLocal.TramaMensaje.Substring(6, 5); _requestJson.cantidad = TransaccionLocal.TramaMensaje.Substring(11, 11); _requestJson.precio = TransaccionLocal.TramaMensaje.Substring(22, 8); _requestJson.formaOp = TransaccionLocal.TramaMensaje.Substring(5, 1); _requestJson.tipoVenc = "72"; _requestJson.comitente = TransaccionLocal.TramaMensaje.Substring(36, 4); _requestJson.cuit = "20999999994"; _requestJson.codigoAgente = TransaccionLocal.TramaMensaje.Substring(0, 4); string strJson = new JavaScriptSerializer().Serialize(_requestJson); // Envio hacia Senebi string _response = RealizarEnvio(strJson, "ingresarOrden"); // Lectura de JSON _resultado = ProcesarRespuesta(_response); string _codRespuesta = _resultado.FirstOrDefault(x => x.Key == "resultado").Value; if (_codRespuesta.ToUpper() == "OK") { _descripcionError = string.Empty; return(true); } else { _descripcionError = _resultado.FirstOrDefault(x => x.Key == "codigo").Value; _descripcionError += " - "; _descripcionError += _resultado.FirstOrDefault(x => x.Key == "observaciones").Value; return(false); } }