Veröffentlicht am :
Makro EXTERN

Makro AHGvarlabel - Formatierung von Variablenbeschriftungen

Dieser Code ist auch verfügbar auf: English Español Français
Wartet auf Validierung
Dieses Makro extrahiert Metadaten (Namen und Beschriftungen) aus einer Tabelle, die durch den Parameter 'dsn' angegeben wird. Es verwendet das externe Makro '%AHGvarinfo' für die Extraktion. Ein DATA Step formatiert diese Informationen dann in eine Zeichenkette, die den Namen und die Beschriftung in der Form 'Variablenname /* Beschriftung */' kombiniert, nützlich für die Generierung von selbst-dokumentiertem Code oder Berichten. Das Ergebnis wird in einer Ausgabetabelle gespeichert und kann über '%AHGprt' angezeigt werden.
Datenanalyse

Type : EXTERN


Das Makro erwartet eine SAS-Tabelle als Eingabe über den Parameter '&dsn'. Die manipulierten Daten sind die Metadaten (Spaltenwörterbuch) dieser Tabelle.

1 Codeblock
DATA STEP Data
Erklärung :
Definition des Makros 'AHGvarlabel'. Es initialisiert den Namen der Ausgabetabelle, falls nicht angegeben, ruft '%AHGvarinfo' auf, um die Variablenattribute abzurufen, und führt dann einen DATA Step aus, um eine beschreibende Zeichenkette (Name + Beschriftung im Kommentar) zu formatieren. Es endet mit einem bedingten Aufruf von '%AHGprt' zur Anzeige.
Kopiert!
1%macro AHGvarlabel(dsn,out=,trim=1,PRINT=1);
2%IF %AHGblank(&out) %THEN %let out=%AHGbasename(&dsn)_label867;
3%AHGvarinfo(&dsn,out=&out,info= name label);
4DATA &out;
5 FORMAT name $50. label $260.;
6 SET &out;
7 keep label ;
8 label=trim(name)||' /*'||trim(label)||' */';
9RUN;
10 
11%IF &PRINT %THEN %AHGprt;
12%mend;
Dieses Material wird von We Are Cas "wie besehen" zur Verfügung gestellt. Es gibt keine ausdrücklichen oder stillschweigenden Garantien hinsichtlich der Marktgängigkeit oder Eignung für einen bestimmten Zweck in Bezug auf die hierin enthaltenen Materialien oder Codes. We Are Cas ist nicht verantwortlich für Fehler in diesem Material, wie es jetzt existiert oder existieren wird, noch bietet We Are Cas technischen Support dafür an.