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

WinDev Discussion :

Demande d'éclaircissement sur les Procédures et requêtes stockées [WD20]


Sujet :

WinDev

  1. #1
    Membre actif
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    174
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations forums :
    Inscription : Janvier 2011
    Messages : 174
    Points : 287
    Points
    287
    Par défaut Demande d'éclaircissement sur les Procédures et requêtes stockées
    Bonjour;

    Est-ce possible de me donner quelques explications et conseils sur comment travailler avec les Procédures et Requêtes Stockées.

    j'ai une table reliée à un fichier

    Partie 01 :
    Création d'une Procédure Stockée

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    PROCEDURE Pro_SupprimeAgence()
    HSupprime(Agence)
    remplacement de l'ancien code :

    Par :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    HExécuteProcédure(MaConnexion,Pro_SupprimeAgence)
    Test n°01 : Erreur
    ......
    Que s'est-il passé ?
    Aucun enregistrement en cours n'est défini pour le fichier <Agence>.
    .....


    Partie 02 :
    Modification de la Procédure Stockée

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    PROCEDURE Pro_SupprimeAgence()
    HSupprime(Agence,hNumEnrEnCours)
    Test n°02 : Erreur
    ......
    Que s'est-il passé ?
    Aucun enregistrement en cours n'est défini pour le fichier <Agence>.
    .....



    Partie 03 :
    Modification de la Procédure Stockée

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    PROCEDURE Pro_SupprimeAgence(sP_IDAgence est une chaîne)
    HLitRecherche(Agence,IDAgence,sP_IDAgence)
    HSupprime(Agence)
    le code d'appel :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    HExécuteProcédure(MaConnexion,Pro_SupprimeAgence,Agence.IDAgence)
    Test n° 03 : Ok


    Partie 04 :
    Modification de la PS
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    PROCEDURE Pro_SupprimeAgence(nP_NumEnr est un entier)
    HSupprime(Agence,nP_NumEnr)
    le code d'appel :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    HExécuteProcédure(MaConnexion,Pro_SupprimeAgence,HNumEnr(Agence))
    Test n° 04 : Ok

    ----------------------



    Partie 05 :
    Création d'une Requête Stockée : REQ_SupprimeAgence

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    DELETE FROM 
    	Agence
    WHERE 
    	Agence.IDAgence = {PIDAgence}

    Modification de la Procédure Stockée

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    PROCEDURE Pro_SupprimeAgence(P_IDAgence est une chaîne)
    HExécuteRequête(REQ_SupprimeAgence,hRequêteDéfaut,P_IDAgence)
    le code d'appel :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    HExécuteProcédure(MaConnexion,Pro_SupprimeAgence,Agence.IDAgence)
    Test n° 05 : Pas d'erreur et Pas de suppression !!! devenu OK le lendemain


    Merci d'avance.

    ------------------------------------------------------------

    P.S.: J'ai modifié le message en ajoutant Partie 01 ... 05 pour que ça soit lisible.

    le "Ok" c.à.d. ça marche

  2. #2
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 054
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 054
    Points : 9 394
    Points
    9 394
    Par défaut
    La dernière requête peut donner le résultat voulu, ou supprimer un enregistrement 'aléatoire', ou ne rien faire. Impossible de prédire.

    Tu lui donnes en paramètre un hNumenr(), et tu exploites ce paramètre comme un Id_Agence. A priori, aucune raison que le hNumEnr() d'un enregistrement soit égal à son idAgence.
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  3. #3
    Membre actif
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    174
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations forums :
    Inscription : Janvier 2011
    Messages : 174
    Points : 287
    Points
    287
    Par défaut
    Bonjour;

    @Tbc92
    Merci de me répondre.

    je ne vois pas où ?

    Pour la requête stockée c'est avec le paramètre Agence.IDAgence = {PIDAgence}
    Pour la procédure stockée c'est (P_IDAgence est une chaîne)
    Pour l'appel Agence.IDAgence

    Foued.

  4. #4
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 054
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 054
    Points : 9 394
    Points
    9 394
    Par défaut
    J'avais répondu avant que tu n'ajoutes les titres Partie 1, .. partie 5. J'ai dû me planter dans la lecture.
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  5. #5
    Membre actif
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    174
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations forums :
    Inscription : Janvier 2011
    Messages : 174
    Points : 287
    Points
    287
    Par défaut
    Bonsoir;

    Hier c’était pourquoi ça marche pas ?
    Aujourd'hui pourquoi ça marche ?

    Conclusions :

    De la partie 01 et 02, même que la table est reliée au fichier, le pointeur du fichier HFQSL C/S ne pointe pas sur l’enregistrement sélectionné.

    Si on veut utiliser les ordres H**, on a le choix entre la partie 03 et la partie 04.

    Si on veut utiliser les requêtes stockées (SQL) , Voir partie 05.

    Remarque : quand je parle de table c’est le champ table de windev.

    Bon Dev.

  6. #6
    Membre actif
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    174
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations forums :
    Inscription : Janvier 2011
    Messages : 174
    Points : 287
    Points
    287
    Par défaut
    Citation Envoyé par fouedusa Voir le message
    Bonsoir;

    Hier c’était pourquoi ça marche pas ?
    Aujourd'hui pourquoi ça marche ?
    Bonjour;
    En testant une autre copie identique du projet ===> ça marche pas !!! ???

    Qu'est ce qu'il faut faire pour que ça marche ?

    1 - J'ai fait un test de la Requête stockée depuis l'éditeur de requête. Bouton "GO" ===> Résultat ok
    2 - J'ai fait un test de la Procédure stockée depuis l'éditeur de code de la procédure. Bouton "GO" ===> Résultat ok

    Aller, on test maintenant.
    et Hop ===> ça marche. ça marche. ça marche.

    Suite de la conclusion :

    Il faut tester les Requêtes et Procédures Stockées.

    Bon Dev.

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

Discussions similaires

  1. [XL-2007] Demande d'infos sur les requêtes
    Par webisfun dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 14/03/2012, 13h15
  2. Demande infos sur les procédures stockées
    Par VILPELLET dans le forum SQL
    Réponses: 3
    Dernier message: 15/10/2007, 14h27
  3. Informations sur les procédures stockées
    Par jfphan dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 13/01/2004, 14h30
  4. [VBA-E]Demande de précision sur les menus
    Par geffdenimes dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 25/06/2003, 10h46

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