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 :

Problème avec requêtes stockées et procédures stockées (Demande exemples concrets)


Sujet :

WinDev

  1. #1
    Candidat au Club
    Homme Profil pro
    Responsable d'un système d'information métier
    Inscrit en
    Février 2015
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Responsable d'un système d'information métier

    Informations forums :
    Inscription : Février 2015
    Messages : 10
    Points : 4
    Points
    4
    Par défaut Problème avec requêtes stockées et procédures stockées (Demande exemples concrets)
    Bonjour,

    Je patine sous WINDEV concernant la syntaxe d'une procédure stockée exécutant une requête stockée sur un serveur HFSQL C/S
    Comme je le précise dans le titre, j'aimerais un exemple concret d'une personne qui a déjà écrit ce genre de procédure et requête
    Ça fait 4 jours que je cherche, que j'essaie toutes les solutions proposées dans l'AIDE PCSOFT, ou autres aides de bonne volonté des FORUM sans résultat ...

    Environnement :
    Je suis sous WINDEV22 et serveur HFSQL : V.220068

    Mon problème :

    Ma procédure et ma requête fonction très bien en mode test.
    Quand je l’exécute dans une tache planifiée coté serveur, les fichiers utilisés, bien que faisant partie intégrante de mon analyse, sembles de pas être reconnus.
    Certains me préconisent d'utiliser HDéclareExterne, mais je ne trouve aucune syntaxe qui puisse marcher.
    De plus je ne vois pas pourquoi utiliser un HDéclareExterne du fait que tous mes fichiers appartiennent à la même analyse.
    C'est un peu comme si ma femme me demandait ma carte d'identité chaque soir quand je rentre !!

    Ci-dessous mon code de test :

    Ma requête :

    Code SQL : 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
    SELECT 
    Descprition_KANBAN.ID_Description_KANBAN AS ID_Description_KANBAN, 
    Descprition_KANBAN.Date_Création AS Date_Création, 
    Descprition_KANBAN.Date_Modification AS Date_Modification, 
    Descprition_KANBAN.User_Créatioon AS User_Créatioon, 
    Descprition_KANBAN.User_Modification AS User_Modification, 
    Descprition_KANBAN.Référence_ERP AS Référence_ERP, 
    Descprition_KANBAN.Désignation_Ref_ERP AS Désignation_Ref_ERP, 
    Descprition_KANBAN.ID_Usine AS ID_Usine, 
    Descprition_KANBAN.ID_Magasin_Conditionnement AS ID_Magasin_Conditionnement, 
    Descprition_KANBAN.ID_Adresse_contionnement AS ID_Adresse_contionnement, 
    Descprition_KANBAN.ID_Ligne_Production AS ID_Ligne_Production, 
    Descprition_KANBAN.ID_Adresse_Livraison AS ID_Adresse_Livraison, 
    Descprition_KANBAN.Imprimante_Liée AS Imprimante_Liée, 
    Descprition_KANBAN.Qt_Etiquette_KANBAN AS Qt_Etiquette_KANBAN, 
    Descprition_KANBAN.En_service AS En_service, 
    Descprition_KANBAN.Poids AS Poids, 
    Descprition_KANBAN.Longueur AS Longueur, 
    Descprition_KANBAN.Largeur AS Largeur, 
    Descprition_KANBAN.Hauteur AS Hauteur, 
    Descprition_KANBAN.Matière AS Matière, 
    Descprition_KANBAN.Information_Préparation AS Information_Préparation, 
    Descprition_KANBAN.Qt_Contenant AS Qt_Contenant, 
    Descprition_KANBAN.Information_Livraison AS Information_Livraison, 
    Descprition_KANBAN.Date_Activation AS Date_Activation
    FROM 
    Descprition_KANBAN
    WHERE 
    Descprition_KANBAN.En_service = 1

    Ma procédure de test :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    PROCEDURE Validation_Requête()
    Ok est un booléen
    Ok = HExécuteRequête(REQ_Essai,hRequêteDéfaut)
     
    SI Ok = Vrai ALORS
        POUR TOUT REQ_Essai 
            Trace (REQ_Essai.Référence_ERP)
        FIN
    SINON
        Trace("Requête n'a pas été lancée" + RC + HErreurInfo()) 
    FIN

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    411
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 411
    Points : 434
    Points
    434
    Par défaut
    Salut,

    Code bouton :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Trace(HExécuteProcédure(MaConnexionLocalhost,TEST2))
    proc stockée TEST2 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    PROCÉDURE TEST2()
    sRes est chaîne
    HExécuteRequête(REQ_Test)
    HLitPremier(REQ_Test)
    TANTQUE PAS HEnDehors(REQ_Test)
    	sRes+=REQ_Test.LIBTYPE+RC
    	HLitSuivant(REQ_Test)
    FIN
    RENVOYER sRes
    Requête stockée REQ_Test:
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    SELECT 
    	TYPE.IDTYPE AS IDTYPE,	
    	TYPE.COULTYPE AS COULTYPE,	
    	TYPE.COULLIB AS COULLIB,	
    	TYPE.LIBTYPE AS LIBTYPE
    FROM 
    	TYPE


    Le fichier TYPE est dans l'exemple WD Mail

  3. #3
    Candidat au Club
    Homme Profil pro
    Responsable d'un système d'information métier
    Inscrit en
    Février 2015
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Responsable d'un système d'information métier

    Informations forums :
    Inscription : Février 2015
    Messages : 10
    Points : 4
    Points
    4
    Par défaut
    Merci 'alaclef' pour ce code qui fonctionne parfaitement, et que j'avais déjà testé.
    Cependant mon problème n'est pas de lancer la procédure d'une application WINDEV avec un bouton, mais de la lancer d'une tache planifiée depuis le serveur HFSQL, et là ce code ne marche pas ..... Toujours les mêmes erreurs renvoyées

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    411
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 411
    Points : 434
    Points
    434
    Par défaut
    As tu un Hchangeconnection dans ta proc stockée?

  5. #5
    Candidat au Club
    Homme Profil pro
    Responsable d'un système d'information métier
    Inscrit en
    Février 2015
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Responsable d'un système d'information métier

    Informations forums :
    Inscription : Février 2015
    Messages : 10
    Points : 4
    Points
    4
    Par défaut
    Citation Envoyé par alaclef Voir le message
    As tu un Hchangeconnection dans ta proc stockée?
    Non pas de Hchangeconnection (Voir le code de ma procédure de test dans mon premier message)

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    411
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 411
    Points : 434
    Points
    434
    Par défaut
    essaye...

  7. #7
    Candidat au Club
    Homme Profil pro
    Responsable d'un système d'information métier
    Inscrit en
    Février 2015
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Responsable d'un système d'information métier

    Informations forums :
    Inscription : Février 2015
    Messages : 10
    Points : 4
    Points
    4
    Par défaut
    C'était une piste mais ...... cette instruction n'est pas disponible en procédure stockée

    Collection_RCR_KANBAN
    Erreur :La fonction 'HChangeConnection' n'est pas disponible en procédure stockée.
    Collection_RCR_KANBAN.Validation_Requête, Procédure locale, ligne 4, colonne 1

  8. #8
    Membre chevronné Avatar de EDM-TAHITI
    Homme Profil pro
    Directeur Service informatique et projet développement
    Inscrit en
    Janvier 2010
    Messages
    994
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Directeur Service informatique et projet développement
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2010
    Messages : 994
    Points : 1 995
    Points
    1 995
    Par défaut
    Hello,
    J'ai réalisé les même tests, cela fonctionne correctement sous HFSQL23 (J'ai plus la 22)
    Pour savoir ce qu'il se passe réellement, il faut que tu branches les logs 'Serveur' de ton HFSQL et tu verras ce qui cloche.
    J'ai fais là aussi des tests, tu vois tout ce qui se passe dans le serveur. Il faut cocher 'afficher les logs du serveur'
    Je pense que tu trouveras la réponses dans les logs.
    Bon dev
    le savoir est dans les livres, 'the magic touch F1'
    Amicalement
    Eric

  9. #9
    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'ai cherché dans l'aide, et j'ai trouvé ça : https://doc.pcsoft.fr/fr-FR/?3044360&product=WD
    Je suppose que tu as déjà lu cette page...

    - Est-ce que ta requête est bien dans l'analyse , pas uniquement dans le projet ?
    - Et donne nous le message d'erreur précis que tu obtiens, ça peut aider.
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  10. #10
    Membre chevronné Avatar de EDM-TAHITI
    Homme Profil pro
    Directeur Service informatique et projet développement
    Inscrit en
    Janvier 2010
    Messages
    994
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Directeur Service informatique et projet développement
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2010
    Messages : 994
    Points : 1 995
    Points
    1 995
    Par défaut
    Hello,
    Dernier truc, c'est bien un compte avec autorisation qui exécute la tache planifiée qui plante côté serveur sur la base de données?
    Je dis cela, je dis rien, mais on ne sait jamais. Vérifie aussi de ce côté là.
    Bon Dev
    le savoir est dans les livres, 'the magic touch F1'
    Amicalement
    Eric

  11. #11
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    411
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 411
    Points : 434
    Points
    434
    Par défaut
    Dans ton analyse tes fichiers HFSQL sont déclarés sur ton serveur d'exploit?
    Analyse / Associer un connexion....

  12. #12
    Candidat au Club
    Homme Profil pro
    Responsable d'un système d'information métier
    Inscrit en
    Février 2015
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Responsable d'un système d'information métier

    Informations forums :
    Inscription : Février 2015
    Messages : 10
    Points : 4
    Points
    4
    Par défaut
    Citation Envoyé par alaclef Voir le message
    Dans ton analyse tes fichiers HFSQL sont déclarés sur ton serveur d'exploit?
    Analyse / Associer un connexion....
    Oui, Chaque fichier de l'analyse est configuré avec la connexion HFSQL C/S

  13. #13
    Candidat au Club
    Homme Profil pro
    Responsable d'un système d'information métier
    Inscrit en
    Février 2015
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Responsable d'un système d'information métier

    Informations forums :
    Inscription : Février 2015
    Messages : 10
    Points : 4
    Points
    4
    Par défaut
    Citation Envoyé par EDM-TAHITI Voir le message
    Hello,
    Dernier truc, c'est bien un compte avec autorisation qui exécute la tache planifiée qui plante côté serveur sur la base de données?
    Je dis cela, je dis rien, mais on ne sait jamais. Vérifie aussi de ce côté là.
    Bon Dev
    La tache planifiée est celle que j'ai éditée avec le centre de CONTROLE HFSQL sur le serveur et non sous l'éditeur WINDOWS standard.
    Je suppose donc que tous les droits sont correctes quand on procède ainsi.

  14. #14
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    411
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 411
    Points : 434
    Points
    434
    Par défaut
    Pige pas,
    essaye de pas HFSQL en 24

    Si pas confidentiel envoie nous le projet

  15. #15
    Candidat au Club
    Homme Profil pro
    Responsable d'un système d'information métier
    Inscrit en
    Février 2015
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Responsable d'un système d'information métier

    Informations forums :
    Inscription : Février 2015
    Messages : 10
    Points : 4
    Points
    4
    Par défaut
    Pour information, j'ai réalisé un SERVICE Windev, installé sur le serveur de ma base HFSQL C/S, qui exécute la même code programme et requête que ma procédure stockée, et cela fonctionne parfaitement.
    Tout porte à croire que le code utilisé dans les procédures stockées, Excuté dans l’environnement de ma base HFSQL C/S est 'aveugle', qu'il ne prend pas en compte l'analyse ou environnement de la base sur laquelle il s’exécute ... ?!?!?

  16. #16
    Candidat au Club
    Homme Profil pro
    Responsable d'un système d'information métier
    Inscrit en
    Février 2015
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Responsable d'un système d'information métier

    Informations forums :
    Inscription : Février 2015
    Messages : 10
    Points : 4
    Points
    4
    Par défaut
    Citation Envoyé par alaclef Voir le message
    Pige pas,
    essaye de pas HFSQL en 24

    Si pas confidentiel envoie nous le projet
    Je comprends bien la demande, mais le projet est un peu conséquent
    Applications WindevMOBILE sur Lecteurs QR code DATALOGIC
    Supervision Application avec plus de 200 requêtes .... et environ 4000 lignes de programme ....
    Le tout est maintenant en production , avec comme je l'ai dit plus haut , un service installé sur le SERVEUR HFSQL C/S pour contourner ces foutues procédures et requêtes intégrées qui ne marchent pas sur le serveur.
    Mais je suis curieux de nature, et j'aimerai bien comprendre ..... il y a un grand flou quand même autour de ça ......

    Sinon le code présenté en début de mon POST illustre bien mon problème.
    Une procédure stockée, une requête stockée, la procédure étant exécutée soit par un trigger de la base, ou une tache planifiée de la base. Dans les 2 cas l'erreur est la même

Discussions similaires

  1. Problème avec Agent SQL et procédure stockée
    Par try123 dans le forum Développement
    Réponses: 5
    Dernier message: 14/06/2013, 16h15
  2. Problème avec retour d'une procédure stockée
    Par jomphh dans le forum Deski
    Réponses: 22
    Dernier message: 21/11/2007, 23h57
  3. Problème de longueur de requête dans une procédure stockée
    Par doudou_rennes dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 21/03/2007, 16h39
  4. Réponses: 4
    Dernier message: 16/12/2005, 16h25
  5. procédures stockées dans procédure stockée
    Par olivc dans le forum MS SQL Server
    Réponses: 8
    Dernier message: 30/05/2005, 16h58

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