Veröffentlicht am :
Berichterstattung CREATION_INTERNE

Generierung von Code-Diary-Dokumentation

Dieser Code ist auch verfügbar auf: Français English Español
Wartet auf Validierung
Dieses Programm konfiguriert die Umgebung für die Ausführung des Makros `%code_diary`. Es definiert mehrere Parametertabellen (Aliasnamen, Reihenfolge, Kopfzeilen, Ausschlüsse) über DATA-Schritte und `datalines`. Anschließend führt es das Makro `%code_diary` aus, um eine Hauptprojektdatei (`project_main.sas©`) zu analysieren und Markdown-Dateien (vollständig und gefiltert) zu erstellen. Schließlich konvertiert es die gefilterte Markdown-Datei über das Makro `%convert_markdown_to_html` in HTML.
Datenanalyse

Type : CREATION_INTERNE


Die Konfigurationstabellen (alias_list, order_list, header_list, scrub_list) werden direkt im Skript mit der Anweisung `datalines` erstellt. Dateipfade werden über Makrovariablen (`&MACRO_ROOT`, `&DEMO_ROOT`) verwaltet.

1 Codeblock
MACRO
Erklärung :
Einbindung der Definitionen der externen Makros, die für die Verarbeitung erforderlich sind: `code_diary` für die Generierung des Tagebuchs und `convert_markdown_to_html` für die Formatkonvertierung.
Kopiert!
1%include "&MACRO_ROOT.code_diary.sas";
2%include "&MACRO_ROOT.convert_markdown_to_html.sas";
3 
2 Codeblock
DATA STEP Data
Erklärung :
Erstellung von vier temporären Tabellen (`work.alias_list`, `work.order_list`, `work.header_list`, `work.scrub_list`), die die Konfigurationsparameter für die Dokumentation (Aliasnamen, Reihenfolge der Abschnitte, Kopfzeilenbeschriftungen und auszublendende Elemente) enthalten.
Kopiert!
1DATA work.alias_list;
2 INFILE DATALINES;
3 INPUT short_keyword $1-10 long_keyword $11-50;
4 DATALINES;
5excl exclusion
6stat statistics
7;
8 
9DATA work.order_list;
10 INFILE DATALINES;
11 INPUT keyword $1-20 order_no 21-25;
12 DATALINES;
13todo -30
14exclusion -20
15exclusion.time -19
16exclusion.person -18
17methods -10
18no_keyword 0
19;
20 
21DATA work.header_list;
22 INFILE DATALINES;
23 INPUT keyword $1-15 header $16-50;
24 DATALINES;
25exclusion Exclusion criteria
26person Subjects
27time Time periods
28todo Task list
29;
30 
31DATA work.scrub_list;
32 INFILE DATALINES;
33 INPUT keyword $1-15;
34 DATALINES;
35todo
36regex
37;
3 Codeblock
MACRO
Erklärung :
Ausführung der Hauptmakros: `%code_diary` generiert die Markdown-Dateien (eine für Entwickler, eine 'bereinigte' für alle) unter Verwendung der zuvor erstellten Konfigurationstabellen. Anschließend wandelt `%convert_markdown_to_html` die bereinigte Markdown-Datei in eine HTML-Seite um.
Kopiert!
1%code_diary(
2 input_main_file = &DEMO_ROOT.project_main.sas,
3 out_dir = &DEMO_ROOT,
4 out_file = OUTPUT-coder.md,
5 out_file_scrubbed = OUTPUT-for-all.md,
6 debug_mode = 0,
7 section_aliases = work.alias_list,
8 section_order = work.order_list,
9 section_headers = work.header_list,
10 sections_scrubbed = work.scrub_list
11);
12 
13%convert_markdown_to_html(
14 in_file_md = "&DEMO_ROOT.output-for-all.md",
15 out_file_html = "&DEMO_ROOT.output-for-all.htm",
16 debug_mode = 0
17);
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.