1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90
|
for (Iterator rowIt = sheet.rowIterator(); rowIt.hasNext();){
row = (HSSFRow) rowIt.next();
Agent a = new Agent();
n++;// pour avoir le numéro de chaque ligne lue
if(row.getRowNum() == 6 && row.getCell(0) != null){//pour obtenir la date de l'extract et déterminer sa semaine dans l'année.
date_extract = row.getCell(0).getStringCellValue().substring(3,13);//on récupère la date
System.out.println("date_extract: "+date_extract);
//faire une vérification pour savoir:
//si la date du fichier n'est pas trouvée sur
istr = new FileInputStream("C:/Donnees/Aide_Manager/date_extract1.xls");
wbd = new HSSFWorkbook(istr);
sheetd = wbd.getSheetAt(0);
rowd = null;
celld = null;
date_extract="24/01/2012";
boolean date_stockee_trouvee = false;
int dernLigneTrouvee = 0;
for (Iterator r = sheetd.rowIterator(); r.hasNext();){
rowd = (HSSFRow) r.next();
celld = rowd.getCell(0);
//System.out.println("lalalalalala");
if(celld != null ){
if(celld.getCellType()==0){
System.out.println("c'est un nombre: "+celld.getNumericCellValue());
}else{
System.out.println("c'est une chaine: "+celld.getStringCellValue());
if(celld.getStringCellValue().equals(date_extract)){// si on trouve que la date_extract est = à la date trouvée dans le fichier
System.out.println("DATE TROUVEE Ds le fichier !");
System.out.println("CETTE EXTRACT A DEJA ETE UTILISEE !!");
System.out.println("MERCI D'UTILISER UN AUTRE EXTRACT CONCERNANT UNE AUTRE DATE !");
date_stockee_trouvee=true;
}
}
dernLigneTrouvee = rowd.getCell(0).getRowIndex();
}
}
dernLigneTrouvee++;
System.out.println("dernLigneTrouvee: "+dernLigneTrouvee);
//si la date n'est pas trouvée dans le fichier
System.out.println("date_stockee_trouvee: "+date_stockee_trouvee);
if(date_stockee_trouvee==false){
//retrouver la dernière ligne du fichier pour y ecrire la date
System.out.println("retrouver la dernière ligne du fichier: "+dernLigneTrouvee);
//pour crée la date ds le fichier
//et pour la retrouver et eviter de rajouter la validation d'un extract comportant la même date
rowd.setRowNum(dernLigneTrouvee);
sheetd.createRow(0);
celld = rowd.createCell(0);
celld.setCellValue(date_extract);
System.out.println("La nouvelle date_extract '"+date_extract+"' a été stocké dans le fichier.");
//pour ecrire dans le même fichier
FileOutputStream fileOutd = new FileOutputStream("C:/Donnees/Aide_Manager/date_extract1.xls");
wbd.write(fileOutd);
fileOutd.close();
// Date actuelle
datextract = formatter.parse(date_extract);
calendar.setTime(datextract);
semaine = calendar.get(Calendar.WEEK_OF_YEAR);//récupérer la semaine dans l'année pour faire la comparaison avec les onglet du fichier de destination
//System.out.println(calendar.get(Calendar.WEEK_OF_YEAR));
}
}
if(row.getCell(0) != null && row.getCell(0).getStringCellValue().startsWith("Agent")){//si les lignes de la colonne 0 ne sont pas null
prenom_agent=row.getCell(0).getStringCellValue();//on récupère notre agent
//isub = nom_agent.indexOf(",");
sub = prenom_agent.substring(prenom_agent.indexOf(",")+1).trim();//récupérer la chaine après la virgule, après l'espace mais sans l'espace à la fin
//System.out.println(sub);
a.setAgent(sub);//on récupère notre agent dans notre objet
//System.out.println(a.getAgent()); //on l'affiche
}
if(row.getCell(1) != null && row.getCell(1).getStringCellValue().startsWith("Validation")){// si les lignes de la colonne 2 ne sont pas null
valid++; //Nombre de validation détecter dans le fichier
n_l_valid = n; // on récupère le numéro de ligne de la Validation
//System.out.println(nom_agent);
n_l_valid--;//on décrémente pour récupérer la validation dans le fichier
//valid_recupere=sheet.getRow(n_l_valid).getCell(4);// on récupére la validation dans le fichier
//System.out.println("Validation: "+valid_recupere);//on l'affiche
a.setValidation((int)sheet.getRow(n_l_valid).getCell(4).getNumericCellValue());//on récupère notre agent dans notre objet sous forme d'entier
System.out.println("validation: "+a.getValidation());//on l'affiche
}
listAgent.add(a);
}//fin du for |
Partager