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 :

Synthaxe VBA-SQL variable NULL store procedure


Sujet :

Macros et VBA Excel

  1. #21
    Membre à l'essai
    Homme Profil pro
    pharmacien
    Inscrit en
    Septembre 2016
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Pérou

    Informations professionnelles :
    Activité : pharmacien
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Septembre 2016
    Messages : 42
    Points : 21
    Points
    21
    Par défaut
    Oui mais quand j´execute ma procedure en SQL avec pour valeur a mes variables, il me renvoie toutes les valeurs possible, je cherche a faire pareil en vba,

    En SQL
    if @cuenta = ' '
    begin
    set @cuenta = '%'
    end

    Pourrait fonctionner?

    J´ai ma réponse cela ne fonctionne pas

  2. #22
    Invité
    Invité(e)
    Par défaut
    Oui mais dans ta proc tu teste ' ' un espace pas null!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    En SQL
    if @cuenta = ' '
    begin
    set @cuenta = '%'
    end
    Set prm(0) = Con.Param("FechaC", 200, 1, 15, " ")

  3. #23
    Membre à l'essai
    Homme Profil pro
    pharmacien
    Inscrit en
    Septembre 2016
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Pérou

    Informations professionnelles :
    Activité : pharmacien
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Septembre 2016
    Messages : 42
    Points : 21
    Points
    21
    Par défaut
    Oui je suis d´accord mais je voulais lui envoyer null en texte,
    pas fonctionner alors null en variant pas fonctionner,

    Je lui envoie vide en dur: comme ca
    Set prm(3) = Con.Param("Cuentas", 200, 1, 30000, " ")

    avec ce bout de code en sql:
    if @cuenta = ' '
    begin
    set @cuenta = null
    end

    Pas fonctionner...

    Je vais essayer en le remplacant par:
    if @cuenta = 'null'
    begin
    set @cuenta = null
    end

  4. #24
    Invité
    Invité(e)
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set prm(3) = Con.Param("Cuentas", 200, 1, 30000, "%")
    Null c'est rien alors % c'est tout!

    C'est bien ce que tu veux non ?

  5. #25
    Membre à l'essai
    Homme Profil pro
    pharmacien
    Inscrit en
    Septembre 2016
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Pérou

    Informations professionnelles :
    Activité : pharmacien
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Septembre 2016
    Messages : 42
    Points : 21
    Points
    21
    Par défaut
    J´ai ma réponse cela ne fonctionne pas

  6. #26
    Invité
    Invité(e)
    Par défaut
    Fais une proc stok qui prend une valeur et renvoie la valeur donnée en paramètre.

  7. #27
    Membre à l'essai
    Homme Profil pro
    pharmacien
    Inscrit en
    Septembre 2016
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Pérou

    Informations professionnelles :
    Activité : pharmacien
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Septembre 2016
    Messages : 42
    Points : 21
    Points
    21
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set prm(3) = Con.Param("Cuentas", 200, 1, 30000, "%")
    Fonctionne pas non plus...

    Pas compris dis m´en plus stp...

  8. #28
    Invité
    Invité(e)
    Par défaut
    Tu rédiges une procédure stocké avec un paramètre et qui ce contente de retourner la valeur donné!

    En suite on fera de teste dessus is null like etc...

  9. #29
    Membre à l'essai
    Homme Profil pro
    pharmacien
    Inscrit en
    Septembre 2016
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Pérou

    Informations professionnelles :
    Activité : pharmacien
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Septembre 2016
    Messages : 42
    Points : 21
    Points
    21
    Par défaut
    une procedure avec juste un parametre et se contente juste de retourner la valeur du parametre?

  10. #30
    Invité
    Invité(e)
    Par défaut
    Oui dans un premier temps!

    Apres on testera le null le %

    Identifions qui est a la ramasse!

  11. #31
    Membre à l'essai
    Homme Profil pro
    pharmacien
    Inscrit en
    Septembre 2016
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Pérou

    Informations professionnelles :
    Activité : pharmacien
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Septembre 2016
    Messages : 42
    Points : 21
    Points
    21
    Par défaut
    Dsl d´etre un peu long a comprendre face a ta réactivité...

    Code SQL
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    ALTER PROCEDURE SBO_SP_LP_PRUEBA
    @Valor nvarchar(10)
    AS
    SELECT @valor
     
    exec SBO_SP_LP_PRUEBA 'NULL'
    Code VBA
    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
    29
    30
    31
    32
    33
    34
    Function ConectP(Feuille As String, VFilas, Valor As String)
    Dim Con As New ADODBRD, Sql As String
     
    Con.TYPEBASE = SQLSERVER2005
    Con.Server = "BLADELAB01"
    Con.Base = "SBO_PORTUGAL_PRODUCCION"
    Con.User = "etiquetas"
    Con.PassWord = "francia"
     
    Dim prm(0) As Object
    Con.OpenConnetion
    Set prm(0) = Con.Param("Valor", 200, 1, 15, Valor)
    Sql = "SBO_SP_LP_PRUEBA"
     
    On Error GoTo ErrorBD
     
    Set Rs = Con.CommadExecute(adCmdStoredProc, prm, Sql)
        If Rs.EOF Then
        MsgBox "Sin datos corespondiendo", vbInformation, "Mensaje"
        Else
            Do While Not Rs.EOF
                With Sheets(Feuille)
                .Cells(VFilas, 1).Value = Rs(0).Value
                End With
            Rs.MoveNext
            VFilas = VFilas + 1
            Loop
        End If
    Con.CloseConnection
     
    Exit Function
    ErrorBD:
    MsgBox "Error en el acceso a BD. Revisar " & Err.Description
    End Function
    Appel de ma fonction depuis usf:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub CommandButton1_Click()
    Dim Feuille As String
    ConectP "Prueba", 2, "test"
    End Sub
    Et ca fonctionne...

    Quand je dis que cela fonctionne, cad que:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ConectP "Prueba", 2, "null"
    retourne null
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ConectP "Prueba", 2, "%"
    retourne %

  12. #32
    Invité
    Invité(e)
    Par défaut
    Maintenant tu modifies ta procédure pour qu'elle retourne 'Null' quand le.paramètre est Null.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set prm(0) = Con.Param("Valor", 200, 1, 15, Null)

  13. #33
    Membre à l'essai
    Homme Profil pro
    pharmacien
    Inscrit en
    Septembre 2016
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Pérou

    Informations professionnelles :
    Activité : pharmacien
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Septembre 2016
    Messages : 42
    Points : 21
    Points
    21
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub CommandButton1_Click()
    Dim Feuille As String
    ConectP "Prueba", 2, Null
    End Sub
    me retourne rien, fonctionne mais me retourne pas de valeur

    Donc code sql:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    ALTER PROCEDURE SBO_SP_LP_PRUEBA
    @Valor nvarchar(10)
    AS
    SELECT ISNULL(@valor,'NULL')
     
    exec SBO_SP_LP_PRUEBA NULL
    Code vba:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ConectP "Prueba", 2, Null
    Cela me renvoie le texte null

  14. #34
    Invité
    Invité(e)
    Par défaut
    Dans ta procédure stocké tu fais un truc genre if param is null

    Si je regarde ton poste #39 j'ai tendance a dire ça fonctionne!
    Dernière modification par Invité ; 19/05/2017 à 06h57.

  15. #35
    Membre à l'essai
    Homme Profil pro
    pharmacien
    Inscrit en
    Septembre 2016
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Pérou

    Informations professionnelles :
    Activité : pharmacien
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Septembre 2016
    Messages : 42
    Points : 21
    Points
    21
    Par défaut
    Bonjour a tous,

    apres de plusieurs essaies j´y suis enfin arrivé!

    Merci a tous pour vos précieuses aides!

    Merci Dysorthographie

  16. #36
    Invité
    Invité(e)
    Par défaut
    Bonjour Tinni,

    Cool

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. sous VBA requete variable nulle
    Par Chris 81 dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 19/08/2008, 12h57
  2. [sql 200] Problème avec une stored procedure
    Par marc_dd dans le forum MS SQL Server
    Réponses: 8
    Dernier message: 01/12/2006, 15h11
  3. SQL injection, stored procedures
    Par badjoe dans le forum MS SQL Server
    Réponses: 12
    Dernier message: 03/08/2006, 12h26
  4. [SQL] stored procedure
    Par gregorian dans le forum Langage SQL
    Réponses: 3
    Dernier message: 23/11/2005, 14h08
  5. [Stored Procedure]Only constants, expressions, or variables
    Par nmerydem dans le forum MS SQL Server
    Réponses: 9
    Dernier message: 20/10/2004, 18h29

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