chandrasonic
-
7 août 2000 à 19:00
mssahrani
Messages postés3Date d'inscriptiondimanche 10 avril 2005StatutMembreDernière intervention 2 juin 2005
-
2 juin 2005 à 22:35
Après une premiere impression d'un objet datareport basée sur une commande d'une connection, l'impression qui suit possede exactement les memes données que la premiere bien que la requete soit differente.
Je pense qu'il s'agit d'un probleme de rafraichissement de données.
Alors je voudrais que l'on me dise comment faire pour couper et retablir la connection apres l'impression ou alors si on peut rafraichir les donnes de Datareport.
mssahrani
Messages postés3Date d'inscriptiondimanche 10 avril 2005StatutMembreDernière intervention 2 juin 2005 2 juin 2005 à 22:35
Cela est du que vous travaillez toujours avec la même image de votre base. ADO ne voit pas la nécessité de réinterroger la base de données afin d'optimiser les échanges. Il faut donc le forcer. Pour cela, dans la procédure qui appele votre DataReport, ajoutez la ligne suivante :
Ca devrait marcher maintenant. Dans certains cas toutefois, si deux interrogations sont trop rapprochés, il faut attendre qu'ADO ai fini son travail à la fermeture du DataReport. Pour éviter cela, dans l'évènement QueryClose de vtre DataReport, ajoutez le code suivant :
Private Sub DataReport_QueryClose(Cancel As Integer, CloseMode As Integer)
While DRMonRecordset.AsyncCount > 0
DoEvents
Wend
End Sub
Et maintenant, ca devrait marcher à tous les coups !
repond moi