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

ODS et reporting Discussion :

Proc report table entiere


Sujet :

ODS et reporting

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 164
    Par défaut Proc report table entiere
    Bonjour,

    je veux effectuer un proc report dans un pdf d'une table sans spécifier les colonnes etc... Je veux la table brute.

    je fais dans mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    proc report data=WORK.MA_TABLE nowd;
    run;
    Mais en sortie j'ai ma table avec une seule ligne et un summarize de l'ensemble des entiers.

    J'aimerais qu'il affiche toutes les lignes et qu'il ne fasse pas un SUM des colonnes alors que je ne lui dis pas.

    Merci de votre aide.

  2. #2
    Modérateur

    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Février 2011
    Messages
    1 625
    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 625
    Par défaut
    Hello,
    ce que tu décris ressemble à un listing et pour cela une proc print devra suffire
    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

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 164
    Par défaut
    Proc print fonctionne parfaitement.

    J'ai quand même trouvé une solution avec le proc report pour éviter le summarize automatique. Il suffit d'ajouter un champ texte à la table pour éviter qu'il ne fasse un SUM auto sur toutes les colonnes.
    Ma table ne contient que des numériques et il somme toutes les lignes...

    je vais passer sur proc print, cette solution est plus propre.

    Merci.

  4. #4
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Février 2013
    Messages
    347
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2013
    Messages : 347
    Par défaut
    Bonjour,

    Il faut utiliser l'option DISPLAY dans des DEFINE pour ne pas avoir le calcul des statistiques :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    data __essai;
    set sashelp.class;
    keep age height;
    run;
     
    proc report data = __essai nowd;
    define age / display;
    define height / display;
    run;
    Ca fonctionne si tu ne fais le DEFINE que d'une seule variable (dans ce cas là en tout cas).

    Bonne année,

    alers

  5. #5
    Membre émérite
    Avatar de m.brahim
    Homme Profil pro
    SAS / BIG DATA
    Inscrit en
    Juillet 2011
    Messages
    461
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : SAS / BIG DATA
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2011
    Messages : 461
    Billets dans le blog
    14
    Par défaut
    Bonjour,

    Une solution est également possible avec objet ODSOUT.

    Voici un exemple

    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
    ods listing close;
     
    ods pdf file = "c:\sas\table.pdf";
     
    DATA _NULL_ ;
      SET sashelp.class END = fin ;
       IF _N_ = 1 THEN do;
       DECLARE ODSOUT rapport () ;
       rapport.TABLE_START() ;
     
       rapport.ROW_START() ;
       rapport.FORMAT_CELL(text:"name") ;
       rapport.FORMAT_CELL(text:"age") ;
       rapport.FORMAT_CELL(text:"sex") ;
       rapport.FORMAT_CELL(text:"weight") ;
       rapport.FORMAT_CELL(text:"height") ;
       rapport.ROW_END() ;
     
       end;
     
       rapport.ROW_START() ;
       rapport.FORMAT_CELL(data:name) ;
       rapport.FORMAT_CELL(data:age) ;
       rapport.FORMAT_CELL(data:sex) ;
       rapport.FORMAT_CELL(data:weight) ;
       rapport.FORMAT_CELL(data:height) ;
       rapport.ROW_END() ;
     
    if done then rapport.TABLE_END() ;
    RUN ;
    ods pdf close;
    Cordialement

  6. #6
    Modérateur

    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Février 2011
    Messages
    1 625
    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 625
    Par défaut
    Pourquoi faire simple quand on peut compliquer...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    proc sql;
    select * from WORK.MA_TABLE ;
    quit;
    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

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [ODS] RTF - PROC REPORT et table des matières
    Par Samsamara dans le forum ODS et reporting
    Réponses: 4
    Dernier message: 04/04/2014, 15h42
  2. Sortir une table avec proc report
    Par lynleroy dans le forum ODS et reporting
    Réponses: 0
    Dernier message: 18/02/2014, 16h13
  3. Réponses: 5
    Dernier message: 22/06/2011, 15h21
  4. manipuler les tables avec le proc report
    Par SASMetrics dans le forum ODS et reporting
    Réponses: 3
    Dernier message: 28/01/2010, 18h28

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