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 :

Exécuter une procédure sans exécuter l'application [WD23]


Sujet :

WinDev

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2013
    Messages
    378
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Octobre 2013
    Messages : 378
    Points : 40
    Points
    40
    Par défaut Exécuter une procédure sans exécuter l'application
    Bonjour

    Je veux exécuter, dans le serveur, une procédure à minuit sans exécuter l'application (l'application est fermée).

    Merci de me donner une idée ou une méthode

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 198
    Points : 12 774
    Points
    12 774
    Par défaut
    Bonjour,
    Je vois deux solutions:
    1. Lancer l'application sur le serveur, en lui passant un paramètre pour lui indiquer quoi faire
    2. Sortir la procédure de l'application et la mettre dans une WDL externe

    Dans le deuxième cas, tu peux intégrer cette WDL dans une autre application qui va tourner sur le serveur.
    Il faut bien sûr ajouter dans cette WDL tout ce qu'il faut pour que la procédure fonctionne.
    Si dans le deuxième cas tu mets tout dans la WDL externe, autant lancer directement l'application.

    Le tout est lancé via une tâche planifiée sur le serveur.

    Tatayo.

  3. #3
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2013
    Messages
    378
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Octobre 2013
    Messages : 378
    Points : 40
    Points
    40
    Par défaut
    Merci Tatayo

    Est ce qu'on peut faire une procédure stockée puis je la planifie dans une tache dans le serveur HFSQL ?

  4. #4
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 202
    Points : 9 190
    Points
    9 190
    Par défaut
    Si tu as un gds, tu crées une collection de procédure que tu pourras partager entre 2 projets.

    Tu peux également créer 2 configurations de ton projet :
    - une "complète"
    - une avec juste ta proc et le "système d'appel".
    Commencez toujours appuyer sur la touche F1 et puis n'hésitez à passer par un moteur de recherche...
    Le forum est fait pour répondre aux questions : pas la peine de me les envoyer par MP. Merci.

    Sur internet, tout est vrai ! Honoré de Balzac
    Make it real not fantasy... Herman Rarebell

  5. #5
    Expert éminent sénior
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 198
    Points : 12 774
    Points
    12 774
    Par défaut
    Citation Envoyé par Fmfib Voir le message
    Merci Tatayo

    Est ce qu'on peut faire une procédure stockée puis je la planifiée dans une tache dans le serveur HFSQL ?
    Aucune idée, ça dépend de ce que fait ta procédure, et de ce que permet HFSQL.
    Je ne peux pas t'aider sur ce point, je n'utilise pas HFSQL.

    Tatayo.

  6. #6
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2013
    Messages
    378
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Octobre 2013
    Messages : 378
    Points : 40
    Points
    40
    Par défaut
    Citation Envoyé par tatayo Voir le message
    Aucune idée, ça dépend de ce que fait ta procédure, et de ce que permet HFSQL.
    Je ne peux pas t'aider sur ce point, je n'utilise pas HFSQL.

    Tatayo.
    Merci pour ton retour

  7. #7
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2013
    Messages
    378
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Octobre 2013
    Messages : 378
    Points : 40
    Points
    40
    Par défaut
    Citation Envoyé par frenchsting Voir le message
    Si tu as un gds, tu crées une collection de procédure que tu pourras partager entre 2 projets.

    Tu peux également créer 2 configurations de ton projet :
    - une "complète"
    - une avec juste ta proc et le "système d'appel".


    Merci frenchsting pour tes idées

    Mais comment j'exécute ma procédure depuis la configuration 2 et L'application ne se lancera jamais

  8. #8
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 202
    Points : 9 190
    Points
    9 190
    Par défaut
    Dans le code du projet tu fais quelquechose comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Déclarations communes
    traitements communs...
    <COMPILE SI Configuration="Procédure">
    	MaProcedureAexécuter(...)
    	FinProgramme()
    <FIN>
    Traitements projet normal
    On peut également utiliser la ligne de commande Dans ce cas tu pourrais faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Déclarations communes
    traitements communs...
    Si ligneCommande()="Procédure" alors
    	MaProcedureAexécuter(...)
    	FinProgramme()
    FIN
    Traitements projet normal
    Commencez toujours appuyer sur la touche F1 et puis n'hésitez à passer par un moteur de recherche...
    Le forum est fait pour répondre aux questions : pas la peine de me les envoyer par MP. Merci.

    Sur internet, tout est vrai ! Honoré de Balzac
    Make it real not fantasy... Herman Rarebell

  9. #9
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2013
    Messages
    378
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Octobre 2013
    Messages : 378
    Points : 40
    Points
    40
    Par défaut
    Citation Envoyé par frenchsting Voir le message
    Dans le code du projet tu fais quelquechose comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Déclarations communes
    traitements communs...
    <COMPILE SI Configuration="Procédure">
    	MaProcedureAexécuter(...)
    	FinProgramme()
    <FIN>
    Traitements projet normal
    On peut également utiliser la ligne de commande Dans ce cas tu pourrais faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Déclarations communes
    traitements communs...
    Si ligneCommande()="Procédure" alors
    	MaProcedureAexécuter(...)
    	FinProgramme()
    FIN
    Traitements projet normal

    J'ai bien compris ton code et je l'ai testé mais ma procédure ne s’exécute plus, car que je ne lance pas mon application
    Est ce que je crée un autre EXE contenant ce code et je je lance en ionisant ?

  10. #10
    Expert confirmé
    Avatar de Voroltinquo
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Juin 2017
    Messages
    2 808
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Juin 2017
    Messages : 2 808
    Points : 5 266
    Points
    5 266
    Billets dans le blog
    1
    Par défaut
    Pourquoi ne pas créer un service/un daemon au niveau de ton serveur ?
    Il y a peut-être plus simple, mais ça tourne.
    Quand tout a échoué utilisez l'option RTFM

  11. #11
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2013
    Messages
    378
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Octobre 2013
    Messages : 378
    Points : 40
    Points
    40
    Par défaut
    Citation Envoyé par Voroltinquo Voir le message
    Pourquoi ne pas créer un service/un daemon au niveau de ton serveur ?

    daemon c'est pour créer des lecteurs virtuels

  12. #12
    Expert confirmé
    Avatar de Voroltinquo
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Juin 2017
    Messages
    2 808
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Juin 2017
    Messages : 2 808
    Points : 5 266
    Points
    5 266
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Fmfib Voir le message
    daemon c'est pour créer des lecteurs virtuels
    Daemon tool oui.
    Un daemon est l'équivalent d'un service sous UNIX.
    Il y a peut-être plus simple, mais ça tourne.
    Quand tout a échoué utilisez l'option RTFM

  13. #13
    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
    Le + simple est de créer une configuration "traitement de nuit" et de lancer l'exe par le planificateur de tache Windows.

  14. #14
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2013
    Messages
    378
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Octobre 2013
    Messages : 378
    Points : 40
    Points
    40
    Par défaut Aucune analyse n'est ouverte et le fichier ...
    Citation Envoyé par alaclef Voir le message
    Le + simple est de créer une configuration "traitement de nuit" et de lancer l'exe par le planificateur de tache Windows.
    Merci alaclef


    j'ai planifie une tache qui va exécuter une procédure stockée "Dupliquer"

    A l’exécution de cette tache j' ai un message "Aucune analyse n'est ouverte et le fichier <Ventes> n'a pas été décrit.

    ma procédure:

    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
     
     
    HDéclareExterne("VENTE.FIC", "VENTE")
     
    POUR TOUT VENTE // ICI LE MESSAGE D'ERREUR
     
    HDéclareExterne("FBidonEval.fic","FBidonEval")
     
    FBidonEval.LIBELLE=VENTE.LibProd
    FBidonEval.Reference=VENTE.Reference
     
    HAjoute(FBidonEval)
     
     
    FIN

  15. #15
    Expert confirmé
    Avatar de Voroltinquo
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Juin 2017
    Messages
    2 808
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Juin 2017
    Messages : 2 808
    Points : 5 266
    Points
    5 266
    Billets dans le blog
    1
    Par défaut
    Pour le HDeclareExterne, il faut le chemin complet du fichier.
    La il cherche ton fichier dans le répertoire de données, c'est sur, il ne doit pas le trouver.
    Il y a peut-être plus simple, mais ça tourne.
    Quand tout a échoué utilisez l'option RTFM

  16. #16
    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
    Oublie la déclaration externe. Tu fais une autre configuration qui va générer un exe que tu planifieras.

  17. #17
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2013
    Messages
    378
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Octobre 2013
    Messages : 378
    Points : 40
    Points
    40
    Par défaut
    Citation Envoyé par Voroltinquo Voir le message
    Pour le HDeclareExterne, il faut le chemin complet du fichier.
    La il cherche ton fichier dans le répertoire de données, c'est sur, il ne doit pas le trouver.

    Merci Voroltinquo

    mon fichier est dans le centre HFSQLet ma procedure sera executée dans la même analyse

    Dans l'aide
    Si la fonction HDéclareExterne est utilisée dans une procédure stockée, le chemin du fichier de données doit être relatif à la base de données en cours.

    dans la planification par assistant j'ai renseigné la base de donnée

    Je ne sais pas comment déterminer le chemin


    Juste le problème de chemin. c'est résoulu

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 24/12/2018, 14h39
  2. Assigner une procédure sans pointeur
    Par LaurentC33 dans le forum Langage
    Réponses: 2
    Dernier message: 15/01/2014, 14h37
  3. [12.5] Exporter le resultat d'une procédure sans afficher les colonnes
    Par bossun dans le forum Adaptive Server Enterprise
    Réponses: 7
    Dernier message: 07/04/2010, 15h39
  4. Réponses: 4
    Dernier message: 02/11/2009, 16h22
  5. [C# 2] Faire une pause sans bloquer l'application
    Par Tamahome dans le forum ASP.NET
    Réponses: 7
    Dernier message: 09/04/2008, 12h53

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