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 :

ODS RTF/ PROC REPORT


Sujet :

ODS et reporting

  1. #1
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2014
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2014
    Messages : 18
    Points : 13
    Points
    13
    Par défaut ODS RTF/ PROC REPORT
    Bonjour à tous,

    J'effectue 4 tests sous SAS et j'obtiens 4 tables de résultats. Je veux obtenir un listing sous format Word avec toutes les erreurs relevées par sujet.
    Je voudrais obtenir sur une même page toutes les erreurs relevées par sujet et par tests.
    Avec le programme ci-dessous, j'obtiens bien toutes les erreurs par sujet et par test mais les tests n'apparaissent pas sur la même page pour un même sujet.

    Exemple:
    le sujet 001 a une erreur relevée au cours du test 1 et une autre sur le test 4.
    le sujet 002 a une erreur relevée au cours du test 1 et une autre sur le test 2.
    le sujet 003 a une seule erreur relevée au cours du test 2.

    J'obtiens donc :
    page 1/5: erreurs du sujet 001 pour le test1
    page 2/5: erreurs du sujet 002 pour le test1
    page 3/5: erreurs du sujet 003 pour le test2
    page 4/5: erreurs du sujet 001 pour le test4
    page 5/5: erreurs du sujet 002 pour le test2

    Alors que je voudrais:
    page 1/3: erreurs du sujet 001 pour le test1 et le test4
    page 2/3: erreurs du sujet 002 pour le test1 et le test2
    page 3/3: erreurs du sujet 003 pour le test2

    Mes 4 tables sont triées par SUJET/ TEST.
    Je ne peux pas les merger car les colonnes sont différentes. Quelqu'un a t-il une solution pour mon problème ?

    Merci par avance :-)
    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
     
    PROC SORT DATA=TEST1;
    BY SUJET TEST;
    RUN;
     
    PROC SORT DATA=TEST2;
    BY SUJET TEST;
    RUN;
     
    PROC SORT DATA=TEST3;
    BY SUJET TEST;
    RUN;
     
    PROC SORT DATA=TEST4;
    BY SUJET TEST;
    RUN;
     
     
    ODS LISTING CLOSE;
    ODS ESCAPECHAR='^';
    Title "PROJET XX" j=r 'Page ^{thispage}/^{lastpage}';
    Title2  "Listing des erreurs relevées pour le sujet &subjid.";
    OPTIONS NODATE orientation=landscape ;
    ODS RTF FILE="MON_CHEMIN_ACCES\Listing erreurs c%sysfunc(today(),date9.).rtf";
     
     
    PROC REPORT DATA=TEST1 nowd;
    		COLUMN SUJET FIELD PAGE_NUM SECTION_LG2 PAGE_LG2 TITLE_LG2 NumReelVISITE NumReelDate DATE Message;
    		DEFINE FIELD / display 'Champ associé';
    		DEFINE PAGE_NUM / display 'Page';
    		DEFINE SECTION_LG2 / display 'Rubrique ';
    		DEFINE PAGE_LG2 / display 'Intitulé de la page';
    		DEFINE TITLE_LG2/ display 'Intitulé du champ';
    		DEFINE NUMREELVISITE / display 'Ordre réel des visites';
    		DEFINE NUMREELDATE / display 'Ordre réel des dates';
    		DEFINE MESSAGE / display 'Erreur d''index';
    		DEFINE DATE / display 'Date';
    		DEFINE SUJET / order order=DATA noprint;
    	BREAK AFTER SUJET / PAGE;
    		BY SUJET TEST INTITULE ;
    RUN;
     
    PROC REPORT DATA=TEST2 nowd ;
    		COLUMN PATIENT FIELD PAGE_NUM SECTION_LG2 PAGE_LG2 TITLE_LG2 NumReelADM NumReelDate DATE Message;
    		DEFINE FIELD / display 'Champ associé';
    		DEFINE PAGE_NUM / display 'Page';
    		DEFINE SECTION_LG2 / display 'Rubrique';
    		DEFINE PAGE_LG2 / display 'Intitulé de la page';
    		DEFINE TITLE_LG2/ display 'Intitulé du champ';
    		DEFINE NUMREELADM / display 'Ordre réel des administrations';
    		DEFINE NUMREELDATE / display 'Ordre réel des dates';
    		DEFINE MESSAGE / display 'Erreur d''index' ;
    		DEFINE DATE / display 'Date ';
    		DEFINE SUJET / order order=DATA noprint;
    	BREAK AFTER SUJET / PAGE;
    		BY SUJET TEST INTITULE ;
    RUN;
     
    PROC REPORT DATA=TEST3 nowd;
    		COLUMN PATIENT FIELD PAGE_NUM SECTION_LG2 PAGE_LG2 TITLE_LG2 NumReelADM NumReelDate DATE Message;
    		DEFINE FIELD / display 'Champ associé';
    		DEFINE PAGE_NUM / display 'Page';
    		DEFINE SECTION_LG2 / display 'Rubrique';
    		DEFINE PAGE_LG2 / display 'Intitulé de la page';
    		DEFINE TITLE_LG2/ display 'Intitulé du champ';
    		DEFINE NUMREELADM / display 'Ordre réel des administrations';
    		DEFINE NUMREELDATE / display 'Ordre réel des dates';
    		DEFINE MESSAGE / display 'Erreur d''index' ;
    		DEFINE DATE / display 'Date ';
    		DEFINE SUJET / order order=DATA noprint;
    	BREAK AFTER SUJET / PAGE;
    		BY SUJET TEST INTITULE ;
    RUN;
     
    PROC REPORT DATA=TEST4  nowd;
    		COLUMN PATIENT FIELD PAGE_NUM SECTION_LG2 PAGE_LG2 TITLE_LG2 DATE DATEJ Message;
    		DEFINE FIELD / display 'Champ associé';
    		DEFINE PAGE_NUM / display 'Page';
    		DEFINE SECTION_LG2 / display 'Rubrique ';
    		DEFINE PAGE_LG2 / display 'Intitulé de la page';
    		DEFINE TITLE_LG2/ display 'Intitulé du champ';
    		DEFINE MESSAGE / display 'Erreur d''index' ;
    		DEFINE DATE / display 'Date';
    		DEFINE DATEJ / display 'Date d''éxécution';
    		DEFINE SUJET / order order=DATA noprint;
    	BREAK AFTER SUJET / PAGE;
    		BY SUJET TEST INTITULE ;
    RUN;
     
    FOOTNOTE HEIGHT=1 "Listing établi le %sysfunc(left(%sysfunc(today(),FRADFWKX.))) à %sysfunc(time(),time5.) ."    ; 
    ODS RTF CLOSE;
    ODS LISTING ;

  2. #2
    Membre éprouvé
    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
    Points : 1 119
    Points
    1 119
    Billets dans le blog
    14
    Par défaut
    Bonjour,

    Je te propose de partager une page en deux voire plus (suivant la valeur de columns).
    ci-dessous 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
    32
    33
    34
    35
    36
    37
    38
    39
    ODS ESCAPECHAR="^" ;
     
    ODS RTF FILE="c:\sas\document1.doc" startpage=no columns=2;
     
    wordstyle='(\s1 Heading 1;) (\s2 Heading 2;) (\s3 Heading 3;) (\s4 Heading4;)';
    PROC REPORT DATA=sashelp.class
    NOWD ;
    COLUMNS (('^R"{\ultitle1\ulnone}"' (name))('^R"{\ul    title2    \ulnone}"'( sex age weight weight))) ;
    DEFINE name / DISPLAY ;
    DEFINE sex / DISPLAY ;
    DEFINE age / DISPLAY ;
    DEFINE weight / DISPLAY ;
    DEFINE weight / DISPLAY ;
     
    RUN ;
     
    PROC REPORT DATA=sashelp.class
    NOWD ;
    COLUMNS (('^R"{\ultitle1\ulnone}"' (name))('^R"{\ul    title2    \ulnone}"'( sex age weight weight))) ;
    DEFINE name / DISPLAY ;
    DEFINE sex / DISPLAY ;
    DEFINE age / DISPLAY ;
    DEFINE weight / DISPLAY ;
    DEFINE weight / DISPLAY ;
     
    RUN ;
    ods rtf startpage=now;
     
    PROC REPORT DATA=sashelp.class
    NOWD ;
    COLUMNS (('^R"{\ultitle1\ulnone}"' (name))('^R"{\ul    title2    \ulnone}"'( sex age weight weight))) ;
    DEFINE name / DISPLAY ;
    DEFINE sex / DISPLAY ;
    DEFINE age / DISPLAY ;
    DEFINE weight / DISPLAY ;
    DEFINE weight / DISPLAY ;
    RUN ;
     
    ODS RTF CLOSE ;
    Cordialement
    Certification des Talents de la programmation In Memory Statistics sur HADOOP:
    http://talents-imstat.groupe-avisia....avance?uid=162

  3. #3
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2014
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2014
    Messages : 18
    Points : 13
    Points
    13
    Par défaut
    Bonjour,

    Merci pour ta proposition mais ça ne correspond pas exactement à ce que je souhaite.
    Je voudrais avoir sur une même page (dans la limite du possible) tous les tableaux pour un même SUJET.

    Actuellement, j'ai un seul tableau par page et ils sont regroupés par test et non par sujet.
    Je voudrais que tous les tableaux d'un même sujet se suivent, idéalement sur la même page.

  4. #4
    Membre éprouvé
    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
    Points : 1 119
    Points
    1 119
    Billets dans le blog
    14
    Par défaut
    Dans ce cas la, il me semble qu'il faut réorganiser les données en entrée
    la macro ci-dessous te pemets d'extraire les sujets présents dans chaque test sous forme de table.
    par la suite tu pourras regrouper les sujets semblable.

    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
     
    %macro org(DATA=,colonne=);
    	proc sort DATA=&DATA(keep=&colonne) out=VALUES nodupkey;
    		BY &colonne;
    	run;
     
    	DATA _null_;
    		SET VALUES end=last;
    		call symputx('monsujet'||LEFT(_n_),&colonne);
    		IF last then call symputx('count',_n_);
    	run;
     
    	DATA 
    		%do i=1 %TO &count;
    			&data._&&monsujet&i
    		%end;
    	;
    		SET &DATA;
     
    		SELECT (&colonne);
    		%do i=1 %TO &count;
    			when ("&&monsujet&i") output &data._&&monsujet&i;
    		%end;
    		otherwise;
    		end;
                 run;
    %mend org;
     
    %org(DATA=test1,colonne=sujet);
    Certification des Talents de la programmation In Memory Statistics sur HADOOP:
    http://talents-imstat.groupe-avisia....avance?uid=162

  5. #5
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2014
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2014
    Messages : 18
    Points : 13
    Points
    13
    Par défaut
    Bonjour,

    Merci beaucoup pour ce code. J'arrive effectivement à avoir une table unique par test et par sujet.
    Maintenant, je ne comprend pas comment je peux faire ma proc report. J'ai pleins de messages d'erreur qui apparaissent...

  6. #6
    Membre éprouvé
    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
    Points : 1 119
    Points
    1 119
    Billets dans le blog
    14
    Par défaut
    Bonjour,

    Quel type de message d'erreur?

    Pour la suite, comme les tables sont stucturées suivant les sujets, prendre l'exemple du message 04/09 avec les options: startpage=no et puis ods rtf startpage=now pour changer de page.

    Ou bien de partager les pages en deux ou plus avec COLUMNS=n, je pense que tu pourrais arriver à representer les tableaux;

    NB! La macro permet de réorganiser les données suivant les sujets toute en gardant la structure des tables initiales

    Cordialement
    Certification des Talents de la programmation In Memory Statistics sur HADOOP:
    http://talents-imstat.groupe-avisia....avance?uid=162

  7. #7
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2014
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2014
    Messages : 18
    Points : 13
    Points
    13
    Par défaut
    Je ne comprend pas.
    Je ne connais pas à l'avance les tables que je vais obtenir (càd: test1_numéro-du-sujet). Dans ce cas, comment je fais dans la proc report pour préciser que je veux par exemple, la table TEST1 et la table TEST3 pour le patient 001 ?

  8. #8
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2014
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2014
    Messages : 18
    Points : 13
    Points
    13
    Par défaut
    Je récapitule parce que j'ai l'impression d'être confuse:

    - soit mes 4 tables TEST1, TEST2, TEST3 et TEST4 issues des 4 tests respectifs. Elles listent chacune toutes les erreurs relevées pour ce test par sujet.

    - en faisant ta macro %org, j'obtiens les tables suivantes:
    * TEST2-01002 (le sujet 01002 a des erreurs à l'éxécution du Test 2).
    * TEST3-01001 et TEST3-01003
    * TEST4-01001 et TEST4-01002.

    A partir de ces résultats, je n'arrive pas à réunir avec une proc report les tables :
    page 1= tables TEST3-01001 et TEST4-01001
    page 2= tables TEST2-01002 et TEST4-01002
    page 3= table TEST3-01003.

    Ce que je n'arrive pas à faire dans ma proc report, c'est préciser le numéro du sujet en fonction de la table TEST.

    Voici mon code:
    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
     
    %macro org(DATA=,colonne=);
    	ods exclude all;
    	ods output attributes=_attributes_;
    	proc contents data=&DATA.;
    	run;
     
    	data obs;
    	set _attributes_;
    	if label2='Observations' then do;
    	CALL SYMPUT('nb',put(cValue2,8.));
    	end;
    	run;
     
    	%if &nb ne 0 %then %do;
     
    	proc sort DATA=&DATA(keep=&colonne) out=VALUES nodupkey;
    		BY &colonne;
    	run;
     
    	DATA _null_;
    		SET VALUES end=last;
    		call symputx('monsujet'||LEFT(_n_),&colonne);
    		IF last then call symputx('count',_n_);
    	run;
     
    	DATA 
    		%do i=1 %TO &count;
    			&DATA._&&monsujet&i
    		%end;
    	;
    		SET &DATA;
     
    		SELECT (&colonne);
    		%do i=1 %TO &count;
    			when ("&&monsujet&i") output &DATA._&&monsujet&i;
    		%end;
    		otherwise;
    		end;
     
    	   	%end;
           run;
    %mend org;
     
    %org(DATA=TEST1,colonne=SUJET);
    %org(DATA=TEST2,colonne=SUJET);
    %org(DATA=TEST3,colonne=SUJET);
    %org(DATA=TEST4,colonne=SUJET);
     
    ODS LISTING CLOSE;
    ODS ESCAPECHAR='^';
    Title "&Code_programme." j=r 'Page ^{thispage}/^{lastpage}';
    Title2  "Listing des erreurs relevées pour le sujet &subjid.";
    OPTIONS NODATE orientation=landscape number=0;
    ODS RTF FILE="&CHEMIN_SORTIE\&Code_programme. Listing erreurs chronologie_%sysfunc(today(),date9.).rtf" startpage=no COLUMNS=4;
    wordstyle='(\s1 Heading 1;) (\s2 Heading 2;) (\s3 Heading 3;) (\s4 Heading4;)';
     
    %REPORT (TEST=TEST1, INDEXE=NUMREELVISITE, LABEL=Ordre réel des visites, INDEXE2=NUMREELDATE, LABEL2=Ordre réel des dates);
    %REPORT (TEST=TEST2, INDEXE=NUMREELADM, LABEL=Ordre réel des repas, INDEXE2=NUMREELDATE, LABEL2=Ordre réel des dates);
    %REPORT (TEST=TEST3, INDEXE=NUMREELADM, LABEL=Ordre réel des séances, INDEXE2=NUMREELDATE, LABEL2=Ordre réel des dates);
    %REPORT (TEST=TEST4, INDEXE=DATEJ, LABEL=Date éxécution, INDEXE2=DATA, LABEL2=Date saisie);
     
     
    FOOTNOTE HEIGHT=1 "Listing établi le %sysfunc(left(%sysfunc(today(),FRADFWKX.))) à %sysfunc(time(),time5.) ."    ; 
    ODS RTF CLOSE;
    ODS LISTING ;
    De plus, je voudrais que la macrovariable &subjid. comprise dans le titre 2 réfère automatiquement au numéro du sujet mais je n'y arrive pas non plus.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Title2  "Listing des erreurs relevées pour le sujet &subjid.";
    )

  9. #9
    Membre éprouvé
    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
    Points : 1 119
    Points
    1 119
    Billets dans le blog
    14
    Par défaut
    Bonjour,

    Tous les tableaux d'un même sujet se suivent ==> OK
    Iidéalement sur la même page ==>KO

    Voici comment j'ai procédé

    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
     
    data class;
    set sashelp.class;
    run;
    data classfit;
    set sashelp.classfit;
    run;
     
    %macro org(DATA,colonne);
    	proc sort DATA=&DATA(keep=&colonne) out=VALUES nodupkey;
    		BY &colonne;
    	run;
     
    	DATA _null_;
    		SET VALUES end=last;
    		call symputx('monsujet'||LEFT(_n_),&colonne);
    		IF last then call symputx('count',_n_);
    	run;
     
    	DATA 
    		%do i=1 %TO &count;
    			&data._&&monsujet&i
    		%end;
    	;
    		SET &DATA;
     
    		SELECT (&colonne);
    		%do i=1 %TO &count;
    			when ("&&monsujet&i") output &data._&&monsujet&i;
    		%end;
    		otherwise;
    		end;
                 run;
    %mend org;
     
    %org(classfit,name);
    %org(class,name);
     
     
    proc sql;
       create table lst_var as
          select memname
          from sashelp.vstable
          where upcase(libname)='WORK' and
                upcase(memname) like'CLASS%';
    quit;
     
     
    data lst;
    set lst_var ;
    sujet=scan(memname,2,'_');
    if sujet="" then delete;
    run;
     
    proc sort data=lst out=liste; by sujet;run;
     
    %org(liste,sujet);
     
     
    proc sql;
       create table liste_var as
          select memname
          from sashelp.vstable
          where upcase(libname)='WORK' and
                upcase(memname) like 'LISTE%';
    quit;
     
     
     
    %macro report();
     
    ODS ESCAPECHAR="^" ;
    ODS RTF FILE="c:\sas\document1.doc" startpage=no;
     
               data _null_;
               SET liste_var end=last;
               call symput ('tablefin'||LEFT(_n_),memname);
               IF last then call symputx('max',_n_);
               run;
     
    %do i=1 %to &max;
            DATA _null_;
            SET &&tablefin&i end=last;
    	    call symput ('table'||LEFT(_n_),memname);
    		IF last then call symputx('nbr',_n_);
            run;
     
         %do i=1 %TO &nbr;
           proc report DATA =&&table&i;
           columns name age sex weight height;
           DEFINE name / DISPLAY ;
           DEFINE sex / DISPLAY ;
           DEFINE age / DISPLAY ;
           DEFINE weight / DISPLAY ;
           DEFINE weight / DISPLAY ;
           run;
    	   ODS RTF STARTPAGE=NOW;
    	 %end;
     
    %end;
    ODS RTF CLOSE ;
    %mend;
    %report();
    Cordialement
    Certification des Talents de la programmation In Memory Statistics sur HADOOP:
    http://talents-imstat.groupe-avisia....avance?uid=162

Discussions similaires

  1. Réponses: 3
    Dernier message: 18/05/2011, 12h44
  2. Réponses: 2
    Dernier message: 18/05/2011, 11h58
  3. Sauts de page avec ODS HTML Proc report (SAS)
    Par mariebozo dans le forum ODS et reporting
    Réponses: 8
    Dernier message: 19/01/2009, 15h03

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