public void exportarRehacer(string archivo, DataSets.Embarques.GenerarTXTRehacerDataTable txtDT, bool EsProveedores, decimal peso) { string linea = ""; int bultos = 0; for (int i = 0; i < txtDT.Rows.Count; i++) { bultos += Convert.ToInt32(txtDT[i]["bultos"]); } using (StreamWriter sw = new StreamWriter(archivo, true)) { for (int i = 0; i < txtDT.Rows.Count; i++) { linea = FormatoCampoEspacios(Convert.ToDateTime(txtDT[i]["FechaRecibo"]).ToString("yyyy-MM-dd"), 11, TextAlignment.Left) + FormatoCampoCeros(Convert.ToString(txtDT[i]["ProveedorId"]), 5, TextAlignment.Right) + " " + FormatoCampoEspacios(Convert.ToString(txtDT[i]["FacturaProveedor"]), 16, TextAlignment.Left) + FormatoCampoEspacios(Convert.ToString(txtDT[i]["Id"]), 7, TextAlignment.Left) + FormatoCampoEspacios(FormatoCampoCeros(Convert.ToString(txtDT[i]["RenglonId"]), 3, TextAlignment.Right), 4, TextAlignment.Left) + FormatoCampoEspacios(Convert.ToString(txtDT[i]["NumeroParte"]), 16, TextAlignment.Left) + FormatoCampoEspacios(FormatoCampoDecimal(Convert.ToString(txtDT[i]["CantidadRecibida"]), 12, 2, TextAlignment.Right), 13, TextAlignment.Left) + FormatoCampoEspacios(Convert.ToString(txtDT[i]["UnidadMedida"]), 3, TextAlignment.Left); //parte del peso if (!EsProveedores) //archivo global { if (i == 0) { linea += FormatoCampoEspacios(FormatoCampoDecimal(Convert.ToString(peso), 17, 8, TextAlignment.Right), 18, TextAlignment.Left) + FormatoCampoEspacios(FormatoCampoDecimal(Convert.ToString(peso), 17, 8, TextAlignment.Right), 18, TextAlignment.Left); } else { linea += FormatoCampoEspacios(FormatoCampoDecimal(Convert.ToString(0), 17, 8, TextAlignment.Right), 18, TextAlignment.Left) + FormatoCampoEspacios(FormatoCampoDecimal(Convert.ToString(0), 17, 8, TextAlignment.Right), 18, TextAlignment.Left); } } else //SI es el archivo de proveedor { linea += FormatoCampoEspacios(FormatoCampoDecimal(Convert.ToString(txtDT[i]["Peso"]), 17, 8, TextAlignment.Right), 18, TextAlignment.Left) + FormatoCampoEspacios(FormatoCampoDecimal(Convert.ToString(txtDT[i]["Peso"]), 17, 8, TextAlignment.Right), 18, TextAlignment.Left); } string pais = Convert.ToString(txtDT[i]["Pais"]); if (pais.Length > 2) { pais = pais.Substring(0, 2); } linea += //FormatoCampoEspacios(Convert.ToString(txtDT[i]["Pais"]).Substring(0, 2), 7, TextAlignment.Left) + FormatoCampoEspacios(Convert.ToString(pais), 7, TextAlignment.Left) + FormatoCampoEspacios(Convert.ToString(txtDT[i]["Moneda"]), 4, TextAlignment.Left); //Cantidad de bultos solo en primer renglon if (i == 0) { linea += FormatoCampoEspacios(FormatoCampoCeros(bultos.ToString(), 9, TextAlignment.Right), 10, TextAlignment.Left); } else { linea += FormatoCampoEspacios(FormatoCampoCeros("0", 9, TextAlignment.Right), 10, TextAlignment.Left); } if (i == 0) { linea += FormatoCampoEspacios(Convert.ToString(txtDT[i]["Bu1"]), 5, TextAlignment.Left) + FormatoCampoEspacios(Convert.ToString(txtDT[i]["Bu2"]), 5, TextAlignment.Left); } else { linea += FormatoCampoEspacios(Convert.ToString(""), 5, TextAlignment.Left) + FormatoCampoEspacios(Convert.ToString(""), 5, TextAlignment.Left); } linea += FormatoCampoEspacios(Convert.ToString(txtDT[i]["NumeroPaleta"]), 42, TextAlignment.Left); if (EsProveedores) { linea += FormatoCampoEspacios(Convert.ToString(txtDT[i]["NoGuia"]), 41, TextAlignment.Left) + FormatoCampoEspacios(Convert.ToString(txtDT[i]["EmbarquePlanta"]), 8, TextAlignment.Left); //consecutivo + nombrepaleta // FormatoCampoEspacios(Convert.ToString(txtDT[i]["Tarima"]), 42, TextAlignment.Left); //aqui debe de ir el nombre dde la tabla // FormatoCampoEspacios(Convert.ToString(txtDT[i]["NoGuia"]), txtDT[i]["NoGuia"].ToString().Length, TextAlignment.Left); } else { linea += FormatoCampoEspacios(Convert.ToString(txtDT[i]["NoGuia"]), txtDT[i]["NoGuia"].ToString().Length, TextAlignment.Left); } sw.WriteLine(linea); } } }
public void exportarRehacer(string archivo, DataSets.Embarques.GenerarTXTRehacerDataTable txtDT, bool EsProveedores, decimal peso) { int i = 0; Excel.Application oExcel = new Excel.Application(); Excel.Workbook oLibro; Excel.Worksheet oHoja; oExcel.Visible = false; oExcel.DisplayAlerts = false; oLibro = oExcel.Workbooks.Add(1); oHoja = (Excel.Worksheet)oLibro.Sheets[1]; int bultos = 0; for (int x = 0; x < txtDT.Rows.Count; x++) { bultos += Convert.ToInt32(txtDT[x]["bultos"]); } int columns = txtDT.Columns.Count; int rows = txtDT.Rows.Count; for (int rowNumber = 0; rowNumber < rows; rowNumber++) { for (int columnNumber = 0; columnNumber < columns; columnNumber++) { oHoja.Cells[rowNumber + 1, 1] = Convert.ToDateTime(txtDT.Rows[rowNumber]["FechaRecibo"]).ToString("yyyy-MM-dd"); oHoja.Cells[rowNumber + 1, 2] = txtDT.Rows[rowNumber]["ProveedorId"]; oHoja.Cells[rowNumber + 1, 3] = txtDT.Rows[rowNumber]["FacturaProveedor"]; oHoja.Cells[rowNumber + 1, 4] = txtDT.Rows[rowNumber]["Id"]; oHoja.Cells[rowNumber + 1, 5] = txtDT.Rows[rowNumber]["RenglonId"]; oHoja.Cells[rowNumber + 1, 6] = txtDT.Rows[rowNumber]["NumeroParte"]; oHoja.Cells[rowNumber + 1, 7] = txtDT.Rows[rowNumber]["CantidadRecibida"]; oHoja.Cells[rowNumber + 1, 8] = txtDT.Rows[rowNumber]["UnidadMedida"]; if (!EsProveedores) //archivo global { if (rowNumber == 0) { oHoja.Cells[rowNumber + 1, 9] = Convert.ToString(peso); oHoja.Cells[rowNumber + 1, 10] = Convert.ToString(peso); } else { oHoja.Cells[rowNumber + 1, 9] = Convert.ToString(0); oHoja.Cells[rowNumber + 1, 10] = Convert.ToString(0); } } else //SI es el archivo de proveedor { oHoja.Cells[rowNumber + 1, 9] = Convert.ToString(txtDT[rowNumber]["Peso"]); oHoja.Cells[rowNumber + 1, 10] = Convert.ToString(txtDT[rowNumber]["Peso"]); } string pais = Convert.ToString(txtDT[rowNumber]["Pais"]); if (pais.Length > 2) { pais = pais.Substring(0, 2); } oHoja.Cells[rowNumber + 1, 11] = Convert.ToString(pais); oHoja.Cells[rowNumber + 1, 12] = Convert.ToString(txtDT[rowNumber]["Moneda"]); //Cantidad de bultos solo en primer renglon if (rowNumber == 0) { oHoja.Cells[rowNumber + 1, 13] = bultos.ToString(); } else { oHoja.Cells[rowNumber + 1, 13] = "0"; } if (rowNumber == 0) { oHoja.Cells[rowNumber + 1, 14] = Convert.ToString(txtDT[rowNumber]["Bu1"]); oHoja.Cells[rowNumber + 1, 15] = Convert.ToString(txtDT[rowNumber]["Bu2"]); } else { oHoja.Cells[rowNumber + 1, 14] = Convert.ToString(""); oHoja.Cells[rowNumber + 1, 15] = Convert.ToString(""); } oHoja.Cells[rowNumber + 1, 16] = Convert.ToString(txtDT[rowNumber]["NumeroPaleta"]); if (EsProveedores) { oHoja.Cells[rowNumber + 1, 17] = Convert.ToString(txtDT[rowNumber]["NoGuia"]); oHoja.Cells[rowNumber + 1, 18] = Convert.ToString(txtDT[rowNumber]["EmbarquePlanta"]); //consecutivo + nombrepaleta //aqui debe de ir el nombre dde la tabla } else { oHoja.Cells[rowNumber + 1, 17] = Convert.ToString(txtDT[rowNumber]["NoGuia"]); } //FIN DE CICLO } } oHoja.get_Range("Q1", "Q6500").NumberFormat = "0"; oLibro.SaveAs(archivo, Microsoft.Office.Interop.Excel.XlFileFormat.xlWorkbookDefault, Type.Missing, Type.Missing, false, false, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing); oLibro.Close(true, true, Type.Missing); // Eliminamos lo que hemos creado oExcel.Quit(); oExcel = null; oLibro = null; oHoja = null; System.GC.Collect(); }