Macros for SAS Application Developers
No Matches File Reference

Send data to/from SAS Stored Processes. More...

Go to the source code of this file.

Detailed Description

This macro should be added to the start of each Stored Process, immediately** followed by a call to:


This will read all the input data and create same-named SAS datasets in the WORK library. You can then insert your code, and send data back using the following syntax:

data some datasets; * make some data ;
retain some columns;

%mm_webout(ARR,some)  * Array format, fast, suitable for large tables ;
%mm_webout(OBJ,datasets) * Object format, easier to work with ;

Finally, wrap everything up send some helpful system variables too

[in]actionEither FETCH, OPEN, ARR, OBJ or CLOSE
[in]dsThe dataset to send back to the frontend
[out]dslabel=Value to use instead of table name for sending to JSON
[in]fmt=(N) Setting Y converts all vars to their formatted values
[out]fref=(_webout) The fileref to which to write the JSON
[in]missing=(NULL) Special numeric missing values can be sent as NULL (eg null) or as STRING values (eg ".a" or ".b")
[in]showmeta=(N) Set to Y to output metadata alongside each table, such as the column formats and types. The metadata is contained inside an object with the same name as the table but prefixed with a dollar sign - ie, ,"$tablename":{"formats":{"col1":"$CHAR1"},"types":{"COL1":"C"}}
[in]workobs=(0) When set to a positive integer, will create a new output object (WORK) which contains this number of observations from all tables in the WORK library.
[in]maxobs=(MAX) Provide an integer to limit the number of input rows that should be converted to output JSON

SAS Macros

Related Macros

Allan Bowe

Definition in file