Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > SAS > Macro
Macro Forum d'entraide sur le langage Macro 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 27/09/2008, 12h45   #1
Invité régulier
 
Inscription : mai 2008
Messages : 22
Détails du profil
Informations forums :
Inscription : mai 2008
Messages : 22
Points : 8
Points : 8
Par défaut [Macro] Effacer journal et fermer log

Bonjour , en ce moment je fais du bootstrap et je voulais savoir s'il existe des options pour gagner du temps on m'a parlé dune option pour effacer le journal quand il est plein et ossi de fermer le log .
merci .
jacksparow est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/09/2008, 11h44   #2
Expert Confirmé
 
Avatar de olivier.decourt
 
Homme Olivier Decourt
Formateur en informatique
Inscription : avril 2008
Messages : 1 482
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 482
Points : 2 866
Points : 2 866
Salut.
Concernant la Log/le journal : plutôt que de l'effacer (c'est dommage s'il y a le moindre problème), mieux vaut le re-router vers un fichier externe :
Code :
1
2
PROC PRINTTO LOG="c:\temp\mon journal.txt" ;
RUN ;
et à la fin du bootstrap, remettre la log "à sa place" :
Code :
1
2
PROC PRINTTO LOG=LOG ;
RUN ;
Ensuite, comme gain de temps, on peut supprimer toutes les sorties de procédures :
Citation:
ODS EXCLUDE ALL ;
qu'on réactivera en bout de course avec
Citation:
ODS SELECT ALL ;
Ca n'empêche pas de récupérer les sorties d'une procédure dans une table, que ce soit avec les options OUT ou avec ODS OUTPUT.
Enfin, pour le bootstrap en particulier, si les données à traiter ne sont pas trop volumineuses (et le plan de tirage pas trop tortueux), je te propose de tirer les échantillons avec la proc Surveyselect (METHOD=URS pour un échantillon à probas égales et remise, URS_PPS si c'est à probas inégales) qui autorise (options REP= et OUTHITS) le tirage simultané de plusieurs échantillons. Donc tu peux te faire :
Code :
1
2
3
4
5
PROC SURVEYSELECT DATA=maTable OUT=mesEchantillons
   OUTHITS NOPRINT
   METHOD=URS SAMPRATE=1
   REP=10000 ;
RUN ;
tous tes échantillons (ici 10 000) d'un coup. Dans la table en sortie, une variable REPLICATE vaudra 1, puis 2, puis 3, ..., jusqu'au nombre d'échantillons : ça te permet de calculer tes stats avec un BY replicate plutôt qu'avec une boucle macro, c'est beaucoup plus rapide.

Bon courage.
Olivier
olivier.decourt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/04/2011, 16h24   #3
Invité régulier
 
Inscription : juin 2010
Messages : 40
Détails du profil
Informations forums :
Inscription : juin 2010
Messages : 40
Points : 8
Points : 8
Bonjour,

J'ai une question correspondant à ton thème.
Sur SAS Guide, comment fait-on pour ne pas générer de log ou à la rigueur le vider à chaque fois qu'il execute la macro ?
j'ai essayé : dm 'clear log';
dm log 'clear' editor;
ou meme option nonotes;

mais rien ne fonctionne...

Merci!
JimJames23 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/04/2011, 11h46   #4
Membre éprouvé
 
Homme Rémi Bousquet
responsable adjoint service stat
Inscription : mars 2009
Messages : 334
Détails du profil
Informations personnelles :
Nom : Homme Rémi Bousquet
Âge : 35
Localisation : France

Informations professionnelles :
Activité : responsable adjoint service stat
Secteur : Finance

Informations forums :
Inscription : mars 2009
Messages : 334
Points : 464
Points : 464
Plutôt qu'effacer la log, le mieux serait peut être de ne plus rien y écrire ?
Active les options nonotes nosource nomprint nomlogic nosymbolgen le temps que ton bootstrap tourne
RemiBousquet est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h30.


 
 
 
 
Partenaires

Hébergement Web