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

Aus phenixxenia.org
Zur Navigation springen Zur Suche springen
K
K
 
(3 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 36: 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
 
{{SeitenNavigation1
Zeile 43: Zeile 47:
 
|vorwärts=Realtime Information (from Fraktal SAS Programming)
 
|vorwärts=Realtime Information (from Fraktal SAS Programming)
 
|hoch=Duck_zazy_com.png
 
|hoch=Duck_zazy_com.png
|übersicht=Macro (from Fraktal SAS Programming)
+
|ü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