Compare commits
1 Commits
042b059f2a
...
f162bc7cad
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f162bc7cad |
@@ -21,24 +21,41 @@ namespace Schnittstelle.Export
|
|||||||
|
|
||||||
application.DefaultVersion = ExcelVersion.Xlsx;
|
application.DefaultVersion = ExcelVersion.Xlsx;
|
||||||
IWorkbook workbook = application.Workbooks.Create(KanalObjekte.Count);
|
IWorkbook workbook = application.Workbooks.Create(KanalObjekte.Count);
|
||||||
IStyle CellStyle = workbook.Styles.Add("HeaderStyle");
|
IStyle CellStyle = workbook.Styles.Add("MainStyle");
|
||||||
|
|
||||||
CellStyle.Borders[ExcelBordersIndex.EdgeLeft].LineStyle = ExcelLineStyle.Thin;
|
CellStyle.Borders[ExcelBordersIndex.EdgeLeft].LineStyle = ExcelLineStyle.Thin;
|
||||||
CellStyle.Borders[ExcelBordersIndex.EdgeRight].LineStyle = ExcelLineStyle.Thin;
|
CellStyle.Borders[ExcelBordersIndex.EdgeRight].LineStyle = ExcelLineStyle.Thin;
|
||||||
CellStyle.Borders[ExcelBordersIndex.EdgeTop].LineStyle = ExcelLineStyle.Thin;
|
CellStyle.Borders[ExcelBordersIndex.EdgeTop].LineStyle = ExcelLineStyle.Thin;
|
||||||
CellStyle.Borders[ExcelBordersIndex.EdgeBottom].LineStyle = ExcelLineStyle.Thin;
|
CellStyle.Borders[ExcelBordersIndex.EdgeBottom].LineStyle = ExcelLineStyle.Thin;
|
||||||
|
|
||||||
|
IStyle HeaderStyle = workbook.Styles.Add("HeaderStyle");
|
||||||
|
|
||||||
|
HeaderStyle.Borders[ExcelBordersIndex.EdgeLeft].LineStyle = ExcelLineStyle.Thin;
|
||||||
|
HeaderStyle.Borders[ExcelBordersIndex.EdgeRight].LineStyle = ExcelLineStyle.Thin;
|
||||||
|
HeaderStyle.Borders[ExcelBordersIndex.EdgeTop].LineStyle = ExcelLineStyle.Thin;
|
||||||
|
HeaderStyle.Borders[ExcelBordersIndex.EdgeBottom].LineStyle = ExcelLineStyle.Thin;
|
||||||
|
HeaderStyle.Font.Bold = true;
|
||||||
|
|
||||||
|
IStyle KodierungEnde = workbook.Styles.Add("KodierungEndestyleStyle");
|
||||||
|
|
||||||
|
KodierungEnde.Borders[ExcelBordersIndex.EdgeLeft].LineStyle = ExcelLineStyle.Thin;
|
||||||
|
KodierungEnde.Borders[ExcelBordersIndex.EdgeRight].LineStyle = ExcelLineStyle.Thin;
|
||||||
|
KodierungEnde.Borders[ExcelBordersIndex.EdgeTop].LineStyle = ExcelLineStyle.Thin;
|
||||||
|
KodierungEnde.Borders[ExcelBordersIndex.EdgeBottom].LineStyle = ExcelLineStyle.Thick;
|
||||||
|
|
||||||
|
|
||||||
for (int i = 0; i < KanalObjekte.Count; i++)
|
for (int i = 0; i < KanalObjekte.Count; i++)
|
||||||
{
|
{
|
||||||
IWorksheet worksheet = workbook.Worksheets[i];
|
IWorksheet worksheet = workbook.Worksheets[i];
|
||||||
KanalObjekt k = KanalObjekte[i];
|
KanalObjekt k = KanalObjekte[i];
|
||||||
CalculateHaltung(k, worksheet, sanierungsarten , CellStyle);
|
CalculateHaltung(k, worksheet, sanierungsarten, CellStyle, HeaderStyle, KodierungEnde);
|
||||||
}
|
}
|
||||||
FileStream stream = new FileStream("beurteilung.xlsx", FileMode.Create, FileAccess.ReadWrite);
|
FileStream stream = new FileStream("beurteilung.xlsx", FileMode.Create, FileAccess.ReadWrite);
|
||||||
workbook.SaveAs(stream);
|
workbook.SaveAs(stream);
|
||||||
stream.Dispose();
|
stream.Dispose();
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void CalculateHaltung(KanalObjekt haltung, IWorksheet worksheet, List<Sanierungart> sanierungsarten, IStyle cellStyle)
|
private static void CalculateHaltung(KanalObjekt haltung, IWorksheet worksheet, List<Sanierungart> sanierungsarten, IStyle cellStyle, IStyle headerStyle, IStyle kodierungEnde)
|
||||||
{
|
{
|
||||||
|
|
||||||
worksheet.Name = string.Format("{0}", haltung.Stammdaten.Objektbezeichnung);
|
worksheet.Name = string.Format("{0}", haltung.Stammdaten.Objektbezeichnung);
|
||||||
@@ -66,12 +83,14 @@ namespace Schnittstelle.Export
|
|||||||
worksheet.Range[row, 9].Text = haltung.Inspektionsdaten.OptischeInspektion[0].Rohrleitung.Grunddaten.Profilbreite.ToString();
|
worksheet.Range[row, 9].Text = haltung.Inspektionsdaten.OptischeInspektion[0].Rohrleitung.Grunddaten.Profilbreite.ToString();
|
||||||
worksheet.Range[row, 10].Text = haltung.Inspektionsdaten.OptischeInspektion[0].Rohrleitung.Grunddaten.Material.ToString();
|
worksheet.Range[row, 10].Text = haltung.Inspektionsdaten.OptischeInspektion[0].Rohrleitung.Grunddaten.Material.ToString();
|
||||||
|
|
||||||
worksheet.Range[mainrow,1,row,10].CellStyle = cellStyle;
|
worksheet.Range[mainrow, 1, mainrow, 10].CellStyle = headerStyle;
|
||||||
|
worksheet.Range[row,1,row,10].CellStyle = cellStyle;
|
||||||
|
|
||||||
|
|
||||||
row += 2;
|
row += 2;
|
||||||
worksheet.Range[row, 2].Text = sanArt.Sanierungsbezeichnung;
|
worksheet.Range[row, 2].Text = sanArt.Sanierungsbezeichnung;
|
||||||
row+= 2;
|
row+= 2;
|
||||||
int temprow = row;
|
//int temprow = row;
|
||||||
worksheet.Range[row, 1].Text = "Stat";
|
worksheet.Range[row, 1].Text = "Stat";
|
||||||
worksheet.Range[row, 2].Text = "Kürzel";
|
worksheet.Range[row, 2].Text = "Kürzel";
|
||||||
worksheet.Range[row, 3].Text = "Charakterisierung";
|
worksheet.Range[row, 3].Text = "Charakterisierung";
|
||||||
@@ -83,7 +102,10 @@ namespace Schnittstelle.Export
|
|||||||
worksheet.Range[row, 9].Text = "Sanierung";
|
worksheet.Range[row, 9].Text = "Sanierung";
|
||||||
worksheet.Range[row, 10].Text = "Kosten";
|
worksheet.Range[row, 10].Text = "Kosten";
|
||||||
|
|
||||||
|
worksheet.Range[row, 1, row,10].CellStyle=headerStyle;
|
||||||
|
|
||||||
row++;
|
row++;
|
||||||
|
int temprow = row;
|
||||||
int codestart_row = row;
|
int codestart_row = row;
|
||||||
//int rows = 7;
|
//int rows = 7;
|
||||||
decimal inspizierteLaenge = 0m;
|
decimal inspizierteLaenge = 0m;
|
||||||
@@ -127,35 +149,54 @@ namespace Schnittstelle.Export
|
|||||||
row++;
|
row++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
worksheet.Range[temprow, 1, row, 10].CellStyle = cellStyle;
|
worksheet.Range[temprow, 1, row-1, 10].CellStyle = cellStyle;
|
||||||
|
worksheet.Range[row-1, 1, row-1, 10].CellStyle = kodierungEnde;
|
||||||
temprow = row;
|
temprow = row;
|
||||||
worksheet.Range[row, 7].Text = "Zwischensumme";
|
worksheet.Range[row, 7].Text = "Zwischensumme";
|
||||||
worksheet.Range[row, 10].Formula = string.Format("=SUM(J{0}:J{1})", codestart_row, row-1);
|
worksheet.Range[row, 10].Formula = string.Format("=SUM(J{0}:J{1})", codestart_row, row-1);
|
||||||
row++;
|
row++;
|
||||||
worksheet.Range[row, 7].Text = "Baustelleneinrichtung"; //10%
|
worksheet.Range[row, 7].Text = "Baustelleneinrichtung"; //10%
|
||||||
|
worksheet.Range[row, 8].Number = 10;
|
||||||
|
worksheet.Range[row, 10].Formula = string.Format("=(H{0}/100)*J{1}", row, temprow);
|
||||||
row++;
|
row++;
|
||||||
worksheet.Range[row, 7].Text = "Verkehrssicherung"; // 5%
|
worksheet.Range[row, 7].Text = "Verkehrssicherung"; // 5%
|
||||||
|
worksheet.Range[row, 8].Number = 5;
|
||||||
|
worksheet.Range[row, 10].Formula = string.Format("=(H{0}/100)*J{1}", row, temprow);
|
||||||
row++;
|
row++;
|
||||||
worksheet.Range[row, 7].Text = "Aufrechterhaltung der Vorflut"; // 12%
|
worksheet.Range[row, 7].Text = "Aufrechterhaltung der Vorflut"; // 12%
|
||||||
|
worksheet.Range[row, 8].Number = 12;
|
||||||
|
worksheet.Range[row, 10].Formula = string.Format("=(H{0}/100)*J{1}", row, temprow);
|
||||||
row++;
|
row++;
|
||||||
worksheet.Range[row, 7].Text = "Kanalreinigung"; // 2€ /m
|
worksheet.Range[row, 7].Text = "Kanalreinigung"; // 2€ /m
|
||||||
|
worksheet.Range[row, 8].Number = Convert.ToDouble(inspizierteLaenge);
|
||||||
|
worksheet.Range[row, 9].Number = 2;
|
||||||
|
worksheet.Range[row, 10].Formula = string.Format("=H{0}*I{0}", row);
|
||||||
row++;
|
row++;
|
||||||
worksheet.Range[row, 7].Text = "Kamerainspektion"; // 3€ /m
|
worksheet.Range[row, 7].Text = "Kamerainspektion"; // 3€ /m
|
||||||
|
worksheet.Range[row, 8].Number = Convert.ToDouble(inspizierteLaenge);
|
||||||
|
worksheet.Range[row, 9].Number = 3;
|
||||||
|
worksheet.Range[row, 10].Formula = string.Format("=H{0}*I{0}", row);
|
||||||
row++;
|
row++;
|
||||||
worksheet.Range[row, 7].Text = "Reinigung verstopfter Abzweiger"; //250€
|
worksheet.Range[row, 7].Text = "Reinigung verstopfter Abzweiger"; //250€
|
||||||
|
worksheet.Range[row, 9].Number = 250;
|
||||||
|
worksheet.Range[row, 10].Formula = string.Format("=H{0}*I{0}", row);
|
||||||
row++;
|
row++;
|
||||||
worksheet.Range[row, 7].Text = "Summe netto";
|
worksheet.Range[row, 7].Text = "Summe netto";
|
||||||
|
worksheet.Range[row, 10].Formula = string.Format("=SUM(J{0}:J{1})",temprow,row-1);
|
||||||
row++;
|
row++;
|
||||||
worksheet.Range[row, 7].Text = "Mehrwertsteuer"; // 19%
|
worksheet.Range[row, 7].Text = "Mehrwertsteuer"; // 19%
|
||||||
|
worksheet.Range[row, 8].Number = 19;
|
||||||
|
worksheet.Range[row, 10].Formula = string.Format("=(H{0}/100)*J{1}",row,row-1);
|
||||||
row++;
|
row++;
|
||||||
worksheet.Range[row, 7].Text = "Summe brutto";
|
worksheet.Range[row, 7].Text = "Summe brutto";
|
||||||
|
worksheet.Range[row, 10].Formula = string.Format("=SUM(J{0}:J{1})", row - 1, row - 2);
|
||||||
|
|
||||||
worksheet.Range[temprow, 7, row, 10].CellStyle = cellStyle;
|
worksheet.Range[temprow, 7, row, 10].CellStyle = cellStyle;
|
||||||
|
|
||||||
worksheet.Range[mainrow+1, 4].Text = inspizierteLaenge.ToString();
|
worksheet.Range[mainrow+1, 4].Text = inspizierteLaenge.ToString();
|
||||||
|
|
||||||
row += 5;
|
row += 5;
|
||||||
}
|
}
|
||||||
|
worksheet.UsedRange.AutofitColumns();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user