IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

IHM Discussion :

Faire reference à un champ de la requete source sans qu'il soit present sur l'etat


Sujet :

IHM

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 55
    Points : 49
    Points
    49
    Par défaut Faire reference à un champ de la requete source sans qu'il soit present sur l'etat
    Bonjour,
    J'ai une question qui me semblait très basique mais je ne trouve pas la réponse

    Voilà j'ai un état avec une requete comme source. J'ai un textbox qui doit afficher la concatenation des champs de ma requête source. La concatenation marche, pas de problème....

    Mais est-ce qu'on est obligé de mettre sur l'état autant de controle que l'on a de champs à concatener pour que dans le code, le programme prenne en compte le champ ?
    Ensuite je mets la propriété de ces champs visible à "non" mais ca fait beaucoup de manipulation... Je pensais qu'il etait possible dans le code de l'état de faire référence directement à un champ de la requete source sans que ce champ ai un objet sur l'état....

    Je ne sais pas si je suis très claire...
    Merci d'avance
    Julie

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 641
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 641
    Points : 34 352
    Points
    34 352
    Par défaut
    salut,
    la réponse est non, pas besoin de mettre tous les champs de la requête

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 55
    Points : 49
    Points
    49
    Par défaut
    Salut,

    Merci pour ta réponse, mais alors comment faut-il faire reference au champ ?
    Pour info, je pensais qu'il suffisait d'écrire comme ci dessous :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    If NomduChampdelaRequete.value = -1 then
    MsgChamp1 = "Message1"
    End if
    J'ai essayé en ajoutant le nom de la requete, des crochets, sans le .value mais impossible ... et tout ce que j'ai trouvé dans ma doc et le forum c'est des synthaxes lorsqu'un controle ayant pour source le champ est sur l'état (remarque, j'ai peut-etre chercher avec de mauvais mots clefs) .... Peux tu m'eclairer sur la synthaxe à utiliser ?

    Merci d'avance
    Julie

  4. #4
    Expert éminent sénior
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Points : 16 044
    Points
    16 044
    Par défaut
    Bonjour,

    Essaie avec cette syntaxe, par exemple en affichant un message, sans faire condition, déjà pour être sûr que tu récupères bien ta valeur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MsgBox Me.NomduChampdelaRequete.value
    Domi2

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 55
    Points : 49
    Points
    49
    Par défaut
    Bonjour et merci pour ton conseil Domi2,

    Alors j'ai essayé mais ça me met le même message que lorsque je fais la condition :
    "Erreur d'execution 2465 : impossible de trouver le champ 'ChampdelaRequete' auquel il est fait reference dans votre expression"

    Quand on clic sur Aide, Access ouvre la rubrique "Faire référence à la valeur d'un contrôle ou d'une propriété dans une expression" ... mais ne parle pas de faire référence à la valeur d'un champ de la requete source ...

    Je cherche toujours, si vous avez d'autres idées n'hésitez pas ....

  6. #6
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 641
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 641
    Points : 34 352
    Points
    34 352
    Par défaut
    Re,
    si on met des valeurs en fonctions d'auters champs dans la requête, on peut se passer de faire apparaitre les champs.

    Est-ce contraignant de mettre tous les champs en invisible ?

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    553
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 553
    Points : 566
    Points
    566
    Par défaut
    Bonjour,
    Que veux-tu faire exactement ?
    Ta requête source fournit un ensemble d'enregistrement ==> quand tu fais ChamRequete.value, lequel doit-il prendre ?
    Le premier, le dernier, tous ??? Pour pouvoir l'afficher, il faudrait déjà qu'il soit positionné sur une enregistrement

    Je pense que c'est pour çà qu'il est perdu... Si çà se trouve, ce n'est même carrément peut être pas possible ce que tu veux faire....

    C'est pour cela que je te demande ce que tu veux faire exactement ....

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 55
    Points : 49
    Points
    49
    Par défaut
    Bonjour à tous,

    Je vous donne le contexte de mon problème afin que vous puissiez mieux comprendre ma question :

    - J'ai un état "Etat1" dont la source est une requete filtrée sur un identifiant : elle n' a qu'un seul et unique enregistrement.

    - Une partie des informations que je veux faire apparaitre sur cet état est une information sur le zonage du territoire :on a donc 17 zonages possibles codés en 17 champs de type Booléen.

    - Cependant, la plupart du temps ces informations ne seront pas cochées ou peu de checkboxs seront cochés (3 ou 4 max).

    - Ainsi pour ne pas surcharger l'état (les intitulés des checkboxs sont longs), j'ai décidé de créer un textbox qui concaténe l'ensemble des champs cochés. (d'où le test de condition présenté dans mon deuxième message)

    - Ma concaténation marche bien pas de problème, mais pour pouvoir tester les valeurs des 17 champs de la requête, je me retrouve à mettre 17 chckbox en invisible avec comme source chacun des 17 champs.

    - Sachant que la base est opérationnelle mais que le listing des zonages retenus est susceptible d'être modifiés, je me disais que ce serait plus commode pour la mise à jour de ne pas passer par un controle de l'état mais d'aller directement chercher l'info dans la requete...

    Comme je le disais au début, je pensais ma question très basique... mais on dirait qu'elle ne l'est pas tant que ça .....

    Si cela vous donne de nouvelles idées ... en tout cas, je vous remercie de m'aider ou de l'avoir fait !

    ps pour JpCheck : je crois que je n'ai pas compris
    si on met des valeurs en fonctions d'auters champs dans la requête
    Julie

  9. #9
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 641
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 641
    Points : 34 352
    Points
    34 352
    Par défaut
    Ok,
    je propose une requête à rallonge :
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT IIF(Champ1,"a ","") & IIF(Champ1,"b ","") &  IIF(Champ1,"c ","") & IIF(Champ1,"d ","") As Concatenation FROM MaTable;

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 55
    Points : 49
    Points
    49
    Par défaut
    Bonjour,
    Ok, on est obligé de passer par une requete SQL alors ?
    Dans ce cas, tant pis je vais continuer à mettre des checkbox sur l'etat en invisible... cela me semble la méthode la plus optimisée...
    Merci
    Julie

  11. #11
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 641
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 641
    Points : 34 352
    Points
    34 352
    Par défaut
    salut,
    les deux solutions sont possibles, libre à toi de choisir celle qui te plaira

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Faire varier les champs dans une requete
    Par kervin dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 10/09/2014, 12h58
  2. Comment faire référence à un champ d'un etat dans une requete?
    Par polianita dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 19/06/2006, 15h26
  3. Comment faire référence à un champ d'un etat dans une requete?
    Par polianita dans le forum Autres Logiciels
    Réponses: 1
    Dernier message: 16/06/2006, 17h46
  4. Double occurence d'un champ dans un requete
    Par neness dans le forum SQL
    Réponses: 4
    Dernier message: 19/05/2004, 10h31
  5. Réponses: 5
    Dernier message: 08/03/2004, 10h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo