Allan Bowe
Chief SAS App Officer
Loading Woes
Certain power users may be granted permissions to update data directly, eg using SAS code or a wizard. Main issues are:
Loading Woes
Flexible - yes Quick - yes Safe - no
Loading Woes
We could build routines to test and load files via a designated 'landing area'. However:
Flexible - no Quick - no Safe - yes
It may be possible to request an administrator to perform direct production updates. Unfortunately:
Loading Woes
Flexible - yes Quick - no Safe - no
Loading Woes
Process
Benefits
Features
Great Updates
Editors can modify records, add new records, and mark records for deletion. These changes are uploaded to a secure staging area prior to approval.
Features include:
Proposed changes approved before applied to target. The Approver only sees the changes that will be applied to the data and can accept / reject as appropriate.
Great Updates
When setting up permissions, it's necessary to know which users belong to which group. This information is available in both SAS 9 and Viya versions (Viya version does not contain roles)
More Features
Essentially, "metabrowse" for the browser! (SAS9 only)
More Features
Trace tables and columns from source to target (and back)
More Features
Attributes of Libraries, Tables and columns - including row counts, primary key information, and metrics such as number of tables without primary keys
Frequently changing attributes are kept in seperate tables (eg rowcounts, size info, modified date)
More Features
Store long & short descriptions (markdown) along with "owner" and "responsible" information for:
More Features
Features
Read on!
The following technical implementations are natively supported:
Features
If you have the requisite SAS/ACCESS engine, then the Data Controller can manage your data updates.
We've deployed successfully against:
Features
Adding new tables, user groups, drop down data validation menus etc is simply a matter of configuration. Adding a new table is just 2 entries - table attributes, and security attributes.
Features
No need to define every column, as these attributes are taken from the target table at runtime!
The following SAS® security mechanisms are utilised:
Features
More info
Additional, optional components:
Action Step
Contact us for a copy! Free (forever) for 5 users.
More info
What are the prerequisites?
A modern web browser (IE11+) and SAS 9.3 or Viya 3.5.
Will this work for my preferred database (Postgres / Oracle / Netezza / Teradata)?
If you have the relevant SAS Access Engine, then most likely yes. However there may be instances where the data controller is not suitable (eg for BLOBS, files, very long strings). If you have specific / unusual requirements, lets have a chat.
More info
Do we need to grant special permission to end users?
No - updates are made using the stored process system account (eg `sassrv`). External credentials can be taken from metadata or granted directly to that account. End users are therefore enabled to make controlled updates (via the tool) without needing to have direct (uncontrolled) access to the data.
More info
Do we need to enable XCMD (OS level access) on the STP server?
Nope - all services use regular SAS code (no XCMD needed).
Are file uploads supported?
Yes. We have an OEM licence for sheetJS - you can upload any type of excel file. If you have a lot of data (eg 100k rows), you can upload a CSV, this will bypass the frontend rendering part.
Roadmap
By Allan Bowe
The Data Controller lets you load, change, and delete data in SAS - securely, safely, and transparently.