Hey @Anna_nag,
As someone mentioned, you need the appropriate SAS license to run whatever SAS code you're trying. saspy is just a client that connects to the SAS system you point it to. That SAS can only do what it's allowed to do. So any code you can run in that SAS install, if you ran it there yourself, will run in that SAS install when you submit it through saspy. saspy has nothing to do with what the SAS session it's connected to can or can't do. Make sense?
As for the submit() compared to the magic, the magic is just a jupyter specific 'macro' sort of. All it really does is just take the code you supply and call the submit() method for you. The differences however are that the magic will only display either the output (if there is any) else the log for that code. Calling the submit method yourself returns the output (lst) and log in a dictionary which you can then interact with in the rest of your python code. You can display either or both (lst and log), and you can interact with those via your python code.
So, the magic is a shortcut with less functionality than submit itself. Which one you use is just dependent on what functionality you want for the given code you're submitting. Also, there are a number of analytic methods already available in saspy which run various procs. You can run those as methods directly off the specific Analytic Objects (stat, ets, ml, qc ...). However, I don't know if the specific procs you want to run already have methods defined for them in saspy currently or not. You can see what's already in there here:
https://sassoftware.github.io/saspy/api.html#procedure-syntax-statements
Hope that helps!
Tom
... View more