Advertisement
Guest User

Untitled

a guest
Jul 17th, 2018
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.15 KB | None | 0 0
  1. private static string GenerarExcel(string razonSocial, string fechaEmision, int PAGE_SIZE = int.MaxValue, int PAGE_NUMBER = 1)
  2. {
  3. string path = HttpContext.Current.Server.MapPath("~/Plantillas/");
  4. string nombreArchivo = string.Format("CxP_{0}.xlsx", DateTime.Now.ToString("yyyyMMdd"));
  5. path += nombreArchivo;
  6. CredencialesCE objCredencial = Mod_Utilitario.F_ReturnCredencial();
  7. System.Data.DataTable dt = new Tst_Ingresos_CobranzaCN().F_ReporteCuentaCobrarPrincipal(razonSocial, fechaEmision, PAGE_SIZE, PAGE_NUMBER);
  8. int rowNumber = 4;
  9. if (System.IO.File.Exists(path))
  10. {
  11. System.IO.File.Delete(path);
  12.  
  13. }
  14. using (var package = new ExcelPackage())
  15. {
  16. ExcelWorksheet worksheet = package.Workbook.Worksheets.Add("REPORTE");
  17. worksheet.TabColor = System.Drawing.Color.Blue;
  18. worksheet.Cells["A1:J1"].Value = "REPORTE COBRANZA PRINCIPAL";
  19. worksheet.Cells["A1:J1"].Merge = true;
  20. worksheet.Cells["A1:J1"].Style.Font.Size = 14;
  21. worksheet.Cells["A1:J1"].Style.HorizontalAlignment = ExcelHorizontalAlignment.Center;
  22.  
  23. worksheet.Row(3).Height = 20; //fila 3
  24. //Stilos y Bordes cabecera
  25. using (var cabecera = worksheet.Cells[3, 1, 3, 10]){
  26. cabecera.Style.Border.Top.Style = ExcelBorderStyle.Thin;
  27. cabecera.Style.Border.Left.Style = ExcelBorderStyle.Thin;
  28. cabecera.Style.Border.Right.Style = ExcelBorderStyle.Thin;
  29. System.Drawing.Color colFromHex = System.Drawing.ColorTranslator.FromHtml("#CCCCCC");
  30. cabecera.Style.Fill.PatternType = OfficeOpenXml.Style.ExcelFillStyle.Solid;
  31. cabecera.Style.Fill.BackgroundColor.SetColor(colFromHex);
  32. cabecera.Style.Font.Bold = true;
  33. }
  34.  
  35. foreach (System.Data.DataColumn columna in dt.Columns)
  36. {
  37. if (columna.Caption == "T_RazonSocial") {
  38. worksheet.Cells[rowNumber - 1, 1].Value = "Razón social";
  39. worksheet.Column(1).Width=50f;
  40. }
  41. if (columna.Caption == "F_FechaEmision") {
  42. worksheet.Cells[rowNumber - 1, 2].Value = "Emisión";
  43. worksheet.Column(2).Width = 14f;
  44. }
  45. if (columna.Caption == "T_TipoDoc") {
  46. worksheet.Cells[rowNumber - 1, 3].Value = "Tipo";
  47. worksheet.Column(3).Width = 14f;
  48. }
  49. if (columna.Caption == "T_NroDocumento") {
  50. worksheet.Cells[rowNumber - 1, 4].Value = "Doc";
  51. worksheet.Column(4).Width = 16f;
  52. }
  53. if (columna.Caption == "F_FechaVencimiento") {
  54. worksheet.Cells[rowNumber - 1, 5].Value = "Vcto";
  55. worksheet.Column(5).Width = 14f;
  56. }
  57. if (columna.Caption == "N_TipoCambio") worksheet.Cells[rowNumber - 1, 6].Value = "TC";
  58. if (columna.Caption == "N_MontoMN") {
  59. worksheet.Cells[rowNumber - 1, 7].Value = "Monto";
  60. worksheet.Column(7).Width = 25f;
  61. }
  62. if (columna.Caption == "N_SaldoMN") {
  63. worksheet.Cells[rowNumber - 1, 8].Value = "Saldo";
  64. worksheet.Column(8).Width = 25f;
  65. }
  66. if (columna.Caption == "N_MontoME") {
  67. worksheet.Cells[rowNumber - 1, 9].Value = "Monto $";
  68. worksheet.Column(9).Width = 25f;
  69. }
  70. if (columna.Caption == "N_SaldoME") {
  71. worksheet.Cells[rowNumber - 1, 10].Value = "Saldo $";
  72. worksheet.Column(10).Width = 25f;
  73. }
  74. }
  75.  
  76. foreach (System.Data.DataRow item in dt.Rows)
  77. {
  78. worksheet.Cells[rowNumber, 1].Value = item["T_RazonSocial"];
  79. worksheet.Cells[rowNumber, 2].Value = item["F_FechaEmision"];
  80. worksheet.Cells[rowNumber, 3].Value = item["T_TipoDoc"];
  81. worksheet.Cells[rowNumber, 4].Value = item["T_NroDocumento"];
  82. worksheet.Cells[rowNumber, 5].Value = item["F_FechaVencimiento"];
  83.  
  84. worksheet.Cells[rowNumber, 6].Value = item["N_TipoCambio"];
  85. worksheet.Cells[rowNumber, 6].Style.Numberformat.Format = "#,##0.00";
  86.  
  87. worksheet.Cells[rowNumber, 7].Value = item["N_MontoMN"];
  88. worksheet.Cells[rowNumber, 7].Style.Numberformat.Format = "#,##0.00";
  89.  
  90. worksheet.Cells[rowNumber, 8].Value = item["N_SaldoMN"];
  91. worksheet.Cells[rowNumber, 8].Style.Numberformat.Format = "#,##0.00";
  92.  
  93. worksheet.Cells[rowNumber, 9].Value = item["N_MontoME"];
  94. worksheet.Cells[rowNumber, 9].Style.Numberformat.Format = "#,##0.00";
  95.  
  96. worksheet.Cells[rowNumber, 10].Value = item["N_SaldoME"];
  97. worksheet.Cells[rowNumber, 10].Style.Numberformat.Format = "#,##0.00";
  98. using (var filas = worksheet.Cells[rowNumber, 1, rowNumber, 10])
  99. {
  100. filas.Style.Border.Top.Style = ExcelBorderStyle.Thin;
  101. filas.Style.Border.Left.Style = ExcelBorderStyle.Thin;
  102. filas.Style.Border.Right.Style = ExcelBorderStyle.Thin;
  103. filas.Style.Border.Bottom.Style = ExcelBorderStyle.Thin;
  104. }
  105. rowNumber++;
  106. }
  107.  
  108. package.SaveAs(new FileInfo(path));
  109. }
  110.  
  111. return nombreArchivo;
  112. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement