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

Macros et VBA Excel Discussion :

Appel d'une procédure d'un Package PLSQL [XL-2003]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    163
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 163
    Par défaut Appel d'une procédure d'un Package PLSQL
    Bonjour à toutes et à tous,

    Je voudrais lancer une procédure d'un package plsql à partir d'un programme VB sur Excel. Je ne sais pas comment m'y prendre.
    Les exemples que j'ai trouvé sur le net ne m'ont aidé.

    Pouvez-vous m'aider.

    Merci d'avance.

  2. #2
    Membre confirmé
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    163
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 163
    Par défaut
    Bonjour,

    Trouvez, ci-joint, un code brouillon avec lequel j'ai réussi à lancer une procédure d'un package oracle. Je vais encore l'améliorer en fermant tous les objets créés.
    Merci encore.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     
    Sub executer_historisation_instances()
        Const CONNECT = "Provider=MSDAORA.1;Data Source=BDD_TNSNAME;User ID=UtilisateurBDD;Password=PSWUSR"
     
        Dim cn, rs, cmd, param
        Dim SQL
     
        Set cn = CreateObject("ADODB.Connection")
        cn.Open CONNECT
     
        SQL = "{call PCK_MONPACKAGE.MA_PROCEDURE}"
        Set cmd = CreateObject("ADODB.Command")
        With cmd
        Set .ActiveConnection = cn
            .CommandText = SQL
            .CommandType = 1
        End With
     
        Set rs = CreateObject("ADODB.Recordset")
        Set rs = cmd.Execute
    End Sub

  3. #3
    Membre confirmé
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    163
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 163
    Par défaut
    Pour ceux qui auront besoin dans l'avenir. Vous trouverez ci-dessous un code vba appelant une procédure plsql ayant des paramètres.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
    Private Sub TRAITEMENT_Click()    
        Dim cn, rs, cmd, param
        Dim SQL
     
        Const CONNECT = "Provider=MSDAORA.1;Data Source=BDD_TNSNAME;User ID=UtilisateurBDD;Password=PSWUSR"
     
        Set cn = CreateObject("ADODB.Connection")
        cn.Open CONNECT
     
       SQL = "call PCK_MONPACKAGE.MA_PROCEDURE_AVEC_2PARMS(?, ?)"
        Set cmd = CreateObject("ADODB.Command")
        With cmd
        Set .ActiveConnection = cn
            .CommandText = SQL
            .CommandType = xlCmdCube  'Une constante = 1
             'Création du premier paramètre: par cmd.CreateParameter(NOM, type, direction (IN ou Out, etc), Taille si nécessaire, Valeur)
            Set param = cmd.CreateParameter("NOM_1er_Parm", adUnsignedBigInt, adParamInput, , 5)
            .Parameters.Append param
            'Création du deuxième paramètre
            Set param = cmd.CreateParameter("NOM_2em_Parm", adUnsignedBigInt, adParamInput, , 10)
            .Parameters.Append param
        End With
        Set rs = CreateObject("ADODB.Recordset")
        Set rs = cmd.Execute
     
        cn.Close
    End Sub
    Merci.

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

Discussions similaires

  1. [AS400] Appel d'une procédure stockée
    Par Portekoi dans le forum DB2
    Réponses: 55
    Dernier message: 26/11/2008, 10h01
  2. [c#] Appel d'une procédure stockée Record
    Par lapartdombre dans le forum Accès aux données
    Réponses: 4
    Dernier message: 02/08/2007, 17h20
  3. Appel d'une procédure stockée sous VB 6
    Par Polux000 dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 11/01/2006, 09h21
  4. Réponses: 2
    Dernier message: 10/12/2004, 15h43
  5. Appel d'une procédure stockée par un vbscript
    Par NicoNours dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 08/10/2004, 13h53

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