public void procesoCarga() { // Ir al directorio del envío Unitario // obtener siguiente .xml fileAdmin file = new fileAdmin(); String xmlName = file.nextFile(@"c:\IatFiles\file\xml\enviounitario", "*.xml"); // deducir nombre de los PDF y del json String pdf = xmlName.Substring(20, xmlName.Length - 20); //no incluir la extención se debe incluir el path String pdft = pdf + ".pdf"; String pdfc = pdf + "CEDIBLE.pdf"; String json = xmlName.Substring(20, xmlName.Length - 20); // llamar txrReader con nombre del archivo para obtener objeto tipo Documento TxtReader lec = new TxtReader(); Documento docLectura = new Documento(); docLectura = lec.lectura(json, false,""); // llamar a sendInvoice conEnvio = N Connect conn = new Connect(); // conn.sendInvoice(docLectura, pdft, pdfc, xmlName,"","", "N"); // mover archivo a carpeta de enviados file.mvFile(xmlName,@"c:\IatFiles\file\xml\enviounitario",@"c:\IatFiles\file\xml\envioEnviado"); }
public void pdfMasivo() { Documento docLectura = new Documento(); // inatancia txt_reader TxtReader lec = new TxtReader(); // Ejecuta metodo de txt_reader que llena y obtienen Clase Documento docLectura = lec.lectura("",false,""); while (docLectura != null) { String fileNameXML = @"DTE_" + docLectura.RUTEmisor + "_" + docLectura.TipoDTE + "_" + docLectura.Folio + "_"; System.Console.WriteLine("Nombre de Archivo leido " + fileNameXML); fileAdmin f = new fileAdmin(); String fileXml = f.fileAprox(fileNameXML, @"C:/IatFiles/file/xml/", "*.xml"); if (fileXml !=null ) { ProcesoPaqueteXml procesa = new ProcesoPaqueteXml(); procesa.procesoPaqueteXml(@"C:/IatFiles/file/" + docLectura.fileName, @"C:/IatFiles/file/xml/"+ fileXml); } f.mvFile(docLectura.fileName, "C:/IatFiles/file/", "C:/IatFiles/fileProcess/"); docLectura = lec.lectura("", false,""); } }
public void procesoCarga() { // Ir al directorio del envío Unitario // obtener siguiente .xml fileAdmin file = new fileAdmin(); String xmlName = file.nextFile(@"" + unidadDisco + ":/IatFiles/file/xml/enviounitario", "*.xml"); // deducir nombre de los PDF y del json String pdf = xmlName.Substring(20, xmlName.Length - 20); //no incluir la extención se debe incluir el path String pdft = pdf + ".pdf"; String pdfc = pdf + "CEDIBLE.pdf"; String json = xmlName.Substring(20, xmlName.Length - 20); // llamar txrReader con nombre del archivo para obtener objeto tipo Documento TxtReader lec = new TxtReader(); Documento docLectura = new Documento(); docLectura = lec.lectura(json, false, ""); // llamar a sendInvoice conEnvio = N Connect conn = new Connect(); conn.sendInvoice(docLectura, pdft, pdfc, xmlName, "", "", "N"); // mover archivo a carpeta de enviados file.mvFile(xmlName, @"" + unidadDisco + ":/IatFiles/file/xml/enviounitario", @"" + unidadDisco + ":/IatFiles/file/xml/envioEnviado"); }
public void pdfMasivo() { Documento docLectura = new Documento(); // inatancia txt_reader TxtReader lec = new TxtReader(); // Ejecuta metodo de txt_reader que llena y obtienen Clase Documento docLectura = lec.lectura("", false, ""); while (docLectura != null) { String fileNameXML = @"DTE_" + docLectura.RUTEmisor + "_" + docLectura.TipoDTE + "_" + docLectura.Folio + "_"; System.Console.WriteLine("Nombre de Archivo leido " + fileNameXML); fileAdmin f = new fileAdmin(); String fileXml = f.fileAprox(fileNameXML, @"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file/xml/", "*.xml"); if (fileXml != null) { ProcesoPaqueteXml procesa = new ProcesoPaqueteXml(); procesa.procesoPaqueteXml(@"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file/" + docLectura.fileName, @"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file/xml/" + fileXml); } f.mvFile(docLectura.fileName, "" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file/", "" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/fileProcess/"); docLectura = lec.lectura("", false, ""); } }
public void envioMasivo() { // instancia fileadmin, para tener las herramientas para mover archivos fileAdmin fileAdm = new fileAdmin(); TxtReader lec = new TxtReader(); Documento docLectura = new Documento(); fileAdmin file = new fileAdmin(); Connect con = new Connect(); String filePdft = file.nextFile(@"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/pdf", "*.pdf"); String filexml; String filexmlap; String filePdfc; String fileJson; while (filePdft != null) { int largo = filePdft.Length - 4; filePdfc = filePdft.Substring(0, largo) + "CEDIBLE.pdf"; filexmlap = "EnvioUnit" + filePdft.Substring(3, 12) + filePdft.Substring(18, 5); filexml = file.fileAprox(filexmlap, @"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file/xml/enviounitario", "*.xml"); fileJson = @"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/fileProcess/Fac_" + filePdft.Substring(18, 4) + ".json"; docLectura = lec.lectura(fileJson, false, ""); con.sendInvoice(docLectura, filePdft, filePdfc, filexml, "", "", "N"); file.mvFile(filePdfc, "" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/pdf", "" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file/pdf"); file.mvFile(filePdft, "" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/pdf", "" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file/pdf"); //Sgte Documento filePdft = file.nextFile(@"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/pdf", "*.pdf"); } }
private void button1_Click(object sender, EventArgs e) { if (openFileDialog1.ShowDialog() == DialogResult.OK) { System.IO.FileInfo fi = null; try { fi = new System.IO.FileInfo(openFileDialog1.FileName); } catch (System.IO.FileNotFoundException ex) { Console.WriteLine(ex.Message); } fileAdmin file = new fileAdmin(); file.mvFile(fi.Name, fi.Directory.ToString() + @"\", @"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/cafs/factura/"); } }
private void button1_Click(object sender, EventArgs e) { if (openFileDialog1.ShowDialog() == DialogResult.OK) { System.IO.FileInfo fi = null; try { fi = new System.IO.FileInfo(openFileDialog1.FileName); } catch (System.IO.FileNotFoundException ex) { Console.WriteLine(ex.Message); } fileAdmin file = new fileAdmin(); file.mvFile(fi.Name, fi.Directory.ToString() + @"\", @"c:\IatFiles\cafs\factura\"); } }
public LibroVenta lectura() { LibroVenta lib = new LibroVenta(); fileAdmin file = new fileAdmin(); String fileName = file.nextFile(@"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file/", "*.json"); if (fileName != null) { //Paso la ruta del fichero al constructor StreamReader objReader = new StreamReader(fileName, System.Text.Encoding.Default, true); objReader.ToString(); String data = objReader.ReadToEnd(); DataContractJsonSerializer js = new DataContractJsonSerializer(typeof(LibroVenta)); MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(data)); try { lib = (LibroVenta)js.ReadObject(ms); } catch (Exception e) { Console.WriteLine(e.Message); MessageBox.Show("Error de lectura JSON" + e.Message); } objReader.Close(); ms.Close(); file.mvFile(fileName, "" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file/", "" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/fileProcess/"); return(lib); } else { return(null); } }
public LibroCompra lectura() { LibroCompra lib = new LibroCompra(); fileAdmin file = new fileAdmin(); String fileName = file.nextFile(@"c:\IatFiles\file\", "*.json"); if (fileName != null) { //Paso la ruta del fichero al constructor StreamReader objReader = new StreamReader(fileName, System.Text.Encoding.Default, true); objReader.ToString(); String data = objReader.ReadToEnd(); DataContractJsonSerializer js = new DataContractJsonSerializer(typeof(LibroCompra)); MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(data)); try { lib = (LibroCompra)js.ReadObject(ms); } catch (Exception e) { Console.WriteLine(e.Message); MessageBox.Show("Error de lectura JSON" + e.Message); } objReader.Close(); ms.Close(); file.mvFile(fileName, "C:/IatFiles/file/librocompra/", "C:/IatFiles/fileProcess/"); return lib; } else { return null; } }
public Documento lectura(String fileJson, bool moveFile, String dirOrigen) { Documento doc = new Documento(); fileAdmin file = new fileAdmin(); String fileName = String.Empty; if (dirOrigen == "") { dirOrigen = @"C:\AdmToFebosFiles\files"; } if (fileJson == "") { fileName = file.nextFile(dirOrigen, "*.json"); } else { fileName = dirOrigen + fileJson; } if (fileName != null) { StreamReader objReader = new StreamReader(fileName, System.Text.Encoding.Default, true); objReader.ToString(); String data = objReader.ReadToEnd(); DataContractJsonSerializer js = new DataContractJsonSerializer(typeof(Documento)); MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(data)); try { doc = (Documento)js.ReadObject(ms); } catch (Exception e) { Console.WriteLine(e.Message); MessageBox.Show("Error de lectura JSON" + e.Message); } // Datos del Emisor // Cargo datos en laclase Documento desde sqlite if (doc.RUTEmisor == null) { try { SQLiteConnection myConn = new SQLiteConnection(strConn); myConn.Open(); string sql = "select * from empresa"; SQLiteCommand command = new SQLiteCommand(sql, myConn); SQLiteDataReader reader = command.ExecuteReader(); while (reader.Read()) { doc.RUTEmisor = reader["RutEmisor"].ToString(); doc.RznSoc = reader["RznSoc"].ToString(); doc.GiroEmis = reader["GiroEmis"].ToString(); doc.Telefono = reader["Telefono"].ToString(); doc.CorreoEmisor = reader["CorreoEmisor"].ToString(); doc.Acteco = Convert.ToInt32(reader["Acteco"]); doc.CdgSIISucur = Convert.ToInt32(reader["CdgSIISucur"]); doc.DirMatriz = reader["DirMatriz"].ToString(); doc.CmnaOrigen = reader["CmnaOrigen"].ToString(); doc.CiudadOrigen = reader["CiudadOrigen"].ToString(); doc.DirOrigen = reader["DirOrigen"].ToString(); doc.NombreCertificado = reader["NomCertificado"].ToString(); doc.SucurEmisor = reader["SucurEmisor"].ToString(); doc.FchResol = reader["FchResol"].ToString(); doc.RutEnvia = reader["RutCertificado"].ToString(); doc.NumResol = reader["NumResol"].ToString(); doc.CondEntrega = reader["CondEntrega"].ToString(); } myConn.Close(); } catch (Exception e) { Console.WriteLine("ERROR: {0}", e.ToString()); } } else { try { SQLiteConnection myConn = new SQLiteConnection(strConn); myConn.Open(); string sql = "select * from empresa where empresa.RutEmisor = '" + doc.RUTEmisor.ToString() + "'"; SQLiteCommand command = new SQLiteCommand(sql, myConn); SQLiteDataReader reader = command.ExecuteReader(); while (reader.Read()) { doc.Telefono = reader["Telefono"].ToString(); doc.CorreoEmisor = reader["CorreoEmisor"].ToString(); doc.Acteco = Convert.ToInt32(reader["Acteco"]); doc.DirRegionalSII = reader["sucurSII"].ToString(); doc.DirMatriz = reader["DirMatriz"].ToString(); doc.NombreCertificado = reader["NomCertificado"].ToString(); doc.SucurEmisor = reader["SucurEmisor"].ToString(); doc.FchResol = reader["FchResol"].ToString(); doc.RutEnvia = reader["RutCertificado"].ToString(); doc.NumResol = reader["NumResol"].ToString(); doc.CondEntrega = reader["CondEntrega"].ToString(); } myConn.Close(); } catch (Exception e) { Console.WriteLine("ERROR: {0}", e.ToString()); } } objReader.Close(); ms.Close(); if (moveFile) { file.mvFile(fileName, dirOrigen, "C:/AdmToFebosFiles/fileProcess/"); } Caf caf = new Caf(); if (!caf.isValid(doc)) { doc = null; } if (fileJson == "") { doc.fileName = fileName; } else { doc.fileName = fileJson; } return(doc); } else { return(null); } }
public Documento lectura(String fileJson, bool moveFile, String dirOrigen) { Documento doc = new Documento(); fileAdmin file = new fileAdmin(); String fileName = String.Empty; if (dirOrigen == "") { dirOrigen = @"C:\AdmToFebosFiles\files"; } if (fileJson == "") { fileName = file.nextFile(dirOrigen, "*.json"); } else { fileName = dirOrigen + fileJson; } if (fileName != null) { StreamReader objReader = new StreamReader(fileName,System.Text.Encoding.Default,true); objReader.ToString(); String data = objReader.ReadToEnd(); DataContractJsonSerializer js = new DataContractJsonSerializer(typeof(Documento)); MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(data)); try { doc = (Documento)js.ReadObject(ms); } catch (Exception e) { Console.WriteLine(e.Message); MessageBox.Show("Error de lectura JSON"+ e.Message); } // Datos del Emisor // Cargo datos en laclase Documento desde sqlite if (doc.RUTEmisor == null) { try { SQLiteConnection myConn = new SQLiteConnection(strConn); myConn.Open(); string sql = "select * from empresa"; SQLiteCommand command = new SQLiteCommand(sql, myConn); SQLiteDataReader reader = command.ExecuteReader(); while (reader.Read()) { doc.RUTEmisor = reader["RutEmisor"].ToString(); doc.RznSoc = reader["RznSoc"].ToString(); doc.GiroEmis = reader["GiroEmis"].ToString(); doc.Telefono = reader["Telefono"].ToString(); doc.CorreoEmisor = reader["CorreoEmisor"].ToString(); doc.Acteco = Convert.ToInt32(reader["Acteco"]); doc.CdgSIISucur = Convert.ToInt32(reader["CdgSIISucur"]); doc.DirMatriz = reader["DirMatriz"].ToString(); doc.CmnaOrigen = reader["CmnaOrigen"].ToString(); doc.CiudadOrigen = reader["CiudadOrigen"].ToString(); doc.DirOrigen = reader["DirOrigen"].ToString(); doc.NombreCertificado = reader["NomCertificado"].ToString(); doc.SucurEmisor = reader["SucurEmisor"].ToString(); doc.FchResol = reader["FchResol"].ToString(); doc.RutEnvia = reader["RutCertificado"].ToString(); doc.NumResol = reader["NumResol"].ToString(); doc.CondEntrega = reader["CondEntrega"].ToString(); } myConn.Close(); } catch (Exception e) { Console.WriteLine("ERROR: {0}", e.ToString()); } } else { try { SQLiteConnection myConn = new SQLiteConnection(strConn); myConn.Open(); string sql = "select * from empresa where empresa.RutEmisor = '"+ doc.RUTEmisor.ToString() +"'"; SQLiteCommand command = new SQLiteCommand(sql, myConn); SQLiteDataReader reader = command.ExecuteReader(); while (reader.Read()) { doc.Telefono = reader["Telefono"].ToString(); doc.CorreoEmisor = reader["CorreoEmisor"].ToString(); doc.Acteco = Convert.ToInt32(reader["Acteco"]); doc.DirRegionalSII = reader["sucurSII"].ToString(); doc.DirMatriz = reader["DirMatriz"].ToString(); doc.NombreCertificado = reader["NomCertificado"].ToString(); doc.SucurEmisor = reader["SucurEmisor"].ToString(); doc.FchResol = reader["FchResol"].ToString(); doc.RutEnvia = reader["RutCertificado"].ToString(); doc.NumResol = reader["NumResol"].ToString(); doc.CondEntrega = reader["CondEntrega"].ToString(); } myConn.Close(); } catch (Exception e) { Console.WriteLine("ERROR: {0}", e.ToString()); } } objReader.Close(); ms.Close(); if (moveFile) { file.mvFile(fileName, dirOrigen, "C:/AdmToFebosFiles/fileProcess/"); } Caf caf = new Caf(); if(!caf.isValid(doc)) { doc = null; } if (fileJson == "") { doc.fileName = fileName; } else { doc.fileName = fileJson; } return doc; } else { return null; } }
public Documento lectura(string fileJson, bool moveFile, string dirOrigen) { Documento doc = new Documento(); fileAdmin file = new fileAdmin(); string fileName = String.Empty; if (dirOrigen == "") { dirOrigen = @"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file"; } if (fileJson == "") { fileName = file.nextFile(dirOrigen, "*.json"); } else { fileName = dirOrigen + fileJson; } if (fileName != null) { StreamReader objReader = new StreamReader(fileName, Encoding.Default, true); objReader.ToString(); //Leo el json hasta el final string data = objReader.ReadToEnd(); DataContractJsonSerializer js = new DataContractJsonSerializer(typeof(Documento)); MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(data)); try { doc = (Documento)js.ReadObject(ms); } catch (Exception e) { Console.WriteLine(e.Message); MessageBox.Show("Error de lectura JSON" + e.Message); } // Datos del Emisor // Cargo datos en laclase Documento desde sqlite if (doc.RUTEmisor == null) { try { SQLiteConnection myConn = new SQLiteConnection(strConn); myConn.Open(); string sql = "select * from empresa"; SQLiteCommand command = new SQLiteCommand(sql, myConn); SQLiteDataReader reader = command.ExecuteReader(); while (reader.Read()) { if (doc.TipoDTE == 30) { doc.TipoDTE = 33; } doc.RUTEmisor = reader["RutEmisor"].ToString(); doc.RznSoc = reader["RznSoc"].ToString(); doc.GiroEmis = reader["GiroEmis"].ToString(); doc.Telefono = reader["Telefono"].ToString(); doc.CorreoEmisor = reader["CorreoEmisor"].ToString(); doc.Acteco = Convert.ToInt32(reader["Acteco"]); doc.CdgSIISucur = Convert.ToInt32(reader["CdgSIISucur"]); doc.DirMatriz = reader["DirMatriz"].ToString(); doc.CmnaOrigen = reader["CmnaOrigen"].ToString(); doc.CiudadOrigen = reader["CiudadOrigen"].ToString(); doc.DirOrigen = reader["DirOrigen"].ToString(); doc.NombreCertificado = reader["NomCertificado"].ToString(); doc.SucurEmisor = reader["SucurEmisor"].ToString(); doc.FchResol = reader["FchResol"].ToString(); doc.RutEnvia = reader["RutCertificado"].ToString(); doc.NumResol = reader["NumResol"].ToString(); doc.CondEntrega = reader["CondEntrega"].ToString(); doc.PrnMtoNeto = reader["PrnMtoNeto"].ToString(); doc.PrnTwoCopy = reader["PrnTwoCopy"].ToString(); doc.DirRegionalSII = reader["sucurSII"].ToString(); if (doc.TipoDTE == 30 && doc.NumResol == "0") { doc.TipoDTE = 33; } } myConn.Close(); } catch (Exception e) { Console.WriteLine("ERROR: {0}", e.ToString()); } } else { try { SQLiteConnection myConn = new SQLiteConnection(strConn); myConn.Open(); string sql = "select * from empresa where empresa.RutEmisor = '" + doc.RUTEmisor.ToString() + "'"; SQLiteCommand command = new SQLiteCommand(sql, myConn); SQLiteDataReader reader = command.ExecuteReader(); while (reader.Read()) { doc.Telefono = reader["Telefono"].ToString(); doc.CorreoEmisor = reader["CorreoEmisor"].ToString(); doc.Acteco = Convert.ToInt32(reader["Acteco"]); doc.DirRegionalSII = reader["sucurSII"].ToString(); doc.DirMatriz = reader["DirMatriz"].ToString(); doc.NombreCertificado = reader["NomCertificado"].ToString(); doc.SucurEmisor = reader["SucurEmisor"].ToString(); doc.FchResol = reader["FchResol"].ToString(); doc.RutEnvia = reader["RutCertificado"].ToString(); doc.NumResol = reader["NumResol"].ToString(); doc.CondEntrega = reader["CondEntrega"].ToString(); doc.PrnMtoNeto = reader["PrnMtoNeto"].ToString(); doc.PrnTwoCopy = reader["PrnTwoCopy"].ToString(); if (doc.TipoDTE == 30 && doc.NumResol == "0") { doc.TipoDTE = 33; } } myConn.Close(); } catch (Exception e) { Console.WriteLine("ERROR: {0}", e.ToString()); } } objReader.Close(); ms.Close(); if (moveFile) { file.mvFile(fileName, dirOrigen, "" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/fileProcess/"); } Caf caf = new Caf(); if (!caf.isValid(doc)) { doc = null; } if (fileJson == "") { doc.fileName = fileName; } else { doc.fileName = fileJson; } foreach (var dsc in doc.dscRcgGlobal) { string valor = dsc.ValorDR.ToString("N2", CultureInfo.CreateSpecificCulture("es-ES")); valor = valor.Replace(",", "."); dsc.ValorDR = Convert.ToDecimal(valor); } return(doc); } else { return(null); } }
public void DoProcessIat() { PrinterDir print = new PrinterDir(); List <PrinterDir> printerList = print.printerList(); if (printerList.Count == 0) { MessageBox.Show(@"No hay impresoras configuradas, se usará DefaultPrinter"); } int i = 0; int j = 0; while (!_shouldStop) { Console.WriteLine("ProcessIat thread: working..."); Thread.Sleep(5000); i++; String paquete = String.Empty; String dirCurrentFile = String.Empty; String Impresora = String.Empty; // instancia fileadmin, para tener las herramientas para mover archivos fileAdmin fileAdm = new fileAdmin(); // inatancia txt_reader TxtReader lec = new TxtReader(); Documento docLectura = new Documento(); FuncionesComunes fc = new FuncionesComunes(); if (printerList.Count == 0) { dirCurrentFile = @"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file"; Impresora = fc.GetDefaultPrinter(); } else { PrinterDir printDir = printerList.ElementAt(j); dirCurrentFile = printDir.directory; Impresora = printDir.printerName; } Console.WriteLine("Buscando Json en " + dirCurrentFile); j++; // Ejecuta metodo de txt_reader que llena y obtienen Clase Documento docLectura = lec.lectura("", false, dirCurrentFile); // Proceso de validación de Folio, si este proceso no tiene exito se dejará el json en directorio errorFolio // se dejará el objeto docLectura para que no sea procesado // ************************************************ // Obtener folioSiguiente /* Folio folio = new Folio(); * folio = folio.getFolio(docLectura.TipoDTE, docLectura.RUTEmisor); * * * // comparar folio siguiente con docLectura.folio * if (folio.folioSgte == docLectura.Folio) * { * // Si son iguales * // Continuar con el proceso normal * } * else * { * // Si no son iguales * // Verificar que quedan folios * if (folio.folioSgte > folio.folioFin) * { * // si quedan folios * // Avisar a Cajero * SocketClient sc = new SocketClient(); * sc.StartClient("El Folio "+docLectura.Folio+" ha cambiado por el "+folio.folioSgte); * // docLectura.Folio = FolioSiguiente * docLectura.Folio = folio.folioSgte; * // TO DO; UpdatearADM * * } * else * { * // si no quedan folios * // Mover el Json a directorio errorFolio * fileAdm.mvFile(docLectura.fileName, dirCurrentFile, @""+Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString()+":\IatFiles\errorFolio\"); * // dejar docLectura en Null para que no se imprima * docLectura = null; * } * } */ //************************************************* // instancia XML_admin xmlPaquete xml = new xmlPaquete(); List <int> tipos = new List <int>(); DateTime thisDay = DateTime.Now; String fch = String.Format("{0:yyyy-MM-ddTHH:mm:ss}", thisDay); String fchName = String.Format("{0:yyyyMMddTHHmmss}", thisDay); Log log = new Log(); String firsRut = String.Empty; empresa = empresa.getEmpresa(); if (docLectura != null) { // Proceso de ReImpresión // ir a directorio procesados y buscar el archivo docLectura.filename if (System.IO.File.Exists(@"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/fileprocess/" + docLectura.fileName)) // si ya existe, reimprimir { if (empresa.PrnThermal == "True") { String fileNameXML = @"DTE_" + docLectura.RUTEmisor + "_" + docLectura.TipoDTE + "_" + docLectura.Folio + "_"; fileAdmin f = new fileAdmin(); String fileXml = f.fileAprox(fileNameXML, @"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file/xml/", "*.xml"); if (fileXml != null) { new ReimpThermal().reimp(docLectura, fileXml, Impresora); } } else { String fileNamePDFRePrint = @"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file/pdf/PRINT_" + docLectura.RUTEmisor + "_" + docLectura.TipoDTE + "_" + docLectura.Folio + ".pdf"; if (System.IO.File.Exists(fileNamePDFRePrint)) { fc.printPdf(fileNamePDFRePrint, Impresora); } } fileAdm.mvFile(docLectura.fileName, dirCurrentFile, @"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/fileprocess/"); } else // si no procesar { fileAdm.mvFile(docLectura.fileName, dirCurrentFile, @"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/fileprocess/"); log.addLog("Inicio proceso TipoDTE :" + docLectura.TipoDTE + " Folio :" + docLectura.Folio, "OK"); tipos.Add(docLectura.TipoDTE); String TimbreElec = xml.ted_to_xmlSii(docLectura, fch); log.addLog("Crea Timbre TipoDTE :" + docLectura.TipoDTE + " Folio :" + docLectura.Folio, "OK"); String docXmlSign = xml.doc_to_xmlSii(docLectura, TimbreElec, fch); log.addLog("Crea XML Envio TipoDTE :" + docLectura.TipoDTE + " Folio :" + docLectura.Folio, "OK"); // Guarda DTE xml String DTE = "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\r\n" + docXmlSign; String fileNameXML = @"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file/xml/DTE_" + docLectura.RUTEmisor + "_" + docLectura.TipoDTE + "_" + docLectura.Folio + "_" + fchName + ".xml"; using (System.IO.StreamWriter file = new System.IO.StreamWriter(fileNameXML, false, Encoding.GetEncoding("ISO-8859-1"))) { file.WriteLine(docXmlSign); } //si es digitalTerminal abrir Pdf if (empresa.VistaPrevia == "True") { Pdf docpdf = new Pdf(); String fileNamePDF = @"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file/pdf/DTE_" + docLectura.RUTEmisor + "_" + docLectura.TipoDTE + "_" + docLectura.Folio + "_" + fchName + ".pdf"; docpdf.OpenPdf(TimbreElec, docLectura, fileNamePDF, " "); log.addLog("Crea PDF Trib TipoDTE :" + docLectura.TipoDTE + " Folio :" + docLectura.Folio, "OK"); String fileNamePDFCed = @"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file/pdf/DTE_" + docLectura.RUTEmisor + "_" + docLectura.TipoDTE + "_" + docLectura.Folio + "_" + fchName + "CEDIBLE.pdf"; if (docLectura.TipoDTE == 33 || docLectura.TipoDTE == 34) { docpdf.OpenPdf(TimbreElec, docLectura, fileNamePDFCed, "CEDIBLE"); } if (docLectura.TipoDTE == 52) { docpdf.OpenPdf(TimbreElec, docLectura, fileNamePDFCed, "CEDIBLE CON SU FACTURA"); } log.addLog("Crea PDF C TipoDTE :" + docLectura.TipoDTE + " Folio :" + docLectura.Folio, "OK"); log.addLog("IMPRIME TipoDTE :" + docLectura.TipoDTE + " Folio :" + docLectura.Folio, "OK"); String fileNamePDFPrint = @"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file/pdf/PRINT_" + docLectura.RUTEmisor + "_" + docLectura.TipoDTE + "_" + docLectura.Folio + ".pdf"; docpdf.OpenPdfPrint(TimbreElec, docLectura, fileNamePDFPrint); log.addLog("Crea PDF PRINT TipoDTE :" + docLectura.TipoDTE + " Folio :" + docLectura.Folio, "OK"); // Agrega el DTE timbrado al paquete paquete = paquete + docXmlSign; //Estrae el rut del emisor de la primera factura del paquete if (i == 0) { firsRut = docLectura.RUTEmisor; } i++; // Firma POaquete unitario String envioCliente = xml.creaEnvio(paquete, docLectura.RUTEmisor, docLectura.RUTRecep, tipos, docLectura.RutEnvia, docLectura.FchResol, docLectura.RUTRecep, docLectura.NumResol); String envioSII = xml.creaEnvio(paquete, docLectura.RUTEmisor, docLectura.RUTRecep, tipos, docLectura.RutEnvia, docLectura.FchResol, "", docLectura.NumResol); X509Certificate2 cert = FuncionesComunes.obtenerCertificado(docLectura.NombreCertificado); String enviox509SII = xml.firmarDocumento(envioSII, cert); String enviox509Cliente = xml.firmarDocumento(envioCliente, cert); log.addLog("FIRMA ENVIO TipoDTE :" + docLectura.TipoDTE + " Folio :" + docLectura.Folio, "OK"); enviox509SII = "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\r\n" + enviox509SII; enviox509Cliente = "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\r\n" + enviox509Cliente; String fileNameEnvioSII = @"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file/xml/enviounitario/EnvioUnit_" + docLectura.RUTEmisor + "_" + docLectura.Folio + "_" + fchName + ".xml"; String fileNameEnvioCliente = @"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file/xml/enviounitario/EnvioUnitCliente_" + docLectura.RUTEmisor + "_" + docLectura.Folio + "_" + fchName + ".xml"; using (System.IO.StreamWriter file = new System.IO.StreamWriter(fileNameEnvioSII, false, Encoding.GetEncoding("ISO-8859-1"))) { file.WriteLine(enviox509SII); } using (System.IO.StreamWriter file = new System.IO.StreamWriter(fileNameEnvioCliente, false, Encoding.GetEncoding("ISO-8859-1"))) { file.WriteLine(enviox509Cliente); } System.Diagnostics.Process.Start(fileNamePDFPrint); } else { //-----------------------------------------------------------------THERMAL-------------------------------------------------------------- if (empresa.PrnThermal == "True") { try { for (int copies = 0; copies < 3; copies++) { Thermal thermal = new Thermal(); thermal.doc = docLectura; thermal.dd = TimbreElec; thermal.copias = copies; if (docLectura.PrnTwoCopy == "True") { copies = 1; } docLectura.PrnTwoCopy = "False"; if (copies == 2) { if (docLectura.TipoDTE == 33 || docLectura.TipoDTE == 34) { thermal.tipoCopia = "CEDIBLE"; } if (docLectura.TipoDTE == 52) { thermal.tipoCopia = "CEDIBLE CON SU FACTURA"; } if (docLectura.TipoDTE == 61) { break; } } // PrintDocument pd = new PrintDocument(); pd.DefaultPageSettings.PaperSize = new PaperSize("", 284, 1800); pd.PrintPage += new PrintPageEventHandler(thermal.OpenThermal); pd.PrinterSettings.PrinterName = Impresora; Console.WriteLine(pd.ToString()); pd.Print(); } Pdf docpdf = new Pdf(); String fileNamePDF = @"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file/pdf/DTE_" + docLectura.RUTEmisor + "_" + docLectura.TipoDTE + "_" + docLectura.Folio + "_" + fchName + ".pdf"; docpdf.OpenPdf(TimbreElec, docLectura, fileNamePDF, " "); log.addLog("Crea PDF Trib TipoDTE :" + docLectura.TipoDTE + " Folio :" + docLectura.Folio, "OK"); String fileNamePDFCed = @"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file/pdf/DTE_" + docLectura.RUTEmisor + "_" + docLectura.TipoDTE + "_" + docLectura.Folio + "_" + fchName + "CEDIBLE.pdf"; if (docLectura.TipoDTE == 33 || docLectura.TipoDTE == 34) { docpdf.OpenPdf(TimbreElec, docLectura, fileNamePDFCed, "CEDIBLE"); } if (docLectura.TipoDTE == 52) { docpdf.OpenPdf(TimbreElec, docLectura, fileNamePDFCed, "CEDIBLE CON SU FACTURA"); } log.addLog("Crea PDF C TipoDTE :" + docLectura.TipoDTE + " Folio :" + docLectura.Folio, "OK"); log.addLog("IMPRIME TipoDTE :" + docLectura.TipoDTE + " Folio :" + docLectura.Folio, "OK"); // Agrega el DTE timbrado al paquete paquete = paquete + docXmlSign; //Estrae el rut del emisor de la primera factura del paquete if (i == 0) { firsRut = docLectura.RUTEmisor; } i++; // Firma POaquete unitario String envioCliente = xml.creaEnvio(paquete, docLectura.RUTEmisor, docLectura.RUTRecep, tipos, docLectura.RutEnvia, docLectura.FchResol, docLectura.RUTRecep, docLectura.NumResol); String envioSII = xml.creaEnvio(paquete, docLectura.RUTEmisor, docLectura.RUTRecep, tipos, docLectura.RutEnvia, docLectura.FchResol, "", docLectura.NumResol); X509Certificate2 cert = FuncionesComunes.obtenerCertificado(docLectura.NombreCertificado); String enviox509SII = xml.firmarDocumento(envioSII, cert); String enviox509Cliente = xml.firmarDocumento(envioCliente, cert); log.addLog("FIRMA ENVIO TipoDTE :" + docLectura.TipoDTE + " Folio :" + docLectura.Folio, "OK"); enviox509SII = "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\r\n" + enviox509SII; enviox509Cliente = "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\r\n" + enviox509Cliente; String fileNameEnvioSII = @"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file/xml/enviounitario/EnvioUnit_" + docLectura.RUTEmisor + "_" + docLectura.Folio + "_" + fchName + ".xml"; String fileNameEnvioCliente = @"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file/xml/enviounitario/EnvioUnitCliente_" + docLectura.RUTEmisor + "_" + docLectura.Folio + "_" + fchName + ".xml"; using (System.IO.StreamWriter file = new System.IO.StreamWriter(fileNameEnvioSII, false, Encoding.GetEncoding("ISO-8859-1"))) { file.WriteLine(enviox509SII); } using (System.IO.StreamWriter file = new System.IO.StreamWriter(fileNameEnvioCliente, false, Encoding.GetEncoding("ISO-8859-1"))) { file.WriteLine(enviox509Cliente); } } catch (Exception ex) { MessageBox.Show("" + ex); } finally { } } else { Pdf docpdf = new Pdf(); String fileNamePDF = @"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file/pdf/DTE_" + docLectura.RUTEmisor + "_" + docLectura.TipoDTE + "_" + docLectura.Folio + "_" + fchName + ".pdf"; docpdf.OpenPdf(TimbreElec, docLectura, fileNamePDF, " "); log.addLog("Crea PDF Trib TipoDTE :" + docLectura.TipoDTE + " Folio :" + docLectura.Folio, "OK"); String fileNamePDFCed = @"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file/pdf/DTE_" + docLectura.RUTEmisor + "_" + docLectura.TipoDTE + "_" + docLectura.Folio + "_" + fchName + "CEDIBLE.pdf"; if (docLectura.TipoDTE == 33 || docLectura.TipoDTE == 34) { docpdf.OpenPdf(TimbreElec, docLectura, fileNamePDFCed, "CEDIBLE"); } if (docLectura.TipoDTE == 52) { docpdf.OpenPdf(TimbreElec, docLectura, fileNamePDFCed, "CEDIBLE CON SU FACTURA"); } log.addLog("Crea PDF C TipoDTE :" + docLectura.TipoDTE + " Folio :" + docLectura.Folio, "OK"); // para otro tipo de impresion // FuncionesComunes f = new FuncionesComunes(); // f.PrintDocument(@"CutePDF Writer", @""+Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString()+":/IatFiles/file/pdf/DTE_" + docLectura.RUTEmisor + "_" + docLectura.TipoDTE + "_" + docLectura.Folio + "_" + fchName + ".pdf"); //Imprime pdf String fileNamePDFPrint = @"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file/pdf/PRINT_" + docLectura.RUTEmisor + "_" + docLectura.TipoDTE + "_" + docLectura.Folio + ".pdf"; docpdf.OpenPdfPrint(TimbreElec, docLectura, fileNamePDFPrint); log.addLog("Crea PDF PRINT TipoDTE :" + docLectura.TipoDTE + " Folio :" + docLectura.Folio, "OK"); fc.printPdf(fileNamePDFPrint, Impresora); log.addLog("IMPRIME TipoDTE :" + docLectura.TipoDTE + " Folio :" + docLectura.Folio, "OK"); // Agrega el DTE timbrado al paquete paquete = paquete + docXmlSign; //Estrae el rut del emisor de la primera factura del paquete if (i == 0) { firsRut = docLectura.RUTEmisor; } i++; // Firma POaquete unitario String envioCliente = xml.creaEnvio(paquete, docLectura.RUTEmisor, docLectura.RUTRecep, tipos, docLectura.RutEnvia, docLectura.FchResol, docLectura.RUTRecep, docLectura.NumResol); String envioSII = xml.creaEnvio(paquete, docLectura.RUTEmisor, docLectura.RUTRecep, tipos, docLectura.RutEnvia, docLectura.FchResol, "", docLectura.NumResol); X509Certificate2 cert = FuncionesComunes.obtenerCertificado(docLectura.NombreCertificado); String enviox509SII = xml.firmarDocumento(envioSII, cert); String enviox509Cliente = xml.firmarDocumento(envioCliente, cert); log.addLog("FIRMA ENVIO TipoDTE :" + docLectura.TipoDTE + " Folio :" + docLectura.Folio, "OK"); enviox509SII = "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\r\n" + enviox509SII; enviox509Cliente = "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\r\n" + enviox509Cliente; String fileNameEnvioSII = @"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file/xml/enviounitario/EnvioUnit_" + docLectura.RUTEmisor + "_" + docLectura.Folio + "_" + fchName + ".xml"; String fileNameEnvioCliente = @"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file/xml/enviounitario/EnvioUnitCliente_" + docLectura.RUTEmisor + "_" + docLectura.Folio + "_" + fchName + ".xml"; using (System.IO.StreamWriter file = new System.IO.StreamWriter(fileNameEnvioSII, false, Encoding.GetEncoding("ISO-8859-1"))) { file.WriteLine(enviox509SII); } using (System.IO.StreamWriter file = new System.IO.StreamWriter(fileNameEnvioCliente, false, Encoding.GetEncoding("ISO-8859-1"))) { file.WriteLine(enviox509Cliente); } } } // ************* Envía json a server Connect conn = new Connect(); String trib = @"DTE_" + docLectura.RUTEmisor + "_" + docLectura.TipoDTE + "_" + docLectura.Folio + "_" + fchName + ".pdf"; String envU = @"EnvioUnit_" + docLectura.RUTEmisor + "_" + docLectura.Folio + "_" + fchName + ".xml"; String envC = @"EnvioUnitCliente_" + docLectura.RUTEmisor + "_" + docLectura.Folio + "_" + fchName + ".xml"; String envF = @"DTE_" + docLectura.RUTEmisor + "_" + docLectura.TipoDTE + "_" + docLectura.Folio + "_" + fchName + ".xml"; String ced = String.Empty; if (docLectura.TipoDTE != 61 && docLectura.TipoDTE != 56) { ced = @"DTE_" + docLectura.RUTEmisor + "_" + docLectura.TipoDTE + "_" + docLectura.Folio + "_" + fchName + "CEDIBLE.pdf"; } //envia documentos al core conn.sendInvoice(docLectura, trib, ced, envU, envC, envF, "S"); // ************* Envía json a server log.addLog("Envia CORE TipoDTE :" + docLectura.TipoDTE + " Folio :" + docLectura.Folio, "OK"); // ************ Crea regsitro del ultimo dte UltimoDteSql uDTE = new UltimoDteSql(); uDTE.addUltmoDte(docLectura); } } if (j == printerList.Count()) { j = 0; } } Console.WriteLine("ProcessIat thread: terminating gracefully."); }