Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > SAS > Administration
Administration Forum d'entraide sur les fonctionnalités d'administration de SAS : installation, portal, serveurs
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 04/10/2011, 17h17   #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 Quelques infos concernant le lancement de SAS depuis UNIX

Bonjour, j'aurais quelques questions à poser aux habitués du lancement de SAS sous UNIX, à noter que j'utilise l'interface WINSCP:

- J'importe ma table avec la syntaxe suivante:

Code :
1
2
3
 
PROC IMPORT DATAFILE = "BDD.xls" OUT = BDD DBMS = xls REPLACE;
RUN;
qui sur mes tests semblent marcher mais j'ai lu sur un forum que les ',' peuvent poser des problèmes à cette procédure et qu'il vaut mieux mettre des '.', est-ce exact et y a t'il certains autres bugs qu'il faut anticiper pour être sûr de ne pas avoir de mauvaises surprises?

- Le script SAS que je lance produit de nombreux graphes que je ne n'imprime pas grace à des ODS exclude et un ODS NORESULTS (merci S_a_m ), malgré celà j'ai remarqué que SAS m'imprimait tous les graphes sur WINSCP, est-il possible d'empêcher celà? mon admin me dit que via l'interface EG SAS imprimait directement ces graphes dans des fichiers temporaires, comment je peux faire pour en faire de même depuis UNIX?

- Ensuite, j'ai la procédure suivante qui marche parfaitement quand je lance depuis EG mais sous UNIX foire étrangement:

Code :
1
2
3
4
 
PROC TRANSPOSE DATA = BDD OUT = BDD_transpose;
ID VAR;
RUN;
le message d'erreur qui m'est retourné est qu'il n'arrive pas à lire VAR, pourtant j'ai bien vérifié et cette variable est correct, je veux dire que ma table BDD est normal à l'entrée de la procédure, est-ce un bug reconnu de SAS sous UNIX?

- Enfin, j'ai un script contenant toutes mes macros, j'aimerais savoir comment je fais pour le lancer depuis un autre script SAS? j'avais trouvé un autre topic avec une solution mais elle ne marche pas chez moi surement car je n'ai pas de dossier SASMACRO.


En vous remerciant d'avance pour votre intérêt à mon thread et toutes vos futures réponses...
joyeux_lapin13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/10/2011, 16h36   #2
Modérateur
 
Homme Samir SELMANE
Consultant en Business Intelligence
Inscription : février 2011
Messages : 1 011
Détails du profil
Informations personnelles :
Nom : Homme Samir SELMANE
Localisation : France

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

Informations forums :
Inscription : février 2011
Messages : 1 011
Points : 1 712
Points : 1 712
Hello Julien;
j'ai plutot des questions que des réponses à t'apporter.
Citation:
Envoyé par joyeux_lapin13 Voir le message
Bonjour, j'aurais quelques questions à poser aux habitués du lancement de SAS sous UNIX, à noter que j'utilise l'interface WINSCP:

- J'importe ma table avec la syntaxe suivante:

Code :
1
2
3
 
PROC IMPORT DATAFILE = "BDD.xls" OUT = BDD DBMS = xls REPLACE;
RUN;
qui sur mes tests semblent marcher mais j'ai lu sur un forum que les ',' peuvent poser des problèmes à cette procédure et qu'il vaut mieux mettre des '.', est-ce exact et y a t'il certains autres bugs qu'il faut anticiper pour être sûr de ne pas avoir de mauvaises surprises?
problème par rapport à quoi? je ne comprends pas !!!

Citation:
Envoyé par joyeux_lapin13 Voir le message
- Le script SAS que je lance produit de nombreux graphes que je ne n'imprime pas grace à des ODS exclude et un ODS NORESULTS (merci S_a_m ), malgré celà j'ai remarqué que SAS m'imprimait tous les graphes sur WINSCP, est-il possible d'empêcher celà? mon admin me dit que via l'interface EG SAS imprimait directement ces graphes dans des fichiers temporaires, comment je peux faire pour en faire de même depuis UNIX?
tu produits des graphes mais tu ne veux pas que SAS les imprime ou tu ne veux pas que SAS les affiche?

Citation:
Envoyé par joyeux_lapin13 Voir le message
- Ensuite, j'ai la procédure suivante qui marche parfaitement quand je lance depuis EG mais sous UNIX foire étrangement:

Code :
1
2
3
4
 
PROC TRANSPOSE DATA = BDD OUT = BDD_transpose;
ID VAR;
RUN;
le message d'erreur qui m'est retourné est qu'il n'arrive pas à lire VAR, pourtant j'ai bien vérifié et cette variable est correct, je veux dire que ma table BDD est normal à l'entrée de la procédure, est-ce un bug reconnu de SAS sous UNIX?
sa m'étonne, t'es sûre que la table et la variable en question existent bien?
Citation:
Envoyé par joyeux_lapin13 Voir le message
- Enfin, j'ai un script contenant toutes mes macros, j'aimerais savoir comment je fais pour le lancer depuis un autre script SAS? j'avais trouvé un autre topic avec une solution mais elle ne marche pas chez moi surement car je n'ai pas de dossier SASMACRO.
as tu essayé avec un
%include "chemin_du_programme/nom_du_programme"?
En gros le code SAS sous Windows est presque le même que sur Unix.
s_a_m est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/10/2011, 17h55   #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
Salut S_a_m et merci pour ton intérêt à mes p'tits soucis!

Concernant la PROC IMPORT je voulais savoir s'il pouvait lui arriver de couper des noms de variables ou bien se tromper de format ou si vraiment une table correctement nettoyée ne pouvait être sujet au moindre bugs. Je demande car j'ai l'habitude d'importer avec l'interface EG et depuis que je suis tombé sur cette procédure je trouve la chose un peu trop facile lol surtout quand je me souviens de mes 2 ans de SAS à la fac où j'ai passé tout mon temps à apprendre à importer une table avec les INFILE et les INPUT et la gestion des DLM...

Pour les graphes, je crois avoir trouvé un début de solution mais je n'ai pas eu le temps d'approfondir. En fait quand je lance ma chaîne de création de boxplots et autres graphes et il me créé des fichiers .PNG qui viennent polluer et remplir à mort mon dossier WINSCP. J'aurais voulu empêcher ces impressions ou plutôt les rediriger vers un autre sous-dossier. Mais en cherchant des infos sur les ODS listing sur le support SAS je crois avoir compris qu'on pouvait mettre des options à l'ODS (exemple ODS PATH) pour choisir le dossier de sauvegarde des figures.

Après, pour la PROC TRANPOSE, je suis sûr à 100% que je suis dans les même conditions sous EG ou serveur. Comme dit, sous EG pas de soucis pour la même démarche (à noter l'importation de la table avec PROC IMPORT) et sur le serveur ça ne passe pas...

Enfin, concernant le lancement de mon script de macros depuis un autre script, merci pour la syntaxe, je vais tester ça dés que je peux.

Merci pour ton aide S_a_m!
joyeux_lapin13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/10/2011, 18h21   #4
Modérateur
 
Homme Samir SELMANE
Consultant en Business Intelligence
Inscription : février 2011
Messages : 1 011
Détails du profil
Informations personnelles :
Nom : Homme Samir SELMANE
Localisation : France

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

Informations forums :
Inscription : février 2011
Messages : 1 011
Points : 1 712
Points : 1 712
Citation:
Envoyé par joyeux_lapin13 Voir le message
Salut S_a_m et merci pour ton intérêt à mes p'tits soucis!

Concernant la PROC IMPORT je voulais savoir s'il pouvait lui arriver de couper des noms de variables ou bien se tromper de format ou si vraiment une table correctement nettoyée ne pouvait être sujet au moindre bugs. Je demande car j'ai l'habitude d'importer avec l'interface EG et depuis que je suis tombé sur cette procédure je trouve la chose un peu trop facile lol surtout quand je me souviens de mes 2 ans de SAS à la fac où j'ai passé tout mon temps à apprendre à importer une table avec les INFILE et les INPUT et la gestion des DLM...
Non je ne crois pas, au pire des cas quand t'importe un des fichiers délimités utilises la valeur HEXADECIMALE pour représenter le séparateur. Exemple pour les fichiers separé par des ';' tu peux utiliser :
Code :
1
2
3
4
5
6
7
8
 
PROC IMPORT OUT= WORK.test 
            DATAFILE= "~/data/fic.dat" 
            DBMS=DLM REPLACE;
     DELIMITER='3B'x; 
     GETNAMES=YES;
     DATAROW=2; 
RUN;
le '3x'B étant la valeur héxadécimale du ';'.
Citation:
Envoyé par joyeux_lapin13 Voir le message
Pour les graphes, je crois avoir trouvé un début de solution mais je n'ai pas eu le temps d'approfondir. En fait quand je lance ma chaîne de création de boxplots et autres graphes et il me créé des fichiers .PNG qui viennent polluer et remplir à mort mon dossier WINSCP. J'aurais voulu empêcher ces impressions ou plutôt les rediriger vers un autre sous-dossier. Mais en cherchant des infos sur les ODS listing sur le support SAS je crois avoir compris qu'on pouvait mettre des options à l'ODS (exemple ODS PATH) pour choisir le dossier de sauvegarde des figures.!
effectivement t'as cette piste. Sinon t'as toujours les commandes Système comme ( MV, CP, RM) pour déplacer tes fichiers PNG les copiers dans un repértoire ou tout simplement le supprimer.
Citation:
Envoyé par joyeux_lapin13 Voir le message
Après, pour la PROC TRANPOSE, je suis sûr à 100% que je suis dans les même conditions sous EG ou serveur. Comme dit, sous EG pas de soucis pour la même démarche (à noter l'importation de la table avec PROC IMPORT) et sur le serveur ça ne passe pas...!
Bizarre !!! essaies de récupérer la table et de voir ce qu'elle contient vraiment. Après transpose sous Unix ou Windonws la syntaxe ne changera pas .

Citation:
Envoyé par joyeux_lapin13 Voir le message
Enfin, concernant le lancement de mon script de macros depuis un autre script, merci pour la syntaxe, je vais tester ça dés que je peux.
Bone Courage.
Samir.
s_a_m 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 04h14.


 
 
 
 
Partenaires

Hébergement Web