private void adicionarRegistroLogReporteBavaria(LogReporteBavaria item) { ICollection <DetLogBavaria> ICDetLogBavaria = new List <DetLogBavaria>(); ICDetLogBavaria = LeerInformacionDetLogBavaria(item); if (ICDetLogBavaria.Count > 0) { foreach (var itemDetLogBavaria in ICDetLogBavaria) { detLogBavarias.Add(ListDetLogBavaria(itemDetLogBavaria)); //itemDetLogBavaria.DEBA_SECUENCIA_NB, //itemDetLogBavaria.DEBA_LOGBAVARIA_NB, //itemDetLogBavaria.DEBA_OFICINA_NB, //itemDetLogBavaria.DEBA_TRANSACCION_NB, //itemDetLogBavaria.DEBA_LLAVE_V2, //itemDetLogBavaria.DEBA_NUMACEPTA_NB, //itemDetLogBavaria.DEBA_ESTADO_V2, //itemDetLogBavaria.DEBA_SOAPENVIADO_V2, //itemDetLogBavaria.DEBA_SOAPRECIBIDO_V2, //itemDetLogBavaria.DEBA_FECPROCESA_DT, //itemDetLogBavaria.DEBA_CAMPO1_NB, //itemDetLogBavaria.DEBA_CAMPO2_DT, //itemDetLogBavaria.DEBA_CAMPO3_V2); } } else { //...Falta Implementar } }
private void procesarDespacho(LogReporteBavaria logReporteBavaria) { validarDirectorio(logReporteBavaria.REBA_LLAVE_V2); console.CBlack(); console.Cc("Procesando Planilla : " + logReporteBavaria.REBA_LLAVE_V2 + " Fecha : " + logReporteBavaria.REBA_FECHA_DT); //System.Threading.Thread.Sleep(4000); ICConsultaInfoBavaria = new List <ConsultaInfoBavaria>(); string[] _nParametros; object[] _vParametros; _nParametros = new string[1] { ":VIAJ_NOPLANILLA" }; _vParametros = new object[1] { logReporteBavaria.REBA_LLAVE_V2 }; Factory data = new Factory(Usuario, Password, Ambiente); try { var dt = data.getTable("getInfoBavaria", _nParametros, _vParametros); if (dt.Rows.Count > 0) { foreach (DataRow item in dt.Rows) { ICConsultaInfoBavaria.Add(addInfoBavaria(item)); break; } } } catch (Exception ex) { ManejoError(ex, "var dtLogReporteDian = data.getTable(\"getLogReporteDian\", _nParametros, _vParametros);"); } if (ICConsultaInfoBavaria.Count > 0) { procesarDespachoBavaria(ICConsultaInfoBavaria, logReporteBavaria); } else { console.Ih(" No hay registro para procesar...!!!"); } }
private LogReporteBavaria addLogReporteBavaria(DataRow item) { console.Cgreen(); LogReporteBavaria logReporteDian = new LogReporteBavaria(); logReporteDian.REBA_SECUENCIA_NB = double.Parse(item["REBA_SECUENCIA_NB"].ToString()); logReporteDian.REBA_OFICINA_NB = int.Parse(item["REBA_OFICINA_NB"].ToString()); logReporteDian.REBA_TRANSACCION_NB = int.Parse(item["REBA_TRANSACCION_NB"].ToString()); logReporteDian.REBA_LLAVE_V2 = item["REBA_LLAVE_V2"].ToString(); logReporteDian.REBA_FECHA_DT = DateTime.Parse(item["REBA_FECHA_DT"].ToString()); logReporteDian.REBA_ESTADO_V2 = item["REBA_ESTADO_V2"].ToString(); try { logReporteDian.REBA_CAMPO1_NB = double.Parse(item["REBA_CAMPO1_NB"].ToString()); } catch (Exception ex) { logReporteDian.REBA_CAMPO1_NB = 0; } try { logReporteDian.REBA_CAMPO2_V2 = item["REBA_CAMPO2_DT"].ToString(); } catch (Exception ex) { logReporteDian.REBA_CAMPO2_V2 = string.Empty; } try { logReporteDian.REBA_CAMPO3_DT = DateTime.Parse(item["REBA_CAMPO3_V2"].ToString()); } catch (Exception ex) { logReporteDian.REBA_CAMPO3_DT = DateTime.UtcNow; } console.Cc("Adjuntando planilla : " + logReporteDian.REBA_LLAVE_V2 + " Emitida : " + logReporteDian.REBA_FECHA_DT); return(logReporteDian); }
private ICollection <DetLogBavaria> LeerInformacionDetLogBavaria(LogReporteBavaria itemLogReporteBavaria) { ICollection <DetLogBavaria> ICDetLogBavaria = new List <DetLogBavaria>(); string[] _nParametros; object[] _vParametros; _nParametros = new string[3] { ":DEBA_LOGBAVARIA", ":DEBA_OFICINA", ":DEBA_LLAVE" }; _vParametros = new object[3] { itemLogReporteBavaria.REBA_SECUENCIA_NB, itemLogReporteBavaria.REBA_OFICINA_NB, itemLogReporteBavaria.REBA_LLAVE_V2 }; Factory data = new Factory(Usuario, Password, Ambiente); try { var dt = data.getTable("getDetalleDetLogBavaria", _nParametros, _vParametros); if (dt.Rows.Count > 0) { foreach (DataRow item in dt.Rows) { try { ICDetLogBavaria.Add(addInformacionDetLogBavaria(item)); } catch (Exception exx) { ManejoError(exx, "ICInformacionDian.Add(addInformacionDian(item));"); } break; } } } catch (Exception ex) { ManejoError(ex, "var dtLogReporteDian = data.getTable(\"getLogReporteDian\", _nParametros, _vParametros);"); } return(ICDetLogBavaria); }
private LogReporteBavaria addLogReporteBavaria(DataRow item) { LogReporteBavaria logReporteBavaria = new LogReporteBavaria(); logReporteBavaria.REBA_SECUENCIA_NB = double.Parse(item["REBA_SECUENCIA_NB"].ToString()); logReporteBavaria.REBA_OFICINA_NB = int.Parse(item["REBA_OFICINA_NB"].ToString()); logReporteBavaria.REBA_TRANSACCION_NB = int.Parse(item["REBA_TRANSACCION_NB"].ToString()); logReporteBavaria.REBA_LLAVE_V2 = item["REBA_LLAVE_V2"].ToString(); logReporteBavaria.REBA_FECHA_DT = DateTime.Parse(item["REBA_FECHA_DT"].ToString()); logReporteBavaria.REBA_ESTADO_V2 = item["REBA_ESTADO_V2"].ToString(); try { logReporteBavaria.REBA_CAMPO1_NB = double.Parse(item["REBA_CAMPO1_NB"].ToString()); } catch (Exception ex) { logReporteBavaria.REBA_CAMPO1_NB = 0; } try { logReporteBavaria.REBA_CAMPO2_V2 = item["REBA_CAMPO2_V2"].ToString(); } catch (Exception ex) { logReporteBavaria.REBA_CAMPO2_V2 = string.Empty; } try { logReporteBavaria.REBA_CAMPO3_DT = DateTime.Parse(item["REBA_CAMPO3_DT"].ToString()); } catch (Exception ex) { logReporteBavaria.REBA_CAMPO3_DT = DateTime.UtcNow; } return(logReporteBavaria); }
private void actualizarRegistro(ConsultaInfoBavaria iCConsultaInfoBavaria, XmlDocument insumoXML, XmlDocument soapReturn, LogReporteBavaria logReporteBavaria, double success, string estado) { console.Cgreen(); switch (estado) { case "R": { using (Factory data = new Factory(Usuario, Password, Ambiente)) { console.Ih(" !! Insertando Registro en la Tabla Det_log_Bavaria "); string[] _nParametros; object[] _vParametros; //:filename,:filedata,:companyid,:accountid,:status,:transactionid,:xmlfactura,:soapenviado,:soaprespuesta _nParametros = new string[7] { ":logbavaria", ":oficina", ":llave", ":numacepta", ":estado", ":Bavariasoapenviado", ":Bavariasoaprecibido" }; _vParametros = new object[7] { logReporteBavaria.REBA_SECUENCIA_NB, logReporteBavaria.REBA_OFICINA_NB, logReporteBavaria.REBA_LLAVE_V2, -1, "R", insumoXML.InnerXml, soapReturn.InnerXml }; console.CRed(); console.Ih("Registro Rechazado "); //console.Cgreen(); console.Ih(" Insertando registro en la tabla DET_LOG_BAVARIA. "); //System.Threading.Thread.Sleep(1000); data.executeCommand("InsertDetLogBavaria", _nParametros, _vParametros); } using (Factory data = new Factory(Usuario, Password, Ambiente)) { console.Ih(" !! Insertando Registro en la Tabla Det_log_Bavaria "); string[] _nParametros; object[] _vParametros; //:filename,:filedata,:companyid,:accountid,:status,:transactionid,:xmlfactura,:soapenviado,:soaprespuesta _nParametros = new string[3] { ":REBA_ESTADO_V2", ":REBA_SECUENCIA_NB", ":REBA_OFICINA_NB" }; _vParametros = new object[3] { GetEstado(soapReturn, logReporteBavaria.REBA_LLAVE_V2), logReporteBavaria.REBA_SECUENCIA_NB, logReporteBavaria.REBA_OFICINA_NB }; console.Ih(" Actualizando el registro en la tabla LOG_REPORTE_BAVARIA. "); System.Threading.Thread.Sleep(1000); data.executeCommand("UpdateLogReporteBavaria", _nParametros, _vParametros); } break; } case "E": { using (Factory data = new Factory(Usuario, Password, Ambiente)) { console.Ih(" !! Insertando Registro en la Tabla Det_log_Bavaria "); string[] _nParametros; object[] _vParametros; //:filename,:filedata,:companyid,:accountid,:status,:transactionid,:xmlfactura,:soapenviado,:soaprespuesta _nParametros = new string[7] { ":logbavaria", ":oficina", ":llave", ":numacepta", ":estado", ":Bavariasoapenviado", ":Bavariasoaprecibido" }; _vParametros = new object[7] { logReporteBavaria.REBA_SECUENCIA_NB, logReporteBavaria.REBA_OFICINA_NB, logReporteBavaria.REBA_LLAVE_V2, GetNumAceptacion(soapReturn, logReporteBavaria.REBA_LLAVE_V2), GetEstado(soapReturn, logReporteBavaria.REBA_LLAVE_V2), insumoXML.InnerXml, soapReturn.InnerXml }; console.Cblue(); console.Ih("Numero de aprobacion ==> " + GetNumAceptacion(soapReturn, logReporteBavaria.REBA_LLAVE_V2)); console.Cgreen(); console.Ih(" Insertando registro en la tabla DET_LOG_BAVARIA. "); //System.Threading.Thread.Sleep(1000); data.executeCommand("InsertDetLogBavaria", _nParametros, _vParametros); } using (Factory data = new Factory(Usuario, Password, Ambiente)) { console.Ih(" !! Insertando Registro en la Tabla Det_log_Bavaria "); string[] _nParametros; object[] _vParametros; //:filename,:filedata,:companyid,:accountid,:status,:transactionid,:xmlfactura,:soapenviado,:soaprespuesta _nParametros = new string[3] { ":REBA_ESTADO_V2", ":REBA_SECUENCIA_NB", ":REBA_OFICINA_NB" }; _vParametros = new object[3] { GetEstado(soapReturn, logReporteBavaria.REBA_LLAVE_V2), logReporteBavaria.REBA_SECUENCIA_NB, logReporteBavaria.REBA_OFICINA_NB }; console.Ih(" Actualizando el registro en la tabla LOG_REPORTE_BAVARIA. "); System.Threading.Thread.Sleep(1000); data.executeCommand("UpdateLogReporteBavaria", _nParametros, _vParametros); } break; } default: break; } }
private void HttpWebProcesarReturn(ConsultaInfoBavaria iCConsultaInfoBavaria, XmlDocument insumoXML, XmlDocument soapReturn, LogReporteBavaria logReporteBavaria) { XmlNodeList elemList = soapReturn.GetElementsByTagName("ns1:nuevo_manifiestoResponse");//ns1: double success = -1; for (int i = 0; i < elemList.Count; i++) { XmlNode xmlnode = elemList.Item(0); string retorno = xmlnode.InnerText; if (retorno.Contains("error\":\"\"")) { console.Cgreen(); console.Ih(" Planilla Reportada con Exito "); System.Threading.Thread.Sleep(2000); actualizarRegistro(iCConsultaInfoBavaria, insumoXML, soapReturn, logReporteBavaria, success, "E"); break; } else { console.CRed(); console.Ih(" Error al reportar la planilla "); actualizarRegistro(iCConsultaInfoBavaria, insumoXML, soapReturn, logReporteBavaria, success, "R"); System.Threading.Thread.Sleep(1000); } } }
private void procesarDespachoBavaria(ICollection <ConsultaInfoBavaria> iCConsultaInfoBavaria, LogReporteBavaria logReporteBavaria) { string ruta = @"c:\transer\ws\Bavaria\" + logReporteBavaria.REBA_LLAVE_V2 + @"\" + logReporteBavaria.REBA_LLAVE_V2; foreach (var item in iCConsultaInfoBavaria) { console.Ih("=> Procesando planilla : " + item.VIAJ_NOPLANILLA_V2); string InsumoXmlBavaria = crearXMLBavaria(item); try { console.Ih(" Creando Insumo XML Bavaria"); //System.Threading.Thread.Sleep(4000); XmlDocument insumoXML = CreateSoapEnvelopeBavaria(InsumoXmlBavaria); insumoXML.Save(ruta + "_Insumo.xml"); console.Ih(" Enviando Insumo XML "); //System.Threading.Thread.Sleep(4000); string HttpWebReturn = httpsSendXmlDocument(insumoXML.InnerXml); XmlDocument soapReturn = CreateSoapEnvelopeBavaria(HttpWebReturn); soapReturn.Save(ruta + "_Respuesta.xml"); console.Ih(" Procesando Respuesta "); //System.Threading.Thread.Sleep(4000); HttpWebProcesarReturn(item, insumoXML, soapReturn, logReporteBavaria); } catch (Exception ex) { using (StreamWriter writer = new StreamWriter(ruta, true)) { writer.WriteLine("Se presento un Error al Momento de generar el Insumo XML"); writer.WriteLine("A continuacion se describe el detalle del error. "); writer.WriteLine(ex.Message); } } } }