Pratique de Sas Windows ...9.3 Volume 2 - Ined
Pratique de Sas Windows ...9.3 Volume 2 - Ined
Pratique de Sas Windows ...9.3 Volume 2 - Ined
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Reprenons ici sur certains <strong>de</strong> ces éléments : La syntaxe générale sera donc :<br />
PROC TEMPLATE;<br />
DEFINE STYLE Chemin.Nomtemplate | Base.Template.Style ;<br />
PARENT=nom.du.template<strong>de</strong>styleparent;<br />
NOTES "commentaire";<br />
CLASS NomElementStyle <br />
;<br />
:::::<br />
STYLE NomElementStyle <br />
;<br />
:::::<br />
END;<br />
END;<br />
Parent= définit et enclenche le processus d’héritage suivant : tous les éléments du style parent sont copiés dans<br />
le style qui en dépend et y seront utilisés, à moins que le nouveau style ne possè<strong>de</strong> <strong>de</strong>s éléments <strong>de</strong> style qui<br />
prennent alors la préséance en écrasant (overri<strong>de</strong>) ceux <strong>de</strong>scendus <strong>de</strong> même nom.<br />
data classcop;set <strong>Sas</strong>help.class;run;<br />
ods path reset;<br />
proc template;<br />
<strong>de</strong>fine style Ks;<br />
parent=styles.statistical;<br />
/* vi<strong>de</strong> */<br />
end;<br />
run;<br />
ods html close;<br />
ods preferences;<br />
ods html<br />
file="d:\notes\test\HS0.htm"<br />
style=KS;<br />
ods select members;<br />
proc datasets ;<br />
contents lib=work;<br />
run;<br />
quit;<br />
ods html close;<br />
On copie quelque chose dans le work.<br />
Remise en état : situation par défaut <strong>de</strong>s entrepôts ouverts.<br />
Création du template à vi<strong>de</strong> pour tester<br />
l’héritage par rapport à statistical évitant ainsi le htmlblue courant ou le<br />
basic <strong>de</strong>fault.<br />
Ces <strong>de</strong>ux instructions nous permettent d’échapper au fonctionnement du<br />
style par défaut htmlblue et son écriture en continu dans la work sous 9.3<br />
C’est bien le parent Statistical dont on a hérité<br />
L’utilisation <strong>de</strong> From dans l’instruction style copiera tous les attributs <strong>de</strong> styles <strong>de</strong> cet élément du style parent<br />
vers le style enfant. Si, dans l’instruction style, il y a un NomElementStyle <strong>de</strong> même nom qu’un élément<br />
ascendant dans le template en cours <strong>de</strong> définition présent avec un From, l’élément <strong>de</strong> style enfant absorbe le<br />
contenu <strong>de</strong> l’élément <strong>de</strong> style parent, mais l’attribut enfant <strong>de</strong> même nom écrase (overri<strong>de</strong>) l’attribut parent.<br />
Si, par contre, il est défini sans From, alors cet élément écrase le contenu <strong>de</strong> l’élément <strong>de</strong> style Parent <strong>de</strong> même<br />
nom.<br />
proc template;<br />
<strong>de</strong>fine style Ks; parent=styles.<strong>de</strong>fault;<br />
style hea<strong>de</strong>r from hea<strong>de</strong>r /<br />
foreground=red ;<br />
style fonts from fonts /<br />
"docFont" = ("Times Roman, serif", 3);<br />
end;<br />
run;<br />
/* le style KS a été remplacé*/<br />
ods html close;<br />
ods preferences;<br />
ods html<br />
file="d:\notes\test\HS1.htm"<br />
style=KS;<br />
ods select members;<br />
proc datasets ;<br />
contents lib=work;<br />
run;quit;<br />
ods html close;<br />
On écrase l’ancien template KS car on réutilise le même nom <strong>de</strong><br />
template qui ira s’écrire au même endroit ;<br />
Son contenu est cependant modifié, car on définit un autre parent le<br />
basic styles.<strong>de</strong>fault.<br />
De plus, on a recours à la définition <strong>de</strong> <strong>de</strong>ux éléments <strong>de</strong> style avec<br />
from pour lesquels on déci<strong>de</strong> <strong>de</strong> contrecarrer le contenu <strong>de</strong> l’attribut<br />
Foreground et "docFont ".<br />
On retrouve bien ce styles.<strong>de</strong>fault dont KS a bien hérité mais avec les<br />
2 transformations :<br />
La police <strong>de</strong> l’en-tête <strong>de</strong> table en rouge<br />
La police et sa taille du corps du document changée<br />
Rem ods select members; a été utilisé pour avoir une seule sortie tabulaire autre que print,report,tabulate, régis autrement pour le style.<br />
38 <strong>Pratique</strong> <strong>de</strong> <strong>Sas</strong> windows ….93 <strong>Volume</strong> 2 et Coll.