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

Outils BI Discussion :

Exécution de la libname à chaque ouverture de projet


Sujet :

Outils BI

  1. #1
    Membre régulier
    Inscrit en
    Février 2009
    Messages
    268
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 268
    Points : 88
    Points
    88
    Par défaut Exécution de la libname à chaque ouverture de projet
    Bonjour,

    J'ai une question à propos de l'exécution des libnames à chaque fois je ferme et j'ouvre mon projet.

    Est ce qu'il n y a pas de moyen pour éviter ça?

    Merci

  2. #2
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2012
    Messages : 99
    Points : 202
    Points
    202
    Par défaut
    Bonjour,

    Il te faut modifier le fichier autoexec.sas
    "Statistics is the grammar of science" - K. Pearson

  3. #3
    Membre régulier
    Inscrit en
    Février 2009
    Messages
    268
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 268
    Points : 88
    Points
    88
    Par défaut
    et comment le modifier ?

  4. #4
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2012
    Messages : 99
    Points : 202
    Points
    202
    Par défaut
    Citation Envoyé par cococmoi Voir le message
    et comment le modifier ?
    Avec un éditeur de texte!

    Tu rajoutes les lignes de code qui t'intéressent (libname, requêtes, commentaires...) et elles seront exécutées au démarrage de SAS.
    "Statistics is the grammar of science" - K. Pearson

  5. #5
    Membre régulier
    Inscrit en
    Février 2009
    Messages
    268
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 268
    Points : 88
    Points
    88
    Par défaut
    excuse moi, mais j'ai toujours pas compris.

    J'ajoute les lignes de code qui m'intéressent (libname, requêtes, commentaires...) où ?

    En fait je ne sais pas comment modifier le fichier autoexec.sas ?

    Un exemple SVP

  6. #6
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2012
    Messages : 99
    Points : 202
    Points
    202
    Par défaut
    Tu recherches le fichier autoexec.sas , tu l'ouvres avec un éditeur de texte et tu rajoute tes instructions, par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    /* lignes à insérer dans le fichier autoexec.sas */
    libname     lib_rm      sref=lib     server=serv1; /*déclaration d'une libraire distante en local */
    libname     lib  "r:\chemin\repertoire";           /*déclaration d'une librairie */
    %include    "r:\chemin\pgmlot1.sas";               /*exécution du programme : "pgmlot1" */
    Ce fichier sera exécuté par SAS à chaque ouverture.
    "Statistics is the grammar of science" - K. Pearson

  7. #7
    Modérateur

    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Février 2011
    Messages
    1 624
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2011
    Messages : 1 624
    Points : 3 402
    Points
    3 402
    Par défaut
    Hello,
    le programme qui permet d'exécuter des instructions SAS à l'ouverture d'une session ( SAS ou SEG ) est AUTOEXEC.SAS.

    si t'as les droits d'écriture sur le dossier d'install SAS et si ton fichier autoexec.sas existe dans ce dossier, tu peux faire ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    data _null_;
    file "%str(%sysfunc(getoption(autoexec)))" mod;
     
    put /// %nrstr("libname rep 'c:\test';");
    run;
    ce bout de code permet d'insérer le libname dans le fichier AUTOEXEC.SAS
    N'oubliez pas de consulter les FAQ SAS et les cours et tutoriels SAS
    N'oubliez pas de mettre votre message à si la solution donnée résout votre problème

  8. #8
    Modérateur

    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Février 2011
    Messages
    1 624
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2011
    Messages : 1 624
    Points : 3 402
    Points
    3 402
    Par défaut
    Je rajoute un exemple de mise à jour ou de création du fichier Autoexec.sas s'il n'existe pas avec rajout d'un libname.
    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
    %macro ajout_lignes_autoexec;
    %if  %qsysfunc( filexist(%str(%sysfunc(getoption(autoexec)))))=1 %then %do;
     
    data _null_;
    file "%str(%sysfunc(getoption(autoexec)))" mod;
     
    put /// %nrstr("libname rep 'c:\test';");
    run;
    %end;
     
    %else %do ;
     
     
    data _null_;
     
    file  "&racine.\autoexe.sas"  ;
     
    put  / // 'libname rep "c:\test";';
     
    run;
     
    %end;
     
    %mend;
     
    %ajout_lignes_autoexec;
    ( pas tester)
    N'oubliez pas de consulter les FAQ SAS et les cours et tutoriels SAS
    N'oubliez pas de mettre votre message à si la solution donnée résout votre problème

  9. #9
    Membre régulier
    Inscrit en
    Février 2009
    Messages
    268
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 268
    Points : 88
    Points
    88
    Par défaut
    Mais avant d'ajouter ces lignes de code, il faut trouver le fichier AUTOEXEC.SAS ?

    J'ai fais une recherche dans la barre recherche sur mon ordinateur, mais je ne trouve rien.

    avez vous une idée sur où je dois aller ?

    Merci

  10. #10
    Modérateur

    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Février 2011
    Messages
    1 624
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2011
    Messages : 1 624
    Points : 3 402
    Points
    3 402
    Par défaut
    Le code que je t'ai proposé se charge de trouver le programme AUTOEXEC.SAS s'il ne le trouve pas, il le crée au bon endroit et insert les lignes que tu souhaites exécuter au démarrage de SAS.

    Exécute ce code si ton autoexec.sas existe, il sera affiché dans la log:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    %put %sysfunc(getoption(autoexec));
    sinon, il est au même endroit que SAS.EXE.
    N'oubliez pas de consulter les FAQ SAS et les cours et tutoriels SAS
    N'oubliez pas de mettre votre message à si la solution donnée résout votre problème

  11. #11
    Nouveau Candidat au Club
    Femme Profil pro
    Analyste de données
    Inscrit en
    Juillet 2014
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations professionnelles :
    Activité : Analyste de données

    Informations forums :
    Inscription : Juillet 2014
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Façon rapide et efficace avec SAS EG pour exécuter au démarrage des lignes de code de SAS
    1. Ouvrir SAS EG
    2. Sélectionner Outils
    3. Sélectionner Options
    4. Sélectionner Programme SAS
    Cocher la case «Soumettre le code SAS lorsque le serveur est connecté»
    Cliquer sur «Modifier...»
    Une fenêtre s'ouvre
    Y coller le code SAS que vous voulez exécuter automatiquement au démarrage de SAS
    OK partout, fermer votre session.

    Le tout devrait se faire automatiquement lors de la prochaine ouverture de votre SAS.

  12. #12
    Membre éprouvé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    747
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 747
    Points : 978
    Points
    978
    Par défaut
    Autre méthode un peu moins souple:

    Créer un "Flux de processus" nommé "Autoexec"
    A chaque ouverture du projet , le logiciel demandera si il faut executer ce flux. on peut egalement configurer dans les options pour que le message n'apparaisse pas et que le flux soit exécuté automatiquement

  13. #13
    Membre éprouvé
    Avatar de Haache
    Homme Profil pro
    Doctorant & Ingénieur Statiaticien Economiste
    Inscrit en
    Mars 2014
    Messages
    349
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : Canada

    Informations professionnelles :
    Activité : Doctorant & Ingénieur Statiaticien Economiste

    Informations forums :
    Inscription : Mars 2014
    Messages : 349
    Points : 1 009
    Points
    1 009
    Billets dans le blog
    8
    Par défaut
    Citation Envoyé par s_a_m Voir le message
    Je rajoute un exemple de mise à jour ou de création du fichier Autoexec.sas s'il n'existe pas avec rajout d'un libname.
    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
    %macro ajout_lignes_autoexec;
    %if  %qsysfunc( filexist(%str(%sysfunc(getoption(autoexec)))))=1 %then %do;
     
    data _null_;
    file "%str(%sysfunc(getoption(autoexec)))" mod;
     
    put /// %nrstr("libname rep 'c:\test';");
    run;
    %end;
     
    %else %do ;
     
     
    data _null_;
     
    file  "&racine.\autoexe.sas"  ;
     
    put  / // 'libname rep "c:\test";';
     
    run;
     
    %end;
     
    %mend;
     
    %ajout_lignes_autoexec;
    ( pas tester)
    Moi je ne m'en sors pas. Sas dit que le fichier n'est pas trouver. SVP expliquer clairement comment trouver le fichier Autoexec. J'ai essayé beaucoup de codes déjà mais après recherche je ne le trouve jamais
    • Faites un tour sur mon siteweb professionnel www.aristideelysee.16mb.com Des codes dans la section "media et code" pouvant vous aider que vous pouvez aussi partager sur les réseaux sociaux.
    • Visiter mon blog en cliquant ici! Des techniques, astuces et macros pour l'analyse quantitative.

  14. #14
    Membre éprouvé
    Avatar de Haache
    Homme Profil pro
    Doctorant & Ingénieur Statiaticien Economiste
    Inscrit en
    Mars 2014
    Messages
    349
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : Canada

    Informations professionnelles :
    Activité : Doctorant & Ingénieur Statiaticien Economiste

    Informations forums :
    Inscription : Mars 2014
    Messages : 349
    Points : 1 009
    Points
    1 009
    Billets dans le blog
    8
    Par défaut
    Citation Envoyé par xav2229 Voir le message
    Autre méthode un peu moins souple:

    Créer un "Flux de processus" nommé "Autoexec"
    A chaque ouverture du projet , le logiciel demandera si il faut executer ce flux. on peut egalement configurer dans les options pour que le message n'apparaisse pas et que le flux soit exécuté automatiquement

    Excusez!! C'est quoi un Flux de processus. Comment le créer???
    • Faites un tour sur mon siteweb professionnel www.aristideelysee.16mb.com Des codes dans la section "media et code" pouvant vous aider que vous pouvez aussi partager sur les réseaux sociaux.
    • Visiter mon blog en cliquant ici! Des techniques, astuces et macros pour l'analyse quantitative.

  15. #15
    Membre éprouvé
    Avatar de Stackware
    Homme Profil pro
    ArchiDuc de la Sasserie
    Inscrit en
    Juillet 2013
    Messages
    439
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : ArchiDuc de la Sasserie
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2013
    Messages : 439
    Points : 1 017
    Points
    1 017
    Billets dans le blog
    4
    Par défaut
    Parfois un dessin vaut mieux que mille explications...
    Nom : flux_process.gif
Affichages : 1768
Taille : 49,5 Ko

  16. #16
    Modérateur

    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Février 2011
    Messages
    1 624
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2011
    Messages : 1 624
    Points : 3 402
    Points
    3 402
    Par défaut
    Citation Envoyé par Haache Voir le message
    Moi je ne m'en sors pas. Sas dit que le fichier n'est pas trouver. SVP expliquer clairement comment trouver le fichier Autoexec. J'ai essayé beaucoup de codes déjà mais après recherche je ne le trouve jamais
    remplace &racine par !sasroot

    En fait !sasroot correspond au répertoire d'installation SAS. Sinon même question, t'es sur SAS Stand-alone? SAS EG avec SAS (moteur) installé en local? client serveur ? SAS EG avec SAS(moteur) installé sur un serveur ?SAS BI ( avec métadata )?
    N'oubliez pas de consulter les FAQ SAS et les cours et tutoriels SAS
    N'oubliez pas de mettre votre message à si la solution donnée résout votre problème

  17. #17
    Membre éprouvé
    Avatar de Haache
    Homme Profil pro
    Doctorant & Ingénieur Statiaticien Economiste
    Inscrit en
    Mars 2014
    Messages
    349
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : Canada

    Informations professionnelles :
    Activité : Doctorant & Ingénieur Statiaticien Economiste

    Informations forums :
    Inscription : Mars 2014
    Messages : 349
    Points : 1 009
    Points
    1 009
    Billets dans le blog
    8
    Par défaut
    ça ne marche pas. Ci-joint ce que SAS m'affiche comme erreur.
    Pour ce qui concerne le type de sas que j'ai, je ne sais vraiment pas. C'est sur un PC qu'on m'a laissé. Je pense que c'est une version cracké mais je ne sais pas si c'est ça le problème. Sinon j'ai une version gratuite sur un autre PC mais c'est le PC de l'école.
    Images attachées Images attachées  
    • Faites un tour sur mon siteweb professionnel www.aristideelysee.16mb.com Des codes dans la section "media et code" pouvant vous aider que vous pouvez aussi partager sur les réseaux sociaux.
    • Visiter mon blog en cliquant ici! Des techniques, astuces et macros pour l'analyse quantitative.

  18. #18
    Membre éprouvé
    Avatar de Stackware
    Homme Profil pro
    ArchiDuc de la Sasserie
    Inscrit en
    Juillet 2013
    Messages
    439
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : ArchiDuc de la Sasserie
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2013
    Messages : 439
    Points : 1 017
    Points
    1 017
    Billets dans le blog
    4
    Par défaut
    Haache, sans vouloir polémiquer, ce serait assez agréable que tu lises les posts et que tu répondes aux questions de ceux qui prennent de leur temps pour t'aider...

  19. #19
    Modérateur

    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Février 2011
    Messages
    1 624
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2011
    Messages : 1 624
    Points : 3 402
    Points
    3 402
    Par défaut
    Hello HAACH,
    (t’avais raison il y avait une coquille dans le premier code que j'ai proposé ).peux-tu essyer le code ci-dessous et me dire si ça marche ?

    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
     
    %macro ajout_lignes_autoexec;
    	%if  %sysfunc(getoption(autoexec))ne  %then %do;
     
    	data _null_;
    	file "%str(%sysfunc(getoption(autoexec)))" mod;
     
    	put /// %nrstr("libname lib1 'c:\test';");
    	put /// %nrstr("libname lib2 'c:\test1';");
    	run;
     
     
    	%end;
     
    	%else %do ;
     
     
    	data _null_;
     
    	file  "!sasroot\autoexe.sas"  ;
     
    	put /// %nrstr("libname lib1 'c:\test';");
    	put /// %nrstr("libname lib2 'c:\test1';");
     
    	run;
     
    	%end;
     
    %mend;
     
    %ajout_lignes_autoexec;
    N'oubliez pas de consulter les FAQ SAS et les cours et tutoriels SAS
    N'oubliez pas de mettre votre message à si la solution donnée résout votre problème

  20. #20
    Membre éprouvé
    Avatar de Stackware
    Homme Profil pro
    ArchiDuc de la Sasserie
    Inscrit en
    Juillet 2013
    Messages
    439
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : ArchiDuc de la Sasserie
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2013
    Messages : 439
    Points : 1 017
    Points
    1 017
    Billets dans le blog
    4
    Par défaut
    Le code fonctionne correctement en EG avec SAS local (9.3) mais plantait en mode connecté sur serveur Linux (9.4 M1)

Discussions similaires

  1. Ajout des référence à chaque ouverture du projet
    Par t-die dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 11/06/2010, 23h59
  2. Réponses: 2
    Dernier message: 16/04/2007, 18h49
  3. [WD9] Erreur d'ouverture de projet
    Par Romanops dans le forum WinDev
    Réponses: 5
    Dernier message: 21/03/2006, 11h03
  4. Réponses: 5
    Dernier message: 23/06/2005, 14h52
  5. Réponses: 2
    Dernier message: 02/11/2004, 06h52

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