Créer un état en fonction de la réponse de l'utilisateur

Résolu
cokinoumasterflash
Messages postés
62
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
19 août 2005
- 16 juin 2005 à 16:17
cokinoumasterflash
Messages postés
62
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
19 août 2005
- 17 juin 2005 à 10:37
Bonjour,


Je travaille actuellement sur une base de données sous ACCESS comportant une table : échantillon. L'un des champs de cette table est le nom du site de prélèvement de l'echantillon : nom_site. De plus j'ai créé un formulaire où je propose à l'utilisateur de choisir le site qu'il souhaite consulter . Pour cela j'ai inséré une zone de texte dans mon formulaire (c'est ma variable site). Mon problème c'est que je n'arrive pas à créer un état en fonction de la réponse. J'ai récupérer des idées à droite à gauche mais il manque encore quelque chose.Voilà mon code qui ne marche pas.
Dim rpt As Report
Dim requete As String
requete = "SELECT * FROM echantillon WHERE (nom_site='" & Site & "')"
Set rpt = CreateReport
rpt.RecordSource = requete
rpt.Caption = "site"
DoCmd.OpenReport rpt.Name, acPreview

Au final mon programme ouvre un état mais la page est blanche.
Merci pour vos réponse.
Seb.

4 réponses

cs_Yoyo2B
Messages postés
125
Date d'inscription
jeudi 27 février 2003
Statut
Membre
Dernière intervention
6 mars 2008

16 juin 2005 à 16:55
c nomal, l'état est bien basé sur ta requete, mais rien ne lui dit quel champ afficher.
Le + simple , c de créer un état basé sur ta table, déssine tes champs, ferme l'etat, et au momen ou tu chagera la source de donnée, si tu specifie juste une clause WHERE (n'elève pas ou ne rajoute pas de champs) alors ton état affichera les données

sinon, tu peux baser l'état par rapport à une requete figée, avec en paramètre de ta requête la valeur du site.

voilà

happy coding ...
3
TrafMaxime
Messages postés
288
Date d'inscription
mercredi 4 mai 2005
Statut
Membre
Dernière intervention
26 janvier 2012
1
16 juin 2005 à 16:56
Si t'es en vb.net et que t'utilise le Crystal Report qui va avec, je te
conseil de dessiner un maximum dans le design du report qui est assez
bien foutu, de créer ta connection et de bien y placer tes champs...



ensuite, tu ne fais que la sélection en code :



Imports CrystalDecisions.CrystalReports.Engine

Imports CrystalDecisions.Shared



public sub boutonprint()
Dim Xeor As New ReportDocument()

Xeor.Load("C:\path.rpt")

Dim SelectFormula As String

SelectFormula "{echantillion.nomdusite} " & textbox1.text

Xeor.RecordSelectionFormula = SelectFormula

Xeor.PrintToPrinter(1, True, 1, 1)

end sub



au final, tu auras l'impression de la 1ere page de ton rapport..
.Maytheforcebewithyou.Maxime.
0
cokinoumasterflash
Messages postés
62
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
19 août 2005
7
17 juin 2005 à 10:20
Toujours concernant mon problème d'état j'ai créer mon etat avec mes champs mais je n'ai pas très bien compris la dernière remarque :


ferme l'etat, et au momen ou tu chagera la source de donnée, si tu specifie juste une clause WHERE (n'elève pas ou ne rajoute pas de champs) alors ton état affichera les données

Est ce que tu pourrais me détailler ta solution s'il te plait ?
Merci
@+
0
cokinoumasterflash
Messages postés
62
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
19 août 2005
7
17 juin 2005 à 10:37
C'est bon ça marche !
J'ai réussi à comprendre la dernière remarque de Yoyo2B.
Merci à tout le monde de m'avoir sorti de là !

Bye,
Seb.
0