Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > SAS > ODS et reporting
ODS et reporting Forum d'entraide sur les fonctionnalités de reporting de SAS : gérer les sorties et graphiques 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 22/04/2011, 09h55   #1
Invité de passage
 
Homme
Développeur SAS
Inscription : mars 2007
Messages : 12
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Développeur SAS

Informations forums :
Inscription : mars 2007
Messages : 12
Points : 2
Points : 2
Par défaut Titre de colonne

Salut à tous!

Voilà, j'ai un petit problème, je voudrais faire rentrer dans la cellule de titre la moyenne que je calcule.

Code :
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
proc report DATA=XXX nowd style(report)={JUST=LEFT BORDERWIDTH=0.5pt FRAME=box RULES=groups}
							style(header)={CELLWIDTH=3cm BACKGROUND=#FFE89F FONT_FACE=Arial}
							style(COLUMN)={FONT_FACE=Arial};
  COLUMN essai ("Middle" mid_pep) ("/*Endroit où je veux que moy s'affiche*/" moyenne);
	define mid_pep / "" display style(COLUMN) = {CELLWIDTH=16cm JUST=LEFT VJUST=center};
	define essai / display noprint;
	compute mid_pep;
		IF iessai='Y' then call define(_COL_,'STYLE','STYLE=[FONT_WEIGHT=bold]');
	endcomp;
WHERE act="&act" AND categorie="1"; 
	define perf / "" display style(COLUMN) = {CELLWIDTH=3cm JUST=CENTER BACKGROUND=bg_efficacite. FOREGROUND=bg_efficacite.};
	define essai / display noprint;
	compute perf; 
		IF perf=1 then do;  
			eff=1;
		end;
		else IF perf=3 then do;
			eff=4;
		end;
		else IF perf=2 AND essai='Y' then do;
			eff=2;
		end;
		else do;
			eff=3;
		end;
 
		ADD=ADD+eff;
u=u+1;
		moy=ADD/u;
 
		IF essai='Y' AND perf=1 then moy=1;
		IF essai='Y' AND perf=2 then moy<=2;
	endcomp;
run;
Et sinon, je voudrais que l'entête de colonne où moy s'affiche soit collée à l'autre entête middle, au lieu d'être au dessus de la seconde colonne... je sais pas si c'est très clair...

Merci d'avance!!!
Nirvana84 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/04/2011, 10h10   #2
Expert Confirmé
 
Avatar de olivier.decourt
 
Homme Olivier Decourt
Formateur en informatique
Inscription : avril 2008
Messages : 1 467
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 467
Points : 2 823
Points : 2 823
Bonjour Nirvana.
Je pense qu'il va falloir passer par une macro-variable. Si j'ai bien compris, tu voudrais quelque chose comme ça :
Code :
1
2
3
4
5
6
7
8
9
10
11
PROC SQL NOPRINT ;
  SELECT MEAN(age) FORMAT=NUMX10.1 INTO : moyenne
  FROM sashelp.class ;
QUIT ;
%LET moyenne = &moyenne ; /* pour éliminer les blancs à gauche */
PROC REPORT DATA=sashelp.class NOWD ;
  COLUMNS ("Moyenne d'âge=&moyenne ans" (name age sex)) ;
  DEFINE name / DISPLAY ;
  DEFINE age / DISPLAY ;
  DEFINE sex / DISPLAY ;
RUN ;
Bon courage.
Olivier
olivier.decourt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/04/2011, 09h13   #3
Invité de passage
 
Homme
Développeur SAS
Inscription : mars 2007
Messages : 12
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Développeur SAS

Informations forums :
Inscription : mars 2007
Messages : 12
Points : 2
Points : 2
Je me suis débrouillé autrement, finalement! Merci pour ton aide!
Nirvana84 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 12h37.


 
 
 
 
Partenaires

Hébergement Web