package excel;
public class Zusammenfassung {
HSSFSheet sheetStd;
HSSFWorkbook wb;
HSSFWorkbook wbstd;
Html html;
Datekonverter datekonverter = new Datekonverter();
String[] dienste;
FormulaEvaluator evaluator;
public Zusammenfassung(HSSFSheet sheetStd, Html html,
FormulaEvaluator evaluator,HSSFWorkbook wbstd) {
this.html = html;
this.sheetStd = sheetStd;
POIFSFileSystem fs;
String nameDienst = html.getProperty("Name");
StringTokenizer tokenizer = new StringTokenizer(nameDienst, ",");
int anzahlDienste = tokenizer.countTokens();
dienste = new String[anzahlDienste];
int i = 0;
while (tokenizer.hasMoreTokens()) {
dienste[i] = tokenizer.nextToken();
i++;
}
try {
fs = new POIFSFileSystem(
new FileInputStream(
"C:\\Profiles\\Desktop\\Auswertung\\Zusammenfassung.xls"));
wb = new HSSFWorkbook(fs);
tag();
System.out.println("ende");
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
void tag() {
HSSFSheet sheetTag = wb.getSheet("Tag");
int rowNumber = sheetTag.getLastRowNum();
HashMap<String, String> diensteMap = new HashMap<String, String>();
// passende Spalten in der Stundenzusammenfassung rausfiltern
for (int i = 0; i < dienste.length; i++) {
String name = dienste[i];
String wert = html.getProperty(name);
diensteMap.put(name, wert);
}
int rowStdNumber = 29;
HSSFRow rowStd = sheetStd.getRow(rowStdNumber);
for (int i = 0; i < dienste.length; i++) {
String wert = html.getProperty(dienste[i]);
StringTokenizer tokenizer = new StringTokenizer(wert, "+");
int anzahl = 0;
while (tokenizer.hasMoreTokens()) {
String celle = tokenizer.nextToken();
HSSFCell cellStd = rowStd.getCell(Integer.parseInt(celle));
CellReference cellReference = new CellReference("B30");
Row row2 = sheetStd.getRow(cellReference.getRow());
Cell cell = row2.getCell(cellReference.getCol());
CellValue cellbaValue =evaluator.evaluate(cell);
System.out.println(cellbaValue+" values");
}
System.out.println(anzahl);
}
HSSFRow row = sheetTag.getRow(rowNumber);
// Letzte gefüllte Spalte ausgeben
int lastspalte = row.getLastCellNum();
int spalte = 0;
// die erste leere Zeile
rowNumber++;
row = sheetTag.createRow(rowNumber);
HSSFCell cell = row.createCell(spalte);
cell.setCellValue(datekonverter.getDatum(html.getDate()));
html.getDate();
}
}