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

VBA Access Discussion :

executer procédure sql server à partir access


Sujet :

VBA Access

  1. #1
    Membre habitué Avatar de Daniel MOREAU
    Inscrit en
    Décembre 2004
    Messages
    372
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 372
    Points : 142
    Points
    142
    Par défaut executer procédure sql server à partir access
    Bonjour à tous,

    Je souhaite exécuter une procédure stockée sous sql server de puis ACCESS.

    Je sais lancer la procédure, mais je butte sur la mise en forme des paramètres à passer


    Voici les paramètres de la procédure stockée
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    ALTER PROCEDURE [dbo].[sp_Add_ItemDevQty]
      @typmvt varchar(20),
      @numPiece varchar(20),
      @ItemID varchar(20),
      @Qty float,
      @depot varchar(5),
      @NewLineID integer OUTPUT,
      @PxUnitaire float
    AS ....

    et voici mon code sous ACCESS

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
           Set rcd = connectODBC.Execute("EXEC sp_Add_ItemDevQty @typmvt = """ & rst.Fields(0) & """, @numPiece = """ & Compteur & """, @ItemID = """ & rst.Fields(1) & """,  @Qty = """ & rst.Fields(2) & """, @depot = 01, @NewLineID = """ & NewLineID & """, @PxUnitaire = """ & rst.Fields(4) & """")
    De plus je ne comprends pas ce que signifie un paramètre déclaré avec OUTPUT

    Merci pour votre aide.

    Daniel

  2. #2
    Expert confirmé Avatar de nico84
    Homme Profil pro
    Consultant/développeur ERP
    Inscrit en
    Mai 2008
    Messages
    3 095
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant/développeur ERP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 3 095
    Points : 5 211
    Points
    5 211
    Par défaut
    Bonjour,

    J'utilise ausi SQL server mais pas de procédure, que des requetes ou des fonctions
    Voici comment je procède en cas de doute :
    - j'essaie de l'exécuter dans SQL server management
    - quand ça marche je constitue une string en VBA qui a un contenu similaire
    - j'execute la string en VBA

    Par rapport à ton essai :
    - je ne pense pas qu'il faille rappeler le nom des variables dans l'appel
    - normalement en SQL les varchar sont à encadrer de ' et non de " et les nombres de rien du tout

    Donc j'aurais plutot écrit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Sr="EXEC sp_Add_ItemDevQty ('" & rst.Fields(0) & "','" & Compteur & "','" & rst.Fields(1) & "'," & rst.Fields(2) & ",'01'," & NewLineID & "," & rst.Fields(4) & ")"
    msgbox Sr 'pour vérif
    Set rcd = connectODBC.Execute(Sr)
    Enfin pour l'output je crains que SQL attende une variable et là je sèche aussi
    Utilisez Planet, gestion d'entreprise gratuite pour TPE / PME

Discussions similaires

  1. [XL-2003] Exécution d'une procédure SQL Server à partir d'Excel en VBA
    Par Peanut dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 23/09/2011, 16h14
  2. Réponses: 7
    Dernier message: 30/04/2008, 18h38
  3. Transferer une table de SQL Server vers Access
    Par Oluha dans le forum Bases de données
    Réponses: 18
    Dernier message: 24/06/2005, 10h53
  4. Script sql pour exporter BD de sql server vers access
    Par kayser dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 17/12/2004, 15h48
  5. Automatiser la mise à jour de la bD SQL SERVER from Access
    Par Nadaa dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 11/11/2003, 15h23

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