Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > SAS > ODS et reporting
ODS et reporting Forum d'entraide sur les fonctionnalités de reporting de SAS : gérer les sorties et graphiques de SAS
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 07/02/2011, 16h35   #1
Membre habitué
 
Homme Julien
Ingénieur d'études / Biostatisticien
Inscription : décembre 2009
Messages : 304
Détails du profil
Informations personnelles :
Nom : Homme Julien
Localisation : France

Informations professionnelles :
Activité : Ingénieur d'études / Biostatisticien
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : décembre 2009
Messages : 304
Points : 101
Points : 101
Par défaut Avis pour la gestion des sorties SAS : création de dossier

Bonjour, je travaille actuellement sur une MACRO SAS qui imprime plusieurs résultats tel que des histogrammes, QQ-plot, ACP, ACM, tests ect ect ect pour chacune des variables de la table que je rentre.

Or je voulais savoir s'il était possible de créer automatiquement pour chaque variable, un dossier dans lequel on envoi chacune des sorties spécifiques à chaque variable.

Ex: j'ai ma table avec 3 variables V1, V2 et V3, lors de l'éxécution de ma macro cette dernière créé un dossier 'traitement V1' où il sauvegarde les impressions des différents tests, graphes et histogrammes propres à V1, de même pour V2 et V3.

Merci d'avance, je ne maîtrise pas du tout ce côté de SAS (s'il est possible en fait), concernant les sorties sous forme de table excel j'ai ce qu'il faut en guise de doc grâce à l'excellente série des gnagna "expliquées à ma fille" de O. Decourt.
joyeux_lapin13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/02/2011, 16h47   #2
Expert Confirmé
 
Avatar de olivier.decourt
 
Homme Olivier Decourt
Formateur en informatique
Inscription : avril 2008
Messages : 1 467
Détails du profil
Informations personnelles :
Nom : Homme Olivier Decourt
Âge : 34
Localisation : France

Informations professionnelles :
Activité : Formateur en informatique
Secteur : Conseil

Informations forums :
Inscription : avril 2008
Messages : 1 467
Points : 2 823
Points : 2 823
Par défaut La création de répertoires expliquée à ma fille

Salut (et merci pour la pub).
Tu peux utiliser la fonction DCREATE :
Code :
1
2
3
4
5
6
%LET racine=c:\temp ; /* celui-là existe déjà, sinon gare ! */
 
%LET chemin = %SYSFUNC(DCREATE(variable v1, &racine)) ;
/* crée le sous-répertoire "VARIABLE V1" dans le répertoire racine
   la macro-variable CHEMIN contient l'arborescence complète */
%PUT &chemin ;
Attention à ce que le répertoire que tu essayes de créer n'existe pas déjà (ce que tu peux vérifier avec la fonction FILEEXIST).
Bon courage.
Olivier
olivier.decourt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/02/2011, 16h50   #3
Membre habitué
 
Homme Julien
Ingénieur d'études / Biostatisticien
Inscription : décembre 2009
Messages : 304
Détails du profil
Informations personnelles :
Nom : Homme Julien
Localisation : France

Informations professionnelles :
Activité : Ingénieur d'études / Biostatisticien
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : décembre 2009
Messages : 304
Points : 101
Points : 101
Merci! je vais tester dés que j'ai un moment.
joyeux_lapin13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/03/2011, 11h29   #4
Membre habitué
 
Homme Julien
Ingénieur d'études / Biostatisticien
Inscription : décembre 2009
Messages : 304
Détails du profil
Informations personnelles :
Nom : Homme Julien
Localisation : France

Informations professionnelles :
Activité : Ingénieur d'études / Biostatisticien
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : décembre 2009
Messages : 304
Points : 101
Points : 101
J'ai inséré le code d'Olivier dans ma macro et ça marche, à ceci prés que je n'ai pas les droits de suppression sur le dossier créé.

J'ai visité le site du support SAS mais on dirait qu'aucune option n'est disponible pour gérer les droits du dossier que l'on crée. Possible d'avoir une info là dessus?

Dois-je vois avec mon administrateur réseau pour régler ce problème ou est-ce bien SAS qui part défaut met aucun droit aux fichiers créés avec DCREATE?

En vous remerciant d'avance.
joyeux_lapin13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/03/2011, 12h07   #5
Membre Expert
 
Inscription : mars 2005
Messages : 1 010
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 1 010
Points : 1 258
Points : 1 258
Envoyer un message via Yahoo à bahraoui
Bonjour,

Je pense que tu peux vérifier toi même les droits que tu as sur le répertoire.
Sinon demande à l'administrateur si tu as les droits en suppression sur ton répertoire...

Cordialement
__________________
Consultez les FAQs et les anciens postes avant de poser vos questions. Merci
bahraoui est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/03/2011, 12h28   #6
Membre Expert
 
Homme
Biostatisticien
Inscription : juin 2009
Messages : 1 143
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Irlande

Informations professionnelles :
Activité : Biostatisticien
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : juin 2009
Messages : 1 143
Points : 1 760
Points : 1 760
peut être est ce également envisageable de changer les droits sous MS-DOS via la commande X. Commande éxécutée depuis sas, donc...
Manoutz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/03/2011, 12h48   #7
Membre habitué
 
Homme Julien
Ingénieur d'études / Biostatisticien
Inscription : décembre 2009
Messages : 304
Détails du profil
Informations personnelles :
Nom : Homme Julien
Localisation : France

Informations professionnelles :
Activité : Ingénieur d'études / Biostatisticien
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : décembre 2009
Messages : 304
Points : 101
Points : 101
Aprés en avoir parler avec mon administrateur réseau, étant donné que SAS est implanter dans un serveur bloqué par l'administrateur mon souci vient de là.

Donc depuis SAS je peux supprimer mes répertoires, mais à la main non.
joyeux_lapin13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/03/2011, 14h40   #8
Membre habitué
 
Homme Julien
Ingénieur d'études / Biostatisticien
Inscription : décembre 2009
Messages : 304
Détails du profil
Informations personnelles :
Nom : Homme Julien
Localisation : France

Informations professionnelles :
Activité : Ingénieur d'études / Biostatisticien
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : décembre 2009
Messages : 304
Points : 101
Points : 101
Peut-on supprimer un répetoire autrement qu'avec la syntaxe:

Code :
1
2
 
x 'del /home/public/test &';
En effet ça me renvoi l'erreur suivante du coup:
ERROR: Shell escape is not valid in this SAS session.

Eventuellement une atteinte aux droits du serveur j'imagine...
joyeux_lapin13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/03/2011, 14h48   #9
Membre Expert
 
Homme
Biostatisticien
Inscription : juin 2009
Messages : 1 143
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Irlande

Informations professionnelles :
Activité : Biostatisticien
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : juin 2009
Messages : 1 143
Points : 1 760
Points : 1 760
contacte ton admin réseau
Manoutz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/03/2011, 08h32   #10
Expert Confirmé
 
Avatar de olivier.decourt
 
Homme Olivier Decourt
Formateur en informatique
Inscription : avril 2008
Messages : 1 467
Détails du profil
Informations personnelles :
Nom : Homme Olivier Decourt
Âge : 34
Localisation : France

Informations professionnelles :
Activité : Formateur en informatique
Secteur : Conseil

Informations forums :
Inscription : avril 2008
Messages : 1 467
Points : 2 823
Points : 2 823
Bonjour.
Dans le même esprit que X, il y a CALL SYSTEM (dans une étape DATA). Si tu utilises Enterprise Guide, souvent X est interdit mais CALL SYSTEM autorisé.
En pur SAS, tu as aussi la fonction FDELETE (le répertoire doit être vide).

Et si c'est un pb de droits, comme dit Manoutz, voir avec l'administrateur du serveur.
Bonne journée.
Olivier
olivier.decourt est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 24/03/2011, 09h01   #11
Membre habitué
 
Homme Julien
Ingénieur d'études / Biostatisticien
Inscription : décembre 2009
Messages : 304
Détails du profil
Informations personnelles :
Nom : Homme Julien
Localisation : France

Informations professionnelles :
Activité : Ingénieur d'études / Biostatisticien
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : décembre 2009
Messages : 304
Points : 101
Points : 101
Merci Manoutz et Olivier pour vos réponses rapides!

Je ferais un EDIT pour donner la solution qui aura résolu mon problème!
joyeux_lapin13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/03/2011, 11h15   #12
Membre habitué
 
Homme Julien
Ingénieur d'études / Biostatisticien
Inscription : décembre 2009
Messages : 304
Détails du profil
Informations personnelles :
Nom : Homme Julien
Localisation : France

Informations professionnelles :
Activité : Ingénieur d'études / Biostatisticien
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : décembre 2009
Messages : 304
Points : 101
Points : 101
Finalement j'ai trouvé la solution à mon problème sur ce topic disponible sur le forum: http://www.developpez.net/forums/d52...fdelete-macro/

Ca utilise le FDELETE que tu m'avais conseillé Olivier.

L'administrateur réseau ne pouvant résoudre mon souci puisque SAS étant sur un serveur je n'ai aucun droit et comme les dossiers que je crée viennent du serveur, forcément je peux avoir les droits sur un dossier dont le nom ne change pas mais sur les autres il faudrait à chaque fois me les filer, ce qui ne sert à rien quoi.

Pour revenir à la macro présentée sur le lien, j'aurais juste une question, dans:
Code :
1
2
3
 
filename test "F:\root\work\test.txt";
%TEST (test);
à test j'ai un nom du genre: analyse descriptive des variables, comment je peux entrer ce type de nom de fichier dans cette syntaxe? j'ai essayé avec les guillements mais il a pas vraiment apprécié...

En vous remerciant.


EDIT: plus exactement voici le message d'erreur qu'il me renvoi...
Code :
1
2
3
ERROR: Invalid logical name.
ERROR: Error IN the FILENAME statement.
NOTE: IN a call TO the FEXIST routine, the fileref 'Filtre differentiel' exceeds 8 characters, AND will be truncated.
joyeux_lapin13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/03/2011, 11h34   #13
Expert Confirmé
 
Avatar de olivier.decourt
 
Homme Olivier Decourt
Formateur en informatique
Inscription : avril 2008
Messages : 1 467
Détails du profil
Informations personnelles :
Nom : Homme Olivier Decourt
Âge : 34
Localisation : France

Informations professionnelles :
Activité : Formateur en informatique
Secteur : Conseil

Informations forums :
Inscription : avril 2008
Messages : 1 467
Points : 2 823
Points : 2 823
Citation:
Envoyé par joyeux_lapin13 Voir le message
Pour revenir à la macro présentée sur le lien, j'aurais juste une question, dans:
Code :
1
2
3
 
filename test "F:\root\work\test.txt";
%TEST (test);
à test j'ai un nom du genre: analyse descriptive des variables, comment je peux entrer ce type de nom de fichier dans cette syntaxe? j'ai essayé avec les guillements mais il a pas vraiment apprécié...
Comme tout s'appelle "test" dans l'exemple (quelle horreur pédagogique d'ailleurs !!!), j'essaye de deviner où tu as un souci. Vu le message d'erreur, c'est a priori au niveau du FILENAME.
Il n'y a aucune obligation que le nom logique (fileref) connu de SAS soit corrélé au nom physique (entre les guillemets du FILENAME). Donc tu peux conserver TEST tout le temps si tu veux. La seule chose qui change c'est l'adresse physique.
Code :
1
2
3
 
filename a_virer "F:\root\work\un nom avec du blabla.txt";
%TEST (a_virer);
olivier.decourt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/03/2011, 11h37   #14
Membre habitué
 
Homme Julien
Ingénieur d'études / Biostatisticien
Inscription : décembre 2009
Messages : 304
Détails du profil
Informations personnelles :
Nom : Homme Julien
Localisation : France

Informations professionnelles :
Activité : Ingénieur d'études / Biostatisticien
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : décembre 2009
Messages : 304
Points : 101
Points : 101
Ok! désolé en effet j'avais fini par m'habituer à différencier l'exemple par 'test' et la macro par 'TEST' lol.

Merco Olivier!
joyeux_lapin13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h37.


 
 
 
 
Partenaires

Hébergement Web