Création d'un état

Résolu
cs_monaco63 Messages postés 76 Date d'inscription vendredi 12 novembre 2004 Statut Membre Dernière intervention 15 juin 2009 - 26 juil. 2007 à 15:08
agbebe Messages postés 14 Date d'inscription lundi 1 octobre 2007 Statut Membre Dernière intervention 23 décembre 2008 - 12 juin 2008 à 16:24
Bonjour,


Je souhaiterai créer un Etat sous Access avec du code VB, car je ne dois pas créer une requête en mode création, je dois la créer dynamiquement avec l'aide de RS1.OpenRecordSet("SELECT * FROM tb_Resultat")

Donc par conséquent je voudrais un bout de code ou  me dire comment je dois m'y prendre après cette ligne de code

RS1.OpenRecordSet("SELECT * FROM tb_Resultat")
RS1.MoveFirst

Do Until RS1.EOF
.....
.....
.....
....
   RS1.MoveNext
Loop

Je vous remercie par avance

20 réponses

cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
27 juil. 2007 à 09:17
Ben déjà, si tu veux faire un état personnalisé par client... qu'est-ce que tu fais avec le datareport d'access ? Tu fait un état par client stocké dans la base... et plus ta de clients, plus la base s'alourdit. Où alors tu fais un état que tu stocke uniquement dans la base du client. Mais si tu as 100 clients et que tu dois mettre à jour la base de données, faut alors reprendre les bases une par une. Bref, c'est vraiment pas pratique !
Avec le datareport de VB, il se pose le même problème !
Avec report manager : il te génère un fichier par état, tu n'as donc plus qu'à installer le fichier qu'il faut sur le poste du client.

* comment intégré l'état à une form VB ? Sous Access, tu as uniquement
l'aperçu avant impression. Avec le datareport de VB, j'ai pas trouvé !
Sous report manager, tu as des ocx pour les intégrer directement dans
ton projet.

* Le passage de paramètres au report : report manager permet de paramètrer très simplement des paramètres pour remplacer des parties de ton état, de ta requêtes, etc.

* Report manager permet d'exécuter des fonctions avant et après l'impression d'un champ (des compteurs particuliers par exemple).

* les codes barres. Comment imprime-tu des codes barres avec le report de VB (ou celui d'access) ? Report manager les gère très bien (ce qui m'a poussé à ne plus utiliser le DataReport d'ailleurs).

* les graphiques : Comment imprime-tu un chart avec le report de VB ou Access ? Là encore, report manager le gère.

Il faut savoir également que report manager est en constante évolution alors que le DataReport de VB n'est plus maintenu depuis des lustres.

Bref, autant de points qui me poussent à privilégier report manager au datareport de VB ! (tu remarqueras que je conseille d'utiliser 3 outils/librairies qui facilitent réellement la vie : report manager, SCGrid et MZTools, ce sont trois outils qui me sont réellement indispensables dans mes dév actuels sous VB, et dont j'ai mis pas mal de temps à trouver, donc autant en faire profiter la communauté).

Malheureusement, quasiment à chaque fois on m'écoute pas. Beaucoup de monde croit qu'il n'y a que Microsoft dans la vie (et j'en faisait partis il y a 2-3 ans moi aussi, avant de me rendre compte qu'au final, on perdait bien moins de temps à chercher une librairie ou un outils qui fait ce qu'on cherche à faire, plutôt que d'essayer de bidouiller les outils de microsoft pour arriver à ces fins... quand bien même que se soit possible !).
3
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
27 juil. 2007 à 10:19
Il faut mettre les quotes dans ta requêtes SQL :

"INSERT INTO tb_Resultat_1(NumOperation, uds_Source, Date_debut_transfert, " & _
                              "Heure_debut_transfert, Heure_fin_transfert, nip, ngs, uds_destination, " & _
                              "vitesse_rotation, vol_ap_uds_source, vol_ap_uds_dest, nif, nom_nif, " & _
                              "lot, num_etiquette, recoup_used, num_op_depotage )" & _
                              "VALUES ( " & RS2.Fields("NumOperation") & " , '" & RS2.Fields("uds_Source")) & "' , " & _
                               RS2.Fields("Date_debut_transfert") & " , " &
RS2.Fields("Heure_debut_transfert") & " , " & _
                               RS2.Fields("Heure_fin_transfert") & " , " & RS2.Fields("nip") & " , '" & _
                              RS2.Fields("ngs") & "' , "' & RS2.Fields("uds_destination") & '" , " & _
                             RS2.Fields("vitesse_rotation") & " , " &
RS2.Fields("vol_ap_uds_source") & " , " & _
                            RS2.Fields("vol_ap_uds_dest") & " , " & RS3.Fields("nif") & " , '" & _
                            RS3.Fields("nom_nif") & "' , " & RS3.Fields("lot") & " , '" & _
                            RS3.Fields("num_etiquette") & "' , " & "a" & ", " & RS3.Fields("NumOperation") & " )"

Note : ce sont des simples quotes qu'il faut mettre et non des doubles.
3
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
26 juil. 2007 à 15:18
Alors, il me semble que ca (en gras), c'est inutile

RS1.OpenRecordSet("SELECT * FROM tb_Resultat")
RS1.MoveFirst

Do Until RS1.EOF
.....
.....
.....
....
   RS1.MoveNext
Loop

Ce qui est important, c'est de lier ton etat a ton recordset :

Set Nom_DataReport.DataSource = RS1

Ensuite, dans ton état tu places tes controles et tu mets dans DataSource ou DataMember (je sais plus) RS1 et en datafields le nom du champ de ton recordset.

Le reste se fera tout seul.
1
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
26 juil. 2007 à 15:22
Je te conseillerai plutôt d'utiliser ReportManager en lieu et place du datareport : c'est un outil gratuit et OpenSource qui permet de paramètrer très facilement les reports ! (tu le trouvera sur sourceforge.net).
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_monaco63 Messages postés 76 Date d'inscription vendredi 12 novembre 2004 Statut Membre Dernière intervention 15 juin 2009
26 juil. 2007 à 15:28
Il ne me trouve pas .Datasource quand je met Set Nom_DataReport.DataSource = RS1
0
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
26 juil. 2007 à 15:38
Nom_DataReport, c'est le nom de ton datareport.
0
cs_monaco63 Messages postés 76 Date d'inscription vendredi 12 novembre 2004 Statut Membre Dernière intervention 15 juin 2009
26 juil. 2007 à 15:53
Je sais mais quand je met le nom de mon Report il ne me trouve pas DataSource


Dim ESSAI as Report


Set ESSAI.il ne me trouve pas DataSource
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
26 juil. 2007 à 15:55
Nicko : il veut créer son report avec le datereport de la base access, pas avec le datareport de VB !

Et là, je sais vraiment pas si c'est possible de paramètre la requête à partir de VB !
0
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
26 juil. 2007 à 16:24
Ah désolé. en effet, la, on se complique la tete pour pas grand chose. Je sais pas en effet si c'est possible.

Tu as une contrainte qui t'empeche de le faire avec un Datareport de VB6.
0
cs_monaco63 Messages postés 76 Date d'inscription vendredi 12 novembre 2004 Statut Membre Dernière intervention 15 juin 2009
26 juil. 2007 à 16:31
Non pourquoi tu veux faire comment ?
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
26 juil. 2007 à 16:34
ben avec report manager...

Si tu veux continuer avec le DataReport, libre à toi, mais sache qu'il date de 98, donc niveau fonctionnalités, tu sera limité...

Pourquoi personne ne m'écoute !
0
cs_monaco63 Messages postés 76 Date d'inscription vendredi 12 novembre 2004 Statut Membre Dernière intervention 15 juin 2009
26 juil. 2007 à 16:35
Comment fonctionne le report manager ?
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
26 juil. 2007 à 18:28
ben déjà télécharge le et installe le, si tu sais utiliser le DataReport d'access, tu saura utiliser report manager : il fait la même chose... en mieux :p
0
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
27 juil. 2007 à 08:05
LOL, on dirait un VRP de Report Manager Company. En meme temps, si c'est ce qu'il y a de mieux.
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
27 juil. 2007 à 08:18
Je dit pas que c'est ce qu'il y a de mieux, je dis juste qu'il y a 2 ans de cà, je découvrais le DataReport d'Access et celui de VB6, j'avais fait une vingtaine de report, et j'avais dû tout arrêter à cause des limitations de ceux-ci. J'ai passé pas mal de temps à trouver l'outils de mes rêves (ne le trouvant pas, j'en étais même passé à faire mon propre outil de reporting, ce qui m'a pris environ 5-6 mois à faire !!!), et au final, j'ai trouvé ce report manager bien sympathique ! Donc du coup, j'en profite pour le faire partager à tous afin de leur éviter de perdre pas mal de temps comme moi à l'époque !
0
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
27 juil. 2007 à 08:59
Ce n'était pas une critque mais c'est juste que le "Personne ne m'écoute" m'avait fait sourrire.

Par contre je déborde un peu (quoi que dans le sujet quand meme), je serais intéressé de savoir les limitations que tu as pu rencontrées (pour éviter comme tu le dis de s'en rendre compte au bout d'un certain temps) ?
0
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
27 juil. 2007 à 10:08
Tu as raison, j'ai vu que tu les citais souvent.

Je pense que si tu m'avais conseillé d'utiliser report manager ou SCGrid, je n'aurais peut etre pas suivi. Mais en enoncant les limitations comme tu viens de le faire, c'est super convaincant. Je me dis aussi souvent, "La fleme de chercher un outils, j'vais bidouiller" un truc avec DataReport ou DataGrid mais on y laisse des plumes (boulot monstre ou  cracra).

Merci pour les infos. A l'occasion, je jeterai un oeil dessus.

A+

Sinon monaco63, tu décides faire quoi ?
0
cs_monaco63 Messages postés 76 Date d'inscription vendredi 12 novembre 2004 Statut Membre Dernière intervention 15 juin 2009
27 juil. 2007 à 10:12
http://www.vbfrance.com/auteurdetail.aspx?ID=379091
 Bonjour,

 Pour le moment, je ne sais pas je vais voir.

SInon, j'ai une autre question, je dois modifier cette requête SQL pour que les champs en gras soient de type String.
Pouvez-vous m'aider.
Merci d'avance

SQL = "INSERT INTO tb_Resultat_1(NumOperation, uds_Source, Date_debut_transfert, " & _
                              "Heure_debut_transfert, Heure_fin_transfert, nip, ngs, uds_destination, " & _
                              "vitesse_rotation, vol_ap_uds_source, vol_ap_uds_dest, nif, nom_nif, " & _
                              "lot, num_etiquette, recoup_used, num_op_depotage )" & _
                              "VALUES ( " & RS2.Fields("NumOperation") & " , " & RS2.Fields("uds_Source")) & " , " & _
                              "" & RS2.Fields("Date_debut_transfert") & " , " & RS2.Fields("Heure_debut_transfert") & " , " & _
                              "" & RS2.Fields("Heure_fin_transfert") & " , " & RS2.Fields("nip") & " , " & _
                              "" & RS2.Fields("ngs") & " , " & RS2.Fields("uds_destination") & " , " & _
                              "" & RS2.Fields("vitesse_rotation") & " , " & RS2.Fields("vol_ap_uds_source") & " , " & _
                              "" & RS2.Fields("vol_ap_uds_dest") & " , " & RS3.Fields("nif") & " , " & _
                              "" & RS3.Fields("nom_nif") & " , " & RS3.Fields("lot") & " , " & _
                              "" & RS3.Fields("num_etiquette") & " , " & "a" & ", " & RS3.Fields("NumOperation") & " )"
                                 
                        DoCmd.SetWarnings False
                        DoCmd.RunSQL SQL

Je ne sais pas ou mettre les quotes
0
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
27 juil. 2007 à 10:48
Te prends pas la tete DarkSidious, c'est deja resolu sur un autre post.

STP, Monaco63, évite de faire ca, car on est embrouillé total avec tous tes posts. Penses que tu n'es pas la seul et qu'avec plusieurs posts a gérer, on n'a pas envie de se prendre la tete pour retrouver qui correspond a quoi.

C'est également pour ton bien que je dis ca. Tu risques de voir certain de tes sujets clos en abusant comme cela.

Merci.
0
agbebe Messages postés 14 Date d'inscription lundi 1 octobre 2007 Statut Membre Dernière intervention 23 décembre 2008
12 juin 2008 à 16:24
salut à tous !!!


je développe en vb6 et j'utilise datareport pour mes états. ca fait un moment que je voulais un autre outil pour mes états


j'ai commencé à télécharger report manager et j'ai hâte de m'y mettre


merci DarkSidious pour le tuyeau


p.s. tu vois moi je t'ai écouté. ciao
0
Rejoignez-nous