public static List <object> ObtenerDatosSAP() { ICPruebaEntities db = new ICPruebaEntities(); List <object> listaSAP = new List <object>(); //DatosPolizasSAP objDatosPoliza = new DatosPolizasSAP(); string rutaSAP = string.Empty; string RutaArchivo = string.Empty; string DescripcionMensaje = string.Empty; string NumeroPoliza = string.Empty; string NombreArchivo = string.Empty; string Sentido = string.Empty; string SentidoSAP = string.Empty; string descripcion = string.Empty; //string[] DatosArchivoPoliza; string[] Letras; string Poliza1 = string.Empty; string Estado = string.Empty; string Enviado = string.Empty; string Rechazado = string.Empty; string Reprocesado = string.Empty; int TotalArchivos = 0; string FechaCreacion = string.Empty; string NombrePoliza = string.Empty; //string IdDevengo = "";// Session["IdDevengo"].ToString(); //string ClaseDocumento = ""; //Session["ClaseDocumento"].ToString(); //Obtenemos ruta configurable de base de datos var ruta = from datos in db.parametrosCargaDocumento where datos.idDocumento == "SAP" select new { datos.pathURL }; foreach (var item in ruta) { rutaSAP = item.pathURL; } //Validamos que existe la ruta if (Directory.Exists(rutaSAP) == false) { Directory.CreateDirectory(rutaSAP); } else { //Buscamos dentro de la carpeta los Archivos string[] Archivos = Directory.GetFiles(rutaSAP, "*.csv"); TotalArchivos = Archivos.Length; //Validamos que si alla archivos if (TotalArchivos != 0) { //DatosArchivoPoliza = NombreArchivoPoliza.Split('_'); //Poliza1 = DatosArchivoPoliza[0].ToString(); //SentidoPoliza = DatosArchivoPoliza[1].ToString(); //Recorremos uno por uno, para obtener nombre del archivo y el contenido foreach (var file in Archivos) { //Obtenemos ruta del archivo RutaArchivo = file; //Obtenemos nombre del archivo NombreArchivo = Path.GetFileName(RutaArchivo); FechaCreacion = System.IO.File.GetCreationTime(RutaArchivo).ToString("yyyy/MM/dd"); //Sacamos informacion del nombre del archivo Letras = NombreArchivo.Split('_'); NumeroPoliza = Letras[0].ToString(); SentidoSAP = Letras[2].ToString(); if (SentidoSAP == "S1") { Sentido = "INGRESO"; } if (SentidoSAP == "S3") { Sentido = "COSTO"; } if (SentidoSAP == "SA") { Sentido = "FLUCTUACION"; } //Validamos //Se buscan archivos respuesta de SAP if (RutaArchivo.Contains(NumeroPoliza + "_EXITO_" + SentidoSAP) || RutaArchivo.Contains(NumeroPoliza + "_ERROR_" + SentidoSAP)) { //Validamosn estatus Estado if (Letras[1].ToString() == "EXITO") { Estado = "Exitoso"; Enviado = "True"; } if (Letras[1].ToString() == "ERROR") { Estado = "Rechazado"; Enviado = "False"; } //Validamos Rechazado //Erro = Rechazado //Exito = Exitoso if (Letras[1].ToString() == "Exito") { Rechazado = "False"; } else { Rechazado = "True"; } Reprocesado = "False"; //Obtenemos contenido del archivo GC.Collect(); StreamReader sr = new StreamReader(RutaArchivo); DescripcionMensaje = sr.ReadToEnd(); string[] des = DescripcionMensaje.Split('\n'); foreach (var item in des) { if (item != "") { string[] campo = item.Split(',', '\t'); descripcion += campo[4].ToString() + " "; } } sr.Close(); var Nombre = from P in db.Polizas where P.Sentido == Sentido && P.Poliza == NumeroPoliza select new { P.Poliza, P.Sentido, P.Estado, P.Nombre, P.DescripcionMensaje }; foreach (var item in Nombre) { NombrePoliza = item.Nombre; } //Atualizamos datos Respuesta SAP int a = db.usp_InsertarDatosPolizaSAP(0, Sentido, Estado, true, NombrePoliza, NumeroPoliza, descripcion, Rechazado, Reprocesado, NumeroPoliza, true); descripcion = ""; } } //Si esta rechazado enviamos SMS var Rechazo = (from P in db.Polizas where P.Estado == "Rechazado" select P).Count(); if (Rechazo > 0) { //Se genera Archivo LOG ReporteRechazoSAP(); //GenerarPolizas.EnviarSMS("5517628128", "Mensaje Polizas Rechazadas", @"C:\RepositoriosDocs\SMS\envia_sms.bat"); //GenerarPolizas.EnviarSMS("", "Mensaje Polizas Rechazadas", "");//XCV } } } return(listaSAP); }
public JsonResult EnviarPolizas() { object respuesta = null; try { string Ruta = string.Empty; string rutaArchivos = string.Empty; string ClaseDocumentoS = string.Empty; string ClaseDocumentoN = string.Empty; string ClaseDocumento = string.Empty; string FechaCreacion = string.Empty; string NombreArchivo = string.Empty; string rutaArchivoIngreso = string.Empty; string rutaArchivoCostos = string.Empty; string rutaArchivoFluctuacion = string.Empty; string Poliza = string.Empty; int IdDevengo = 0; DateTime _dPeriodo = (DateTime)Session["periodoContable"]; string _sPeriodo = _dPeriodo.ToShortDateString(); StringBuilder sb = new StringBuilder(); //Obtenemos rutas configurables de base de datos string[] Rutas = GenerarPolizas.RutasArchivosConfigurables(1); rutaArchivoIngreso = Rutas[0].ToString(); rutaArchivoCostos = Rutas[1].ToString(); rutaArchivoFluctuacion = Rutas[2].ToString(); ClaseDocumento = Session["ClaseDocumento"].ToString(); Poliza = Session["Poliza"].ToString(); string Id = Session["IdDevengo"].ToString(); if (ClaseDocumento == "INGRESO") { ClaseDocumentoS = "S1"; ClaseDocumentoN = "ING"; rutaArchivos = rutaArchivoIngreso; } if (ClaseDocumento == "COSTO") { ClaseDocumentoS = "S3"; ClaseDocumentoN = "COS"; rutaArchivos = rutaArchivoCostos; } if (ClaseDocumento == "FLUCTUACION") { ClaseDocumentoS = "Sa"; ClaseDocumentoN = "FLU"; rutaArchivos = rutaArchivoFluctuacion; } //Generamos Nombre del archivo NombreArchivo = Poliza + "_" + ClaseDocumentoS + "_" + ClaseDocumentoN + "_" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".csv"; Ruta = rutaArchivos + NombreArchivo; FechaCreacion = System.IO.File.GetCreationTime(Ruta).ToString("yyyy/MM/dd"); //Escribimos contenido dentro del archivo using (StreamWriter sw = new StreamWriter(Ruta)) { //sb.Append(""); //sb.AppendLine(); //sw.WriteLine(""); //Panel1 string LineaBodyTipo0 = string.Format("{0},{1},{2}", "0", "500", "MRT11412"); sw.WriteLine(LineaBodyTipo0); sb.Append(LineaBodyTipo0); sb.AppendLine(); //Panel2 IdDevengo = int.Parse(Id); var LineaArchivo1 = from Linea1 in db.LineaArchivo1Roaming where Linea1.Id_Devengo == IdDevengo && Linea1.ClaseDocumento == ClaseDocumentoS select Linea1; foreach (var item in LineaArchivo1) { string LineaBodyTipo1 = string.Format("{0}\t{1}\t{2}\t{3}\t{4}\t{5}\t{6}\t{7}\t{8}\t{9}\t{10}\t{11}\t{12}\t{13}\t{14}\t{15}\t{16}\t{17}", item.Reg, item.Trans, item.ClaseDocumento, item.Sociedad, item.Moneda, item.TipoCambio, item.Reg, item.FechaDocumento, item.FechaContabilizacion, item.FechaReversion, item.TextoCabecera, item.MotivoReversion, item.Libro, item.Referencia, item.Referencia2, item.IdCasuistica, "1", item.Referencia22, item.CalculoAut); sw.WriteLine(LineaBodyTipo1); sb.Append(LineaBodyTipo1); sb.AppendLine(); } //Panel3 var LineaArchivo2 = from Linea2 in db.LineaArchivo2Roaming where Linea2.Id_Devengo == IdDevengo && Linea2.Sentido == ClaseDocumento select Linea2; foreach (var item in LineaArchivo2) { string LineaBodyTipo2 = string.Format("{0}\t{1}\t{2}\t{3}\t{4}\t{5}\t{6}\t{7}\t{8}\t{9}\t{10}\t{11}\t{12}\t{13}\t{14}\t{15}\t{16}\t{17}\t{18}\t{19}\t{20}\t{21}\t{22}\t{23}\t{24}\t{25}\t{26}\t{27}\t{28}\t{29}\t{30}\t{31}\t{32}\t{33}\t{34}\t{35}\t{36}\t{37}\t{38}\t{39}\t{40}\t{41}\t{42}\t{43}\t{44}\t{45}\t{46}\t{47}\t{48}\t{49}\t{50}\t{51}\t{52}\t{53}\t{54}", item.REG, item.ClaveContab, item.CME, item.ImporteMD, item.IndicadorImpuesto, item.CentroCosto, item.Orden, item.FechaBase, item.Asignacion, item.TextoPosicion, item.CondPago, item.BloqPago, item.ViaPago, item.BcoPropio, item.Cuenta, item.REF1, item.REF2, item.lineaDeNegocio, item.Campo20, item.Campo21, item.Campo22, item.SociedadCuentasDeIngresos, item.Subsegm, item.Servicio, item.Region, item.Licencia, item.TipoDeTrafico, item.Ambito, item.Producto, item.Geografia, item.Paquetes, item.PlanRegulatorio, item.EmpresaGrupo, item.REF3, item.AreaFuncional, item.CalculoImpuesto, item.FechaValor, item.IndicadorActividadPEl, item.RegionEstadoFederalLandProvinciaCondado, item.ClaseDeDistribuciónIRPF, item.Campo42, item.Proyecto, item.SociedadGLAsociada, item.Campo45, item.CodEmplazFiscal, item.Grafo, item.Grafo2, item.Subsegmento, item.Paquetes, item.SubtipoLinea, item.Canal, item.ServiciosPA, item.SegmentoPA, item.importebaseimpuesto, item.ASIENTO); sw.WriteLine(LineaBodyTipo2); sb.Append(LineaBodyTipo2); sb.AppendLine(); } sw.Close(); } int i = db.usp_InsertarDatosPolizaSAP(IdDevengo, ClaseDocumento, "EnviadoSAP", true, NombreArchivo, "", "", "", "", Poliza, true); //EnviarCorreo(ClaseDocumento, _sPeriodo, true); //XCV respuesta = new { success = true, results = "no" }; } catch (Exception ex) { respuesta = new { success = false, results = ex.Message }; } return(Json(respuesta, JsonRequestBehavior.AllowGet)); }
public static void GeneraPolizasLDI(DateTime Periodo, string Usuario) { ICPruebaEntities db = new ICPruebaEntities(); string Ruta = string.Empty; string rutaArchivoIngreso = string.Empty; string rutaArchivoCostos = string.Empty; string rutaArchivoFluctuacion = string.Empty; string ClaseDocumentoS = string.Empty; string ClaseDocumentoN = string.Empty; string ClaseDocumento = string.Empty; string NombreArchivo = string.Empty; string Poliza = string.Empty; StringBuilder sb = new StringBuilder(); string PeriodoContable = Periodo.ToString("dd/MM/yyyy"); db.usp_InsertarLinea1(); db.usp_InsertarArchivoLinea2(); //Obtenemos rutas configurables de base de datos string[] Rutas = GenerarPolizas.RutasArchivosConfigurables(); rutaArchivoIngreso = Rutas[0].ToString(); rutaArchivoCostos = Rutas[1].ToString(); rutaArchivoFluctuacion = Rutas[2].ToString(); //ClaseDocumento = Session["ClaseDocumento"].ToString(); //Poliza = Session["Poliza"].ToString(); //string Id = Session["IdDevengo"].ToString(); //Generacion Polizas Ingresos var polizasIngresos = from ListadoPoliza in db.Polizas where ListadoPoliza.Sentido == "INGRESO" && ListadoPoliza.PeriodoConsumido == Periodo select ListadoPoliza; foreach (var itemPolizas in polizasIngresos) { ClaseDocumento = "INGRESO"; ClaseDocumentoS = "S1"; ClaseDocumentoN = "ING"; //Generamos Nombre del archivo NombreArchivo = itemPolizas.Poliza + "_" + ClaseDocumentoS + "_" + ClaseDocumentoN + "_" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".csv"; Ruta = rutaArchivoIngreso + NombreArchivo; //FechaCreacion = System.IO.File.GetCreationTime(Ruta).ToString("yyyy/MM/dd"); //Escribimos contenido dentro del archivo using (StreamWriter sw = new StreamWriter(Ruta)) { //sb.Append(""); //sb.AppendLine(); //sw.WriteLine(""); //Panel1 string LineaBodyTipo0 = string.Format("{0},{1},{2}", "0", "500", Usuario); sw.WriteLine(LineaBodyTipo0); sb.Append(LineaBodyTipo0); sb.AppendLine(); //Panel2 // IdDevengo = int.Parse(Id); var LineaArchivo1 = from Linea1 in db.LineaArchivo1 where Linea1.Id_Devengo == itemPolizas.IdPoliza && Linea1.ClaseDocumento == ClaseDocumentoS select Linea1; foreach (var item in LineaArchivo1) { string LineaBodyTipo1 = string.Format("{0},{1},{2},{3},{4},{5},{6},{7},{8},{9},{10},{11},{12},{13},{14},{15},{16},{17}", item.Reg, item.Trans, item.ClaseDocumento, item.Sociedad, item.Moneda, item.TipoCambio, item.Reg, item.FechaDocumento, item.FechaContabilizacion, item.FechaReversion, item.TextoCabecera, item.MotivoReversion, item.Libro, item.Referencia, item.Referencia2, item.IdCasuistica, item.Asiento, item.Referencia22, item.CalculoAut); sw.WriteLine(LineaBodyTipo1); sb.Append(LineaBodyTipo1); sb.AppendLine(); } //Panel3 //Se generan todas por primera vez var LineaArchivo2 = from Linea2 in db.LineaArchivo2 where Linea2.Id_Devengo == itemPolizas.IdPoliza && Linea2.Sentido == ClaseDocumento select Linea2; foreach (var item in LineaArchivo2) { string LineaBodyTipo2 = string.Format("{0},{1},{2},{3},{4},{5},{6},{7},{8},{9},{10},{11},{12},{13},{14},{15},{16},{17},{18},{19},{20},{21},{22},{23},{24},{25},{26},{27},{28},{29},{30},{31},{22},{33},{34},{35},{36},{37},{38},{39},{40},{41},{42},{43},{44},{45},{46},{47},{48},{49},{50},{51},{52},{53},{54}", item.REG, item.ClaveContab, item.CME, item.ImporteMD, item.IndicadorImpuesto, item.CentroCosto, item.Orden, item.FechaBase, item.Asignacion, item.TextoPosicion, item.CondPago, item.BloqPago, item.ViaPago, item.BcoPropio, item.Cuenta, item.REF1, item.REF2, item.lineaDeNegocio, item.Campo20, item.Campo21, item.Campo22, item.SociedadCuentasDeIngresos, item.Subsegm, item.Servicio, item.Region, item.Licencia, item.TipoDeTrafico, item.Ambito, item.Producto, item.Geografia, item.Paquetes, item.PlanRegulatorio, item.EmpresaGrupo, item.REF3, item.AreaFuncional, item.CalculoImpuesto, item.FechaValor, item.IndicadorActividadPEl, item.RegionEstadoFederalLandProvinciaCondado, item.ClaseDeDistribuciónIRPF, item.Campo42, item.Proyecto, item.SociedadGLAsociada, item.Campo45, item.CodEmplazFiscal, item.Grafo, item.Grafo2, item.Subsegmento, item.Paquetes, item.SubtipoLinea, item.Canal, item.ServiciosPA, item.SegmentoPA, item.importebaseimpuesto, item.ASIENTO); sw.WriteLine(LineaBodyTipo2); sb.Append(LineaBodyTipo2); sb.AppendLine(); } sw.Close(); } int i = db.usp_InsertarDatosPolizaSAP(itemPolizas.IdPoliza, ClaseDocumento, "EnviadoSAP", true, NombreArchivo, "", "", "", "", itemPolizas.Poliza, true); } //EnviarCorreo.EnviarCorreoLDI("INGRESO", PeriodoContable); //XCV //************************************************************** //Generacion Polizas Costos var polizasCostos = from ListadoPoliza in db.Polizas where ListadoPoliza.Sentido == "COSTO" && ListadoPoliza.PeriodoConsumido == Periodo select ListadoPoliza; foreach (var itemPolizas in polizasCostos) { ClaseDocumento = "COSTO"; ClaseDocumentoS = "S3"; ClaseDocumentoN = "EGR"; //Generamos Nombre del archivo NombreArchivo = itemPolizas.Poliza + "_" + ClaseDocumentoS + "_" + ClaseDocumentoN + "_" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".csv"; Ruta = rutaArchivoCostos + NombreArchivo; //FechaCreacion = System.IO.File.GetCreationTime(Ruta).ToString("yyyy/MM/dd"); //Escribimos contenido dentro del archivo using (StreamWriter sw = new StreamWriter(Ruta)) { //sb.Append(""); //sb.AppendLine(); //sw.WriteLine(""); //Panel1 string LineaBodyTipo0 = string.Format("{0},{1},{2}", "0", "500", Usuario); sw.WriteLine(LineaBodyTipo0); sb.Append(LineaBodyTipo0); sb.AppendLine(); //Panel2 // IdDevengo = int.Parse(Id); var LineaArchivo1 = from Linea1 in db.LineaArchivo1 where Linea1.Id_Devengo == itemPolizas.IdPoliza && Linea1.ClaseDocumento == ClaseDocumentoS select Linea1; foreach (var item in LineaArchivo1) { string LineaBodyTipo1 = string.Format("{0},{1},{2},{3},{4},{5},{6},{7},{8},{9},{10},{11},{12},{13},{14},{15},{16},{17}", item.Reg, item.Trans, item.ClaseDocumento, item.Sociedad, item.Moneda, item.TipoCambio, item.Reg, item.FechaDocumento, item.FechaContabilizacion, item.FechaReversion, item.TextoCabecera, item.MotivoReversion, item.Libro, item.Referencia, item.Referencia2, item.IdCasuistica, item.Asiento, item.Referencia22, item.CalculoAut); sw.WriteLine(LineaBodyTipo1); sb.Append(LineaBodyTipo1); sb.AppendLine(); } //Panel3 //Se generan todas por primera vez var LineaArchivo2 = from Linea2 in db.LineaArchivo2 where Linea2.Id_Devengo == itemPolizas.IdPoliza && Linea2.Sentido == ClaseDocumento select Linea2; foreach (var item in LineaArchivo2) { string LineaBodyTipo2 = string.Format("{0},{1},{2},{3},{4},{5},{6},{7},{8},{9},{10},{11},{12},{13},{14},{15},{16},{17},{18},{19},{20},{21},{22},{23},{24},{25},{26},{27},{28},{29},{30},{31},{22},{33},{34},{35},{36},{37},{38},{39},{40},{41},{42},{43},{44},{45},{46},{47},{48},{49},{50},{51},{52},{53},{54}", item.REG, item.ClaveContab, item.CME, item.ImporteMD, item.IndicadorImpuesto, item.CentroCosto, item.Orden, item.FechaBase, item.Asignacion, item.TextoPosicion, item.CondPago, item.BloqPago, item.ViaPago, item.BcoPropio, item.Cuenta, item.REF1, item.REF2, item.lineaDeNegocio, item.Campo20, item.Campo21, item.Campo22, item.SociedadCuentasDeIngresos, item.Subsegm, item.Servicio, item.Region, item.Licencia, item.TipoDeTrafico, item.Ambito, item.Producto, item.Geografia, item.Paquetes, item.PlanRegulatorio, item.EmpresaGrupo, item.REF3, item.AreaFuncional, item.CalculoImpuesto, item.FechaValor, item.IndicadorActividadPEl, item.RegionEstadoFederalLandProvinciaCondado, item.ClaseDeDistribuciónIRPF, item.Campo42, item.Proyecto, item.SociedadGLAsociada, item.Campo45, item.CodEmplazFiscal, item.Grafo, item.Grafo2, item.Subsegmento, item.Paquetes, item.SubtipoLinea, item.Canal, item.ServiciosPA, item.SegmentoPA, item.importebaseimpuesto, item.ASIENTO); sw.WriteLine(LineaBodyTipo2); sb.Append(LineaBodyTipo2); sb.AppendLine(); } sw.Close(); } int i = db.usp_InsertarDatosPolizaSAP(itemPolizas.IdPoliza, ClaseDocumento, "EnviadoSAP", true, NombreArchivo, "", "", "", "", itemPolizas.Poliza, true); } //EnviarCorreo.EnviarCorreoLDI("COSTO", PeriodoContable); //XCV //************************************************************** //Generacion Polizas FluctuacionIngresos var polizasFluctuacionI = from ListadoPoliza in db.Polizas where ListadoPoliza.Sentido == "FLUCTUACIONINGRESO" && ListadoPoliza.PeriodoConsumido == Periodo select ListadoPoliza; foreach (var itemPolizas in polizasFluctuacionI) { ClaseDocumento = "FLUCTUACIONINGRESO"; ClaseDocumentoS = "SA"; ClaseDocumentoN = "FLUINGRESO"; //Generamos Nombre del archivo NombreArchivo = itemPolizas.Poliza + "_" + ClaseDocumentoS + "_" + ClaseDocumentoN + "_" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".csv"; Ruta = rutaArchivoFluctuacion + NombreArchivo; //FechaCreacion = System.IO.File.GetCreationTime(Ruta).ToString("yyyy/MM/dd"); //Escribimos contenido dentro del archivo using (StreamWriter sw = new StreamWriter(Ruta)) { //sb.Append(""); //sb.AppendLine(); //sw.WriteLine(""); //Panel1 string LineaBodyTipo0 = string.Format("{0},{1},{2}", "0", "500", Usuario); sw.WriteLine(LineaBodyTipo0); sb.Append(LineaBodyTipo0); sb.AppendLine(); //Panel2mo // IdDevengo = int.Parse(Id); var LineaArchivo1 = from Linea1 in db.LineaArchivo1 where Linea1.Id_Devengo == itemPolizas.IdPoliza && Linea1.ClaseDocumento == ClaseDocumentoS select Linea1; foreach (var item in LineaArchivo1) { string LineaBodyTipo1 = string.Format("{0},{1},{2},{3},{4},{5},{6},{7},{8},{9},{10},{11},{12},{13},{14},{15},{16},{17}", item.Reg, item.Trans, item.ClaseDocumento, item.Sociedad, item.Moneda, item.TipoCambio, item.Reg, item.FechaDocumento, item.FechaContabilizacion, item.FechaReversion, item.TextoCabecera, item.MotivoReversion, item.Libro, item.Referencia, item.Referencia2, item.IdCasuistica, item.Asiento, item.Referencia22, item.CalculoAut); sw.WriteLine(LineaBodyTipo1); sb.Append(LineaBodyTipo1); sb.AppendLine(); } //Panel3 //Se generan todas por primera vez var LineaArchivo2 = from Linea2 in db.LineaArchivo2 where Linea2.Id_Devengo == itemPolizas.IdPoliza && Linea2.Sentido == ClaseDocumento select Linea2; foreach (var item in LineaArchivo2) { string LineaBodyTipo2 = string.Format("{0},{1},{2},{3},{4},{5},{6},{7},{8},{9},{10},{11},{12},{13},{14},{15},{16},{17},{18},{19},{20},{21},{22},{23},{24},{25},{26},{27},{28},{29},{30},{31},{22},{33},{34},{35},{36},{37},{38},{39},{40},{41},{42},{43},{44},{45},{46},{47},{48},{49},{50},{51},{52},{53},{54}", item.REG, item.ClaveContab, item.CME, item.ImporteMD, item.IndicadorImpuesto, item.CentroCosto, item.Orden, item.FechaBase, item.Asignacion, item.TextoPosicion, item.CondPago, item.BloqPago, item.ViaPago, item.BcoPropio, item.Cuenta, item.REF1, item.REF2, item.lineaDeNegocio, item.Campo20, item.Campo21, item.Campo22, item.SociedadCuentasDeIngresos, item.Subsegm, item.Servicio, item.Region, item.Licencia, item.TipoDeTrafico, item.Ambito, item.Producto, item.Geografia, item.Paquetes, item.PlanRegulatorio, item.EmpresaGrupo, item.REF3, item.AreaFuncional, item.CalculoImpuesto, item.FechaValor, item.IndicadorActividadPEl, item.RegionEstadoFederalLandProvinciaCondado, item.ClaseDeDistribuciónIRPF, item.Campo42, item.Proyecto, item.SociedadGLAsociada, item.Campo45, item.CodEmplazFiscal, item.Grafo, item.Grafo2, item.Subsegmento, item.Paquetes, item.SubtipoLinea, item.Canal, item.ServiciosPA, item.SegmentoPA, item.importebaseimpuesto, item.ASIENTO); sw.WriteLine(LineaBodyTipo2); sb.Append(LineaBodyTipo2); sb.AppendLine(); } sw.Close(); } int i = db.usp_InsertarDatosPolizaSAP(itemPolizas.IdPoliza, ClaseDocumento, "EnviadoSAP", true, NombreArchivo, "", "", "", "", itemPolizas.Poliza, true); } //************************************************************** //Generacion Polizas FluctuacionCosto var polizasFluctuacionC = from ListadoPoliza in db.Polizas where ListadoPoliza.Sentido == "FLUCTUACIONCOSTO" && ListadoPoliza.PeriodoConsumido == Periodo select ListadoPoliza; foreach (var itemPolizas in polizasFluctuacionC) { ClaseDocumento = "FLUCTUACIONCOSTO"; ClaseDocumentoS = "SA"; ClaseDocumentoN = "FLUCOSTO"; //Generamos Nombre del archivo NombreArchivo = itemPolizas.Poliza + "_" + ClaseDocumentoS + "_" + ClaseDocumentoN + "_" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".csv"; Ruta = rutaArchivoFluctuacion + NombreArchivo; //FechaCreacion = System.IO.File.GetCreationTime(Ruta).ToString("yyyy/MM/dd"); //Escribimos contenido dentro del archivo using (StreamWriter sw = new StreamWriter(Ruta)) { //sb.Append(""); //sb.AppendLine(); //sw.WriteLine(""); //Panel1 string LineaBodyTipo0 = string.Format("{0},{1},{2}", "0", "500", Usuario); sw.WriteLine(LineaBodyTipo0); sb.Append(LineaBodyTipo0); sb.AppendLine(); //Panel2mo // IdDevengo = int.Parse(Id); var LineaArchivo1 = from Linea1 in db.LineaArchivo1 where Linea1.Id_Devengo == itemPolizas.IdPoliza && Linea1.ClaseDocumento == ClaseDocumentoS select Linea1; foreach (var item in LineaArchivo1) { string LineaBodyTipo1 = string.Format("{0},{1},{2},{3},{4},{5},{6},{7},{8},{9},{10},{11},{12},{13},{14},{15},{16},{17}", item.Reg, item.Trans, item.ClaseDocumento, item.Sociedad, item.Moneda, item.TipoCambio, item.Reg, item.FechaDocumento, item.FechaContabilizacion, item.FechaReversion, item.TextoCabecera, item.MotivoReversion, item.Libro, item.Referencia, item.Referencia2, item.IdCasuistica, item.Asiento, item.Referencia22, item.CalculoAut); sw.WriteLine(LineaBodyTipo1); sb.Append(LineaBodyTipo1); sb.AppendLine(); } //Panel3 //Se generan todas por primera vez var LineaArchivo2 = from Linea2 in db.LineaArchivo2 where Linea2.Id_Devengo == itemPolizas.IdPoliza && Linea2.Sentido == ClaseDocumento select Linea2; foreach (var item in LineaArchivo2) { string LineaBodyTipo2 = string.Format("{0},{1},{2},{3},{4},{5},{6},{7},{8},{9},{10},{11},{12},{13},{14},{15},{16},{17},{18},{19},{20},{21},{22},{23},{24},{25},{26},{27},{28},{29},{30},{31},{22},{33},{34},{35},{36},{37},{38},{39},{40},{41},{42},{43},{44},{45},{46},{47},{48},{49},{50},{51},{52},{53},{54}", item.REG, item.ClaveContab, item.CME, item.ImporteMD, item.IndicadorImpuesto, item.CentroCosto, item.Orden, item.FechaBase, item.Asignacion, item.TextoPosicion, item.CondPago, item.BloqPago, item.ViaPago, item.BcoPropio, item.Cuenta, item.REF1, item.REF2, item.lineaDeNegocio, item.Campo20, item.Campo21, item.Campo22, item.SociedadCuentasDeIngresos, item.Subsegm, item.Servicio, item.Region, item.Licencia, item.TipoDeTrafico, item.Ambito, item.Producto, item.Geografia, item.Paquetes, item.PlanRegulatorio, item.EmpresaGrupo, item.REF3, item.AreaFuncional, item.CalculoImpuesto, item.FechaValor, item.IndicadorActividadPEl, item.RegionEstadoFederalLandProvinciaCondado, item.ClaseDeDistribuciónIRPF, item.Campo42, item.Proyecto, item.SociedadGLAsociada, item.Campo45, item.CodEmplazFiscal, item.Grafo, item.Grafo2, item.Subsegmento, item.Paquetes, item.SubtipoLinea, item.Canal, item.ServiciosPA, item.SegmentoPA, item.importebaseimpuesto, item.ASIENTO); sw.WriteLine(LineaBodyTipo2); sb.Append(LineaBodyTipo2); sb.AppendLine(); } sw.Close(); } int i = db.usp_InsertarDatosPolizaSAP(itemPolizas.IdPoliza, ClaseDocumento, "EnviadoSAP", true, NombreArchivo, "", "", "", "", itemPolizas.Poliza, true); } //EnviarCorreo.EnviarCorreoLDI("FLUCTUACION", PeriodoContable); //XCV //ConectarSFTP(Ruta); //string NombrePoliza = Session["NombrePoliza"].ToString(); //string Estado = string.Empty; //if (Session["Estado"] != null) Estado = Session["Estado"].ToString(); else Estado = ""; //int i = db.usp_InsertarDatosPolizaSAP(IdDevengo, ClaseDocumento, Estado, NombreArchivo, "", "", "", "", Poliza); }