Salut tous le monde, voila j ai un petit souci avec le gestion dynamique de datareport, je m explique...
J ai créé un datareport dont les sources de données proviennent de tableaux dynamiques . Je voudrais afficher le contenu des elements de mes tableaux dans des objets label ou meme Text de mon datareport, ces objets devant être créé dynamiquement car ils dependent du nombre d éléments de mes tableaux... et la gros souci... Si je ne crée pas autant de label que d éléments de tableaux les suivants ne sont pas créés.
Voila mon code, les données des tableaux sont calculées puis stockées en fonction de données prélévées dans une DB access, ce code est executé à l init de mon data report.
NCont = 1
ReDim NumCont(NCont)
ReDim SomPoidsNet(NCont)
'Stockage des champs "Date" et "Contrat"
Param_Etats.Et_Adodc.Recordset.MoveFirst
DateLgnEnCours = Param_Etats.Et_Adodc.Recordset![Date]
NumCont(NCont) = CStr(Param_Etats.Et_Adodc.Recordset![Contrat])
'Stockage des totaux de Poids Net par num de contrat
Do While Not Param_Etats.Et_Adodc.Recordset.EOF
If DateLgnEnCours >= DateDeb And DateLgnEnCours <= DateFin Then
'Stockage du numéro de contrat suivant si il change
If CStr(Param_Etats.Et_Adodc.Recordset![Contrat]) <> NumCont(NCont) Then
NCont = NCont + 1
ReDim Preserve NumCont(NCont)
ReDim Preserve SomPoidsNet(NCont)
NumCont(NCont) = CStr(Param_Etats.Et_Adodc.Recordset![Contrat])
End If
'Stockage du Poids Net par numéro de contrat
SomPoidsNet(NCont) = SomPoidsNet(NCont) + Param_Etats.Et_Adodc.Recordset![Poids_Net]
End If
Param_Etats.Et_Adodc.Recordset.MoveNext
DateLgnEnCours = Param_Etats.Et_Adodc.Recordset![Date]
Loop
'**** Remplissage des champs de la section 1 "Détails" (Création dynamique des Lbl)
With DR_Et_ContratsSynt
.Refresh
Set .DataSource = Param_Etats.Et_Adodc
.DataMember = ""
With .Sections("Section1" ).Controls
For NCtrl = 1 To (NCont)
If TypeOf .Item(NCtrl) Is RptLabel Then
.Item(NCtrl).Caption = NumCont(NCtrl)
End If
Next NCtrl
End With
End With
Je galère depuis ce matin sur ce bout de code alors si quelqu un peut m aider, merci d avance
Message édité par rayno le 13-03-2007 à 20:09:10