Utilisation de Arraylist pour faire un crystal report... COMMENT!!!!!!

Signaler
Messages postés
5
Date d'inscription
vendredi 18 avril 2003
Statut
Membre
Dernière intervention
18 novembre 2005
-
Messages postés
5
Date d'inscription
vendredi 18 avril 2003
Statut
Membre
Dernière intervention
18 novembre 2005
-
salut le monde!!!



J'ai un gros problème avec un de mes rapports ...c'est un peu fou meme
!!! :P Bon j'explique, il faut que je faire un horaire de travail...



donc j'ai du personnel, des periode de 28 jours(2 paye), et des jours...



Je veux que sa ressemble environ a ca t travailler (exemple...) et c congé




1 2
3 4 5 6 7
8 9 10 11
..

employer 1 c c
t t t t
t t t t
t ...
employer 2 t
t c c c
c c c c
c c



ce tableau se répete le nombre de fois qu'il a de periode de 28 jours



j'ai mes donnée qui son storé dans des arraylist imbriqué:



arraylist1 = les periodes

arraylist2 = la periodes

arraylist3 = Les employés

class(employé) = les info + les journé que l'employer travail



Pour ce qui est de mes données je le vois correctement .. le programme
est plutot lorsque je veux faire mon rapport ... comment ca marche pour
un arraylist .. pour un dataset ca va .. mais la je ne peut pas
vraiment ... atk je ne passe pas ...



Voici mon code pour la structure des données



int ide_Saison = Convert.ToInt32(ddlSaison.SelectedValue.ToString());

TimeSpan Un = new TimeSpan(1,0,0,0,0);

DropDownList ddlAjoutPeriode = new DropDownList();


ArrayList List =
f.miseAjourdllPeriode(ddlAjoutPeriode, ide_Saison,-1); //contient les
info pour la periode

ArrayList
rapportList = new ArrayList();


for (int group = 0 ; group < List.Count ; group++ )

{

//this.ddlAjoutPeriode.Enabled= false;


ddlAjoutPeriode.SelectedIndex =
group;


string Query1 = "SELECT DISTINCT
dbo.GPA_EMPLOYER.IDE_EMPLR_PK, dbo.GPA_EMPLOYER.PRENOM_EMPLOYER,
dbo.GPA_EMPLOYER.NOM_EMPLOYER "


+ "FROM dbo.GPA_GRILLE INNER JOIN
"


+ "dbo.GPA_EMPLOYER ON
dbo.GPA_GRILLE.IDE_EMPLR_FK = dbo.GPA_EMPLOYER.IDE_EMPLR_PK "


+ "WHERE
(dbo.GPA_GRILLE.IDE_PERIODE_FK = '" +
Convert.ToInt32(((ArrayList)List[ddlAjoutPeriode.SelectedIndex])[0].ToString())
+ "') AND (GPA_EMPLOYER.IDE_GROUP_FK='" +
Convert.ToInt32(ddlGroupe.SelectedValue.ToString()) + "')";


SqlCommand cmdGrille = new SqlCommand(Query1,
sqlConnection1);

SqlDataReader sdrGrille = cmdGrille.ExecuteReader();



ArrayList tableau = new ArrayList();

while(sdrGrille.Read())

{


tableau.Add(new
GrilleEmploye(Convert.ToInt32(sdrGrille["IDE_EMPLR_PK"].ToString()),Convert.ToString(sdrGrille["PRENOM_EMPLOYER"]),Convert.ToString(sdrGrille["NOM_EMPLOYER"])));


}

sdrGrille.Close();

cmdGrille.Dispose();



for (int j = 0 ; j < tableau.Count ; j++)

{


DateTime dateGrille =
Convert.ToDateTime(((ArrayList)List[ddlAjoutPeriode.SelectedIndex])[1]);

for(int i = 0 ; i < 14 ; i++ )

{


string Query2
= "";

try

{





Query2 = "SELECT IDE_CODE_FK, DAT_DATE "



+ "FROM dbo.GPA_GRILLE "



+ "WHERE (IDE_PERIODE_FK = '" +
Convert.ToInt32(((ArrayList)List[ddlAjoutPeriode.SelectedIndex])[0].ToString())
+ "') AND (IDE_EMPLR_FK = '" +
((GrilleEmploye)tableau[j]).GetNumeroEmploye + "') AND
DAT_DATE=CONVERT(DATETIME, '" + dateGrille.ToShortDateString() + "',
102)";



SqlCommand cmdGrille1 = new SqlCommand(Query2,
sqlConnection1);



f.connection(sqlConnection1);



SqlDataReader sdrGrille1 =
cmdGrille1.ExecuteReader();



sdrGrille1.Read();



if(Convert.ToInt32(sdrGrille1["IDE_CODE_FK"])==1)




((GrilleEmploye)tableau[j]).SetTableauDate(Convert.ToDateTime(sdrGrille1["DAT_DATE"]),Convert.ToInt32(sdrGrille1["IDE_CODE_FK"].ToString()),false);



else




((GrilleEmploye)tableau[j]).SetTableauDate(Convert.ToDateTime(sdrGrille1["DAT_DATE"]),Convert.ToInt32(sdrGrille1["IDE_CODE_FK"].ToString()),true);





sdrGrille1.Close();

}


catch (
System.InvalidOperationException msg)

{



this.lblErr.Text =msg.Message.ToString();



this.lblErr.Visible = true;



}


catch (
SqlException msg)

{



this.lblErr.Text =msg.Message.ToString();



this.lblErr.Visible = true;



}


dateGrille =
dateGrille + Un;

}



}

rapportList.Add(tableau);

}

2 réponses

Messages postés
5
Date d'inscription
vendredi 18 avril 2003
Statut
Membre
Dernière intervention
18 novembre 2005

J'ai oublié de dire que je suis en c# ASP.NET donc une application de style webform
Messages postés
5
Date d'inscription
vendredi 18 avril 2003
Statut
Membre
Dernière intervention
18 novembre 2005

Pas tout le monde en meme temps...??? je voudrais au moins savoir si
cela se fais!!! de arraylist vers un rapport qui faut que je sorte en
pdf sinon avez vous d'autre idée??? C URGENT quand meme ...

MErci a lavance!!! :(