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 12/01/2012, 17h46   #1
Membre du Club
 
Inscription : juillet 2002
Messages : 156
Détails du profil
Informations forums :
Inscription : juillet 2002
Messages : 156
Points : 40
Points : 40
Envoyer un message via MSN à foxrol
Par défaut Mise en forme des résultats

Bonjour

j'ai un problème pour le rprésentation des données par une proc tabulate ou proc report.

J'ai une table sas sous la forme ci_dessous (voir aussi fichier 1.JPG joint):

Famcat groupe cust11 cust12 cust01 cust02
ADE 70 312 393 25 45

cust11: représente le nombre de client du premier mois de l'année précédente
cust12: représente le nombre de client du second mois de l'année précédente

cust01: représente le nombre de client du premier mois de l'année en cours cust02: représente le nombre de client du second mois de l'année en cours.

Je voudrais donc avoir mes résultats sous la forme (comme indiqué sur la figure 2).

Merci de m'aider sur ce point.
Images attachées
Type de fichier : jpg 1.JPG (36,3 Ko, 10 affichages)
Type de fichier : jpg 2.JPG (19,5 Ko, 11 affichages)
foxrol est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/01/2012, 21h28   #2
Rédacteur
 
Homme Stéphane
Consultant et formateur SAS et Cognos
Inscription : avril 2009
Messages : 1 791
Détails du profil
Informations personnelles :
Nom : Homme Stéphane
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Consultant et formateur SAS et Cognos
Secteur : Conseil

Informations forums :
Inscription : avril 2009
Messages : 1 791
Points : 4 012
Points : 4 012
il te faut les colonnes année, mois. Comment tu veux faire sinon ?

Autrement, il faut aligner les custxx l'un après l'autre pour avoir ce que tu veux, par ex dans une TABULATE:

table cat*groupe , (cust11 cust12)*mean=''
__________________
N'oubliez pas de cliquer sur lorsque votre problème est réglé !

Moteur de recherche dans les papiers SAS
datametric est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/01/2012, 07h21   #3
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 828
Points : 2 828
Citation:
il te faut les colonnes année, mois. Comment tu veux faire sinon ?
Justement non, ce n'est pas obligé. On peut juste jouer sur les en-têtes.
Dans Tabulate, il faudrait ajouter une variable constante qui vaut "CLIENTS".
On écrit alors
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/*
<<<@!2!@>>>
Justement non, ce n'est pas obligé. On peut juste jouer sur les en-têtes.
Dans Tabulate, il faudrait ajouter une variable constante qui vaut "CLIENTS".
On écrit alors
*/
DATA work.test ;
  INPUT Famcat $ groupe $ cust11 cust12 cust01 cust02 ;
  cl = "Clients" ;
DATALINES ;
ADE 70 312 393 25 45
;
RUN ;
PROC TABULATE DATA=work.test ;
CLASS Famcat groupe cl ;
VAR cust11 cust12 cust01 cust02 ;
TABLE (Famcat*groupe),  
    cl=""*
	(SUM="Année précédente"*
		(cust11="Mois 1" cust12="Mois 2")
	 SUM="Année en cours"*
		(cust01="Mois 1" cust02="Mois 2")) ;
RUN ;
Et dans REPORT on n'est même pas obligé de définir de nouvelles variables, par contre la cellule en haut à gauche ne sera pas fusionnée.
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
DATA work.test ;
  INPUT Famcat $ groupe $ cust11 cust12 cust01 cust02 ;
DATALINES ;
ADE 70 312 393 25 45
;
RUN ;
PROC REPORT DATA=work.test NOWD ;
  COLUMNS Famcat groupe 
          ("Clients" 
             ("Année précédente" cust11 cust12)
             ("Année en cours" cust01 cust02)) ;
  DEFINE famCat / GROUP ;
  DEFINE groupe / GROUP ;
  DEFINE cust11 / ANALYSIS SUM "Mois 1" ;
  DEFINE cust12 / ANALYSIS SUM "Mois 2" ;
  DEFINE cust01 / ANALYSIS SUM "Mois 1" ;
  DEFINE cust02 / ANALYSIS SUM "Mois 2" ;
RUN ;
olivier.decourt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/01/2012, 10h01   #4
Membre du Club
 
Inscription : juillet 2002
Messages : 156
Détails du profil
Informations forums :
Inscription : juillet 2002
Messages : 156
Points : 40
Points : 40
Envoyer un message via MSN à foxrol
Citation:
Envoyé par olivier.decourt Voir le message
Justement non, ce n'est pas obligé. On peut juste jouer sur les en-têtes.
Dans Tabulate, il faudrait ajouter une variable constante qui vaut "CLIENTS".
On écrit alors
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/*
<<<@!2!@>>>
Justement non, ce n'est pas obligé. On peut juste jouer sur les en-têtes.
Dans Tabulate, il faudrait ajouter une variable constante qui vaut "CLIENTS".
On écrit alors
*/
DATA work.test ;
  INPUT Famcat $ groupe $ cust11 cust12 cust01 cust02 ;
  cl = "Clients" ;
DATALINES ;
ADE 70 312 393 25 45
;
RUN ;
PROC TABULATE DATA=work.test ;
CLASS Famcat groupe cl ;
VAR cust11 cust12 cust01 cust02 ;
TABLE (Famcat*groupe),  
    cl=""*
	(SUM="Année précédente"*
		(cust11="Mois 1" cust12="Mois 2")
	 SUM="Année en cours"*
		(cust01="Mois 1" cust02="Mois 2")) ;
RUN ;
Bonjour

Merci Olivier pour ta réponse. Finalement j'ai opté pour une proc tabulate. Mais j'ai un autre probléme (voir fichier joint), je voudrais pour les cases Clients, Année précédente, Année en cours Mois 1, Mois 2, avaoir un backgroup en jaune. J'ai reussi à l'avoir pour les cases Année précédente, Année en cours Mois 1, Mois 2 mais par contre pour la case Clients je butes.

Autre chose est-il possible pour chaque année de n'additionner que les valeurs du Mois1 sans ppour autant additionner celles du mois 2?


Merci d'avance
Images attachées
Type de fichier : jpg 3.JPG (11,0 Ko, 4 affichages)
foxrol est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/01/2012, 11h17   #5
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 828
Points : 2 828
Tu peux ajouter à ta TABULATE
Code :
CLASSLEV cl / STYLE=[BACKGROUND=RED] ;
olivier.decourt 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 19h11.


 
 
 
 
Partenaires

Hébergement Web