Workflow Documentation (from Fraktal SAS Programming): Unterschied zwischen den Versionen

Aus phenixxenia.org
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „== Open Code == When executing open SAS code, i.e. outside a MACRO segment definition, documentation is done by the SAS LOG on three severity levels: #'''Notes…“)
 
K
 
(7 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
 +
[[Kategorie:zazy]]
 +
{{SeitenNavigation1
 +
|links=xx_left.png
 +
|zurück=Process Metadata (from Fraktal SAS Programming)
 +
|rechts=xx_right.png
 +
|vorwärts=Realtime Information (from Fraktal SAS Programming)
 +
|hoch=Duck_zazy_com.png
 +
|übersicht=Extending Control (from Fraktal SAS Programming)
 +
}}
 +
 
== Open Code ==
 
== Open Code ==
 +
 
When executing open SAS code, i.e. outside a MACRO segment definition, documentation is done by the SAS LOG on three severity levels:
 
When executing open SAS code, i.e. outside a MACRO segment definition, documentation is done by the SAS LOG on three severity levels:
 
#'''Notes:''' Ordinary execution
 
#'''Notes:''' Ordinary execution
Zeile 15: Zeile 26:
 
== Macro code ==
 
== Macro code ==
  
Since MACRO programmers are very well aware what their code is aimed to do, they usually decide on their own which information is written to the LOG. To get a proper documentation the '''''MACRO PUT'' statement''' does the job:
+
Since MACRO programmers are very well aware what their code is intended to do, they usually decide on their own which information is written to the LOG. To get a proper documentation the '''''MACRO PUT'' statement''' does the job:
  
 
  %PUT Now processing age group no. &AGE_INDX.;
 
  %PUT Now processing age group no. &AGE_INDX.;
Zeile 25: Zeile 36:
 
*'''mlogic:''' Indicate branches taken or loop counters checked to the LOG.
 
*'''mlogic:''' Indicate branches taken or loop counters checked to the LOG.
 
*'''mfile:''' Write generated code to the fileref MPRINT.
 
*'''mfile:''' Write generated code to the fileref MPRINT.
 +
 +
 +
'''[[Stored Workflow Documentation (from Fraktal SAS Programming)|How to STORE it]]'''
 +
 +
 +
{{SeitenNavigation1
 +
|links=xx_left.png
 +
|zurück=Process Metadata (from Fraktal SAS Programming)
 +
|rechts=xx_right.png
 +
|vorwärts=Realtime Information (from Fraktal SAS Programming)
 +
|hoch=Duck_zazy_com.png
 +
|übersicht=Extending Control (from Fraktal SAS Programming)
 +
}}

Aktuelle Version vom 15. Mai 2014, 10:15 Uhr

Zurück

Übersicht

Vorwärts

Open Code

When executing open SAS code, i.e. outside a MACRO segment definition, documentation is done by the SAS LOG on three severity levels:

  1. Notes: Ordinary execution
  2. Warnings: Ambiguous code identified
  3. Errors: Execution cannot continue, hence stops

This makes SAS very convenient to the ad-hoc user, since execution is well documented and reasons for unexpected results or premature termination are delivered in deep detail.

Once you have reached the GEEK level in MACRO programming this service will appear childish and very soon will be more annoying than enlightening. As a consequence you will issue a statement similar to this one:

options nosource nonotes errors=0;

After that your LOG will remain silent, except for WARNINGS, which cannot be switched off.

Macro code

Since MACRO programmers are very well aware what their code is intended to do, they usually decide on their own which information is written to the LOG. To get a proper documentation the MACRO PUT statement does the job:

%PUT Now processing age group no. &AGE_INDX.;
%PUT Parameter ‘PARM_I’ is empty. Alternate code will execute;

Three MACRO specific options may be issued to document runtime behavior:

  • mprint: Write generated code to the LOG.
  • mlogic: Indicate branches taken or loop counters checked to the LOG.
  • mfile: Write generated code to the fileref MPRINT.


How to STORE it


Zurück

Übersicht

Vorwärts