2009-02-17 21 views

Répondre

15

Je pense que cela va faire ce que vous voulez:

dm log "vt sashelp.air";

il suffit de changer la partie "sashelp.air" à votre combo lib.table.

+0

Wow - vous avez obtenu en avant de cmjohns! Bien joué! = P –

2

La réponse de dw.mackie est juste sur l'argent. Cela fonctionne très bien lorsqu'il est soumis à partir de la fenêtre de l'éditeur SAS. Mais je veux juste vous avertir de faire attention si vous essayez en mode batch (c'est-à-dire que SAS exécute un programme .sas directement à partir de la ligne de commande en utilisant l'option -sysin). Il va en effet tenter d'ouvrir l'environnement de la fenêtre SAS interactive lors de l'exécution. Mais, si votre code de traitement par lots tente également de créer des graphiques/diagrammes, vous devrez utiliser l'option -noterminal. Et l'option -noterminal n'est pas compatible avec la commande dm. Vous le repéreriez tout de suite dans le journal, mais je voulais juste vous donner un coup de tête.

3

En raison de la taille de certains de mes ensembles de données, je fais simplement un print simple et limite la sortie à seulement 50 observations. Je le fais si souvent que j'ai créé la macro suivante qui vide la sortie dans un fichier html.

%Macro DPrt(Dset, obs=50, vars=, w=, Path="C:\output\"); 
    %LET BKPATH = &Path; 
    %PUT BKPATH= &BKPATH; 
    options obs = &obs.; 
    title; 
    ods listing close; 
    ods html 
     path = &BKPATH. 
     body = "Debug-&Dset..htm" 
     style = THEME; 

     proc print data = &Dset n u split=' '; 
     %if &vars NE %THEN %DO; 
      var &vars.; 
     %END;   
     %if &w NE %THEN %DO; 
      &w; 
     %END;   
     Run; 

    ods html close; 
    ods listing; 
    options obs = MAX; 
%Mend Dprt; 

appel de l'échantillon pour le test de jeu de données ressemble

%dprt(test) 
+0

@ BK- merci pour le code! Cela ne m'aidera pas dans cette situation particulière, mais je pense que ce sera très utile dans d'autres situations. –

Questions connexes