Calls cas server and returns the results(async)
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
store |
store
|
restaf store |
|
session |
rafObject
|
cas session |
|
src |
string
|
casl src statements |
|
args |
object
|
<optional> |
user input args (reference this as args in casl program) |
useCommons |
boolean
|
<optional> |
include the common casl programs(checkAndLoad etc...) |
returns results from cas
promise
Example
let restaf = require("@sassoftware/restaf");
let payload = require('./config')();
let {casSetup} = require('@sassoftware/restaflib');
let prtUtil = require("./prtUtil");
let store = restaf.initStore({casProxy: true});
async function example () {
let { session } = await casSetup (store, payload);
// console.log(JSON.stringify(session.links(), null, 4));
let casl = `
action datastep.runcode/ single='YES' code = 'data casuser.a; x=1; run;';
action table.fetch r=r1/
table= { caslib= 'casuser', name= 'a' } ;
run;
action datastep.runcode/ single='YES' code = 'data casuser.b; y=1; run;';
action table.fetch r=r2/
table= { caslib= 'casuser', name= 'b' } ;
run;
c = {a=10, b=20};
send_response({a=r1, b=r2, c=c});
`;
let p = {
action: "sccasl.runcasl",
data : { code: casl }
};
let r = await store.runAction(session, p);
console.log(r.items().toJS());
let a = r.items().toJS();
console.log(a);
return "done";
}
example()
.then(r => console.log(r))
.catch(err => console.log(err));