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

Access Discussion :

SQL direct et sous formulaire


Sujet :

Access

  1. #1
    Membre du Club
    Homme Profil pro
    dev
    Inscrit en
    Février 2015
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : dev

    Informations forums :
    Inscription : Février 2015
    Messages : 80
    Points : 44
    Points
    44
    Par défaut SQL direct et sous formulaire
    Bonjour,

    j'ai une procédure stockée sur SQL Server, elle contient un argument qui est la valeur d'une combobox du formulaire, le résultat final de la procédure est un SELECT.

    J'ai donc fait une requête SQL direct (EXEC procédure) et j'aimerais mettre cette requête dans la source du sous formulaire.

    Le résultat est une erreur: "Impossible d'utiliser une requête SQL Directe ou une requête Analyse croisée (avec un nombre de colonnes non figé) comme source d'enregistrement pour un sous-formulaire ou sous-état. Avant de lier un sous-formulaire ou un sous-état à une requête Analyse croisée, définissez la propriété En-têtesColonnes de la requête."

    Auriez vous une solution ? Quelle méthode utiliser ?

    Merci !

  2. #2
    Rédacteur/Modérateur

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

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

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 594
    Points : 34 266
    Points
    34 266
    Par défaut
    Salut,

    si j'ai bien compris, tu fais un EXEC qui te sort une chaine SELECT ?

    Ne peux tu pas passer par une requete intermediaire dans laquelle tu fais glisser le SQL genere en question et tu pointes dessus avec ton form/report ?
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  3. #3
    Membre du Club
    Homme Profil pro
    dev
    Inscrit en
    Février 2015
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : dev

    Informations forums :
    Inscription : Février 2015
    Messages : 80
    Points : 44
    Points
    44
    Par défaut
    Bonjour,

    j'ai déjà essayé cela, une requête normale avec "SELECT * from RequeteSQLdirect", hélas ça produit le même message d'erreur.

    Merci

  4. #4
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Bonjour.

    Essaye en remplaçant select [TaRequete].* par select [TaRequete].[TonChamp1].

    Si cela marche avec 1 champ, recommence avec les autres champs.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  5. #5
    Membre du Club
    Homme Profil pro
    dev
    Inscrit en
    Février 2015
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : dev

    Informations forums :
    Inscription : Février 2015
    Messages : 80
    Points : 44
    Points
    44
    Par défaut
    Bonjour,

    Merci pour vos réponses.

    J'ai donc fait une requête "SELECT champ1, champ2 from RequeteSQLdirect" puis je l'ai passé en source du SF (si c'est bien cela que vous m'avez suggéré).

    Ca ne marche pas non plus.

    J'abandonne cette idée pour mon projet, mais si vous avez une solution ça peut être intéressant.

    Merci !

  6. #6
    Membre du Club
    Homme Profil pro
    dev
    Inscrit en
    Février 2015
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : dev

    Informations forums :
    Inscription : Février 2015
    Messages : 80
    Points : 44
    Points
    44
    Par défaut
    Une solution alternative serait de ne pas mettre la requête en source du SF, mais plutôt dans chaque contrôle du SF (avec le bon champs), je pense.

  7. #7
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    L'autre solution que je vois c'est de copier les données de la requête dans une table locale.

    C'est un peu "crade" et il faut faire attention à bien gérer la mise à jour mais cela va marcher.

    Dernière idée, faire un formulaire à la place du sous-formulaire.
    Par exemple une "fenêtre" s'ouvrant pour présenter ces données.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

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

Discussions similaires

  1. Requête SQL directe et Sous-etat
    Par hedidev1 dans le forum Access
    Réponses: 4
    Dernier message: 08/06/2017, 12h00
  2. Réponses: 5
    Dernier message: 09/03/2017, 15h34
  3. Mettre à jour une instruction SQL d'un sous-formulaire
    Par chougadosu dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 09/07/2010, 12h51
  4. [SQL]trier un sous formulaire par une date (par toujours connue)
    Par blin07 dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 26/04/2007, 09h45
  5. [Requete] Utiliser un controle de sous formulaire dans SQL
    Par gwendk dans le forum Requêtes et SQL.
    Réponses: 9
    Dernier message: 09/05/2006, 16h53

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