Publié le :
Reporting CREATION_INTERNE

Génération de documentation Code Diary

Ce code est également disponible en : Deutsch English Español
En attente de validation
Ce programme configure l'environnement pour l'exécution de la macro `%code_diary`. Il définit plusieurs tables de paramétrage (alias, ordre, en-têtes, exclusions) via des étapes DATA et `datalines`. Ensuite, il exécute la macro `%code_diary` pour analyser un fichier projet principal (`project_main.sas©`) et produire des fichiers Markdown (complet et filtré). Enfin, il convertit le fichier Markdown filtré en HTML via la macro `%convert_markdown_to_html`.
Analyse des données

Type : CREATION_INTERNE


Les tables de configuration (alias_list, order_list, header_list, scrub_list) sont créées directement dans le script à l'aide de l'instruction `datalines`. Les chemins de fichiers sont gérés via des macro-variables (`&MACRO_ROOT`, `&DEMO_ROOT`).

1 Bloc de code
MACRO
Explication :
Inclusion des définitions des macros externes nécessaires au traitement : `code_diary` pour la génération du journal et `convert_markdown_to_html` pour la conversion de format.
Copié !
1%include "&MACRO_ROOT.code_diary.sas";
2%include "&MACRO_ROOT.convert_markdown_to_html.sas";
3 
2 Bloc de code
DATA STEP Data
Explication :
Création de quatre tables temporaires (`work.alias_list`, `work.order_list`, `work.header_list`, `work.scrub_list`) contenant les paramètres de configuration pour la documentation (alias, ordre des sections, libellés des en-têtes, et éléments à masquer).
Copié !
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 Bloc de code
MACRO
Explication :
Exécution des macros principales : `%code_diary` génère les fichiers Markdown (un pour les développeurs, un 'scrubbed' pour tous) en utilisant les tables de configuration créées précédemment. Ensuite, `%convert_markdown_to_html` transforme le fichier Markdown nettoyé en une page HTML.
Copié !
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);
Ce matériel est fourni "tel quel" par We Are Cas. Il n'y a aucune garantie, expresse ou implicite, quant à la qualité marchande ou à l'adéquation à un usage particulier concernant le matériel ou le code contenu dans les présentes. We Are Cas n'est pas responsable des erreurs dans ce matériel tel qu'il existe maintenant ou existera, et We Are Cas ne fournit pas de support technique pour celui-ci.