feat: cas table proposal
All checks were successful
Publish to docs.datacontroller.io / Deploy docs (push) Successful in 1m17s
All checks were successful
Publish to docs.datacontroller.io / Deploy docs (push) Successful in 1m17s
This commit is contained in:
56
docs/cas-tables.md
Normal file
56
docs/cas-tables.md
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
---
|
||||||
|
layout: article
|
||||||
|
title: CAS Tables
|
||||||
|
description: Dealing with CAS (in-memory) Tables in Data Controller
|
||||||
|
og_image: /img/SAS-Viya-and-CAS-300x249.png
|
||||||
|
---
|
||||||
|
|
||||||
|
!!! warning
|
||||||
|
Work in Progress!
|
||||||
|
|
||||||
|
# CAS Tables
|
||||||
|
|
||||||
|
CAS Tables require special consideration in Data Controller with regards to the following topics:
|
||||||
|
|
||||||
|
- System Account
|
||||||
|
- Loading
|
||||||
|
- Unloading
|
||||||
|
- Special Variables
|
||||||
|
|
||||||
|
## System Account
|
||||||
|
|
||||||
|
Despite having a shared SYSUSERID, the SPRE session will (by default) authenticate using the logged-in user credentials. To get around this, it is necessary to set up the CAS connection in the autoexec - ie, before the user takes over the session. The code snippet will be:
|
||||||
|
|
||||||
|
```sas
|
||||||
|
%let _CASHOST_ = <your-host>;
|
||||||
|
|
||||||
|
%let _CASPORT_ = 5570;
|
||||||
|
|
||||||
|
cas dcsession authdomain="<your-domain>" sessopts=(caslib=casuser);
|
||||||
|
```
|
||||||
|
|
||||||
|
The credentials need to be first placed in the viya credentials service as described [here](https://go.documentation.sas.com/doc/en/pgmsascdc/v_073/casref/n0z3r80fjqpobvn1lvegno9gefni.htm#p11ynzjbz96oq1n17rgt2utv6swj).
|
||||||
|
|
||||||
|
Another approach can be to use the `AUTHINFO="authentication-file" option, as described [here](https://go.documentation.sas.com/doc/en/pgmsascdc/v_073/casref/n0z3r80fjqpobvn1lvegno9gefni.htm#n174yddgn85756n1v5q4yb881xa0).
|
||||||
|
|
||||||
|
Note that since the CAS connection is using a shared account, the CASUSER library is never shown in the DC interface.
|
||||||
|
|
||||||
|
## Loading
|
||||||
|
|
||||||
|
It can happen that a CAS table is configured in Data Controller but not loaded into memory. In this case, when a user selects the table, it will be automatically loaded.
|
||||||
|
|
||||||
|
## Unloading
|
||||||
|
|
||||||
|
After an approval, the in-memory version of the CAS Table will be updated. To apply this to the underlying file on disk, the following code must be executed (eg in a POST APPROVE HOOK):
|
||||||
|
|
||||||
|
```sas
|
||||||
|
proc casutil;
|
||||||
|
save casdata="mytable" incaslib="mycaslib"
|
||||||
|
casout="mytable" outcaslib="mycaslib"
|
||||||
|
replace;
|
||||||
|
quit;
|
||||||
|
```
|
||||||
|
|
||||||
|
## Special Variables
|
||||||
|
|
||||||
|
Processing of data in Data Controller is performed in SPRE with SAS datasets - and as such, it is not possible to process character variables longer than 32k or other CAS specific data types.
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 43 KiB After Width: | Height: | Size: 46 KiB |
@@ -39,6 +39,7 @@ nav:
|
|||||||
- MPE_XLMAP_INFO: tables/mpe_xlmap_info.md
|
- MPE_XLMAP_INFO: tables/mpe_xlmap_info.md
|
||||||
- MPE_XLMAP_RULES: tables/mpe_xlmap_rules.md
|
- MPE_XLMAP_RULES: tables/mpe_xlmap_rules.md
|
||||||
- Configuration:
|
- Configuration:
|
||||||
|
- CAS Tables: cas-tables.md
|
||||||
- Column Level Security: column-level-security.md
|
- Column Level Security: column-level-security.md
|
||||||
- Dates / Datetimes: dcc-dates.md
|
- Dates / Datetimes: dcc-dates.md
|
||||||
- Dynamic Cell Dropdown: dynamic-cell-dropdown.md
|
- Dynamic Cell Dropdown: dynamic-cell-dropdown.md
|
||||||
|
|||||||
Reference in New Issue
Block a user