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 09/06/2011, 18h18   #1
Invité de passage
 
Femme
Étudiant
Inscription : juin 2011
Messages : 8
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : Santé

Informations forums :
Inscription : juin 2011
Messages : 8
Points : 1
Points : 1
Par défaut Proc report : Comment insérer un espace entre les bordures et le body d'une table?

Bonjour,

J'utilise une proc report pour créer des tables. J'aimerais insérer un espace (une ligne) entre la bordure du header et le texte dans le body, ainsi que entre la derniere ligne du body et la bordure extérieur.
J'ai essayé de changer cellspacing et cellpadding dans ma proc template, mais ça ne donne pas ce que je veux.
J'avais le même problème pour l'espacement dans le header et j'ai réussi en insérant ce code dans ma proc report :
style(header)=[ pretext="\line " posttext="\line " protectspecialchars=off ];

Pouvez-vous m'aider?
Merci
Cyrielle25 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/06/2011, 17h53   #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
As-tu regardé de ce côté

http://support.sas.com/documentation...a002473628.htm
__________________
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 12/06/2011, 19h26   #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 823
Points : 2 823
Bonjour.
Si je comprends bien le besoin, il faudrait ajouter des variables pour marquer le tout début et la toute fin de ton tableau. Je suppose que tes données sont déjà agrégées ; si ce n'est pas le cas, il faudra une étape de proc MEANS ou SQL au préalable (ou trouver une astuce qui m'a échappé).
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
DATA work.class ;
  SET sashelp.class END=fin ;
  LENGTH endroit $ 5 ;
  IF _N_=1 THEN endroit = "debut" ;
  IF fin   THEN endroit = "fin" ;
RUN ;
ODS RTF FILE="c:\temp\test.doc" ;
PROC REPORT DATA=work.class 
			STYLE(HEADER)=[pretext="\line " posttext="\line " protectspecialchars=off]
			NOWD ;
	COLUMNS name sex age endroit ;
	DEFINE name / DISPLAY ;
	DEFINE sex / DISPLAY ;
	DEFINE age / DISPLAY ;
	DEFINE endroit / NOPRINT DISPLAY ;
	COMPUTE endroit ;
	  IF endroit="debut"
			THEN CALL DEFINE(_ROW_,"STYLE","STYLE=[pretext=""\line ""  protectspecialchars=off]") ;
	  IF endroit="fin"
			THEN CALL DEFINE(_ROW_,"STYLE","STYLE=[posttext=""\line "" protectspecialchars=off]") ;
	ENDCOMP ;
RUN ;
ODS RTF CLOSE ;
Bon courage.
Olivier
olivier.decourt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/06/2011, 11h34   #4
Invité de passage
 
Femme
Étudiant
Inscription : juin 2011
Messages : 8
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : Santé

Informations forums :
Inscription : juin 2011
Messages : 8
Points : 1
Points : 1
j'ai essayé le code que tu ma transmis mais j'ai un message d'erreur :
WARNING: endroit is not in the report definition.

Or j'ai bien définie endroit dans ma proc report, et cette variable se trouve bien dans ma table à reporter.
Cyrielle25 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/06/2011, 11h43   #5
Invité de passage
 
Femme
Étudiant
Inscription : juin 2011
Messages : 8
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : Santé

Informations forums :
Inscription : juin 2011
Messages : 8
Points : 1
Points : 1
C'est bon j'ai compris mon erreur ! merci le code fonctionne trés bien, c'est exactement ce qu'il me fallait!

Merci à tous!
Cyrielle25 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/06/2011, 15h21   #6
Invité de passage
 
Femme
Étudiant
Inscription : juin 2011
Messages : 8
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : Santé

Informations forums :
Inscription : juin 2011
Messages : 8
Points : 1
Points : 1
je reviens parce que j'ai un autre problème au niveau de l'espace entre le header et le body : la méthode du compute fonctionne bien mais quand ma table se trouve sur plusieurs pages, le header se répete et donc il n'y a pas d'espace entre ce header et le reste du body. (étant donné que j'ai une variable "endroit" qui m'indique le début et la fin de ma table)
Cyrielle25 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 16h02.


 
 
 
 
Partenaires

Hébergement Web