new guide for dates & datetimes, and updated security description

This commit is contained in:
Allan Bowe 2018-09-28 11:57:13 +02:00
parent 4eea1444ec
commit 90dcf37727
11 changed files with 82 additions and 18 deletions

View File

@ -6,6 +6,7 @@ Installation
To build, navigate to the root of this repo and run:
mkdocs build --clean
mkdocs serve
To deploy, run the following:

View File

@ -1,21 +1,38 @@
# Data Controller for SAS: User Guide
## Overview
## Interface
The Data Controller has 5 tabs, as follows:
* *Viewer*. This tab lets users view any table to which they have been granted access in metadata. They can also download the data as csv, excel, or as a SAS program (datalines).
* *Editor*. This tab enables users to add, modify or delete data. This can be done directly in the browser, or by uploading a CSV file. Values can also be copy-pasted from a spreadsheet. Once changes are ready, they can be submitted, with a corresponding reason.
* *Submissions*. This shows and editor the outstanding changes that have been submitted for approval (but have not yet been approved or rejected).
* *Approvals*. This shows an approver all their outstanding approval requests.
* *History*. This shows an auditor, or other interested party, what changes have been submitted for each table.
* *[Viewer](#viewer)*. This tab lets users view any table to which they have been granted access in metadata. They can also download the data as csv, excel, or as a SAS program (datalines).
* *[Editor](#editor)*. This tab enables users to add, modify or delete data. This can be done directly in the browser, or by uploading a CSV file. Values can also be copy-pasted from a spreadsheet. Once changes are ready, they can be submitted, with a corresponding reason.
* *[Submitted](#submitted)*. This shows and editor the outstanding changes that have been submitted for approval (but have not yet been approved or rejected).
* *[Approvals](#approvals)*. This shows an approver all their outstanding approval requests.
* *[History](#history)*. This shows an auditor, or other interested party, what changes have been submitted for each table.
## Viewer
The Viewer screen lets any user with a SAS profile view tables to which they have already been granted access in metadata. Simply Select library / table and the View button. The first 5,000 rows of the table in question are displayed.
### Overview
The viewer screen provides users with a raw view of underlying data. It is only possible to view tables that have been registered in metadata.
Advantages of using the viewer (over client tools) for browsing data include:
It is also possible to build complex filters against data before viewing, via the Filter button. The filter string is converted into an ID, as can be seen in the URL. Simply share this link with any other SAS user to share that particular view.
The Viewer also has a Download option. This lets you Download your view of the data in CSV, Excel, and SAS format. The SAS format option gives you a SAS program with the relevant DATALINES so that you can easily recreate your data in another instance of SAS.
* Ability to provide links to tables / filtered views of tables (just copy url)
* In the case of SAS datasets, prevent file locks from ocurring
* Ability to quickly download a CSV / Excel / SAS Cards program for that table
### Usage
Choose a library, then a table, and click view to see the first 5000 rows.
A filter option is provided should you wish to view a different section of rows.
The Download button gives three options for obtaining the current view of data:
1) CSV. This provides a comma delimited file.
2) Excel. This provides a tab delimited file.
3) SAS. This provides a SAS program with data as datalines, so that the data can be rebuilt as a SAS table.
Note - if the table is registered in Data Controller as being TXTEMPORAL (SCD2) then the download option will prefilter for the _current_ records and removes the valid from / valid to variables. This makes the CSV a suitable format for subsequent DC file upload, if desired.
## Editor
@ -38,7 +55,9 @@ If you are also an approver you can approve this change yourself.
This page shows a list of the changes you have submitted (that are not yet approved).
## Approvals
This shows the list of changes that have been submitted to you (or your group) for approval.
This shows the list of changes that have been submitted to you (or your groups) for approval.
## History
View the list of changes to each table, who made the change, when, etc.
## Functionality

25
docs/dcc-dates.md Normal file
View File

@ -0,0 +1,25 @@
# Data Controller for SAS® - Dates & Datetimes
## Overview
Dates & datetimes are actually stored as plain numerics in regular SAS tables. In order for the Data Controller to recognise these values as dates / datetimes a format must be applied.
![displayed](img/dcc-dates1.png) ![source](img/dcc-dates2.png)
This format must also be present / updated in the metadata view of the (physical) table to be displayed properly. This can be done using DI Studio, or by running the following (template) code:
```
proc metalib;
omr (library="Your Library");
folder="/Shared Data/your table storage location";
update_rule=(delete);
run;
```

View File

@ -1,13 +1,13 @@
# Data Controller for SAS® - Security
## Summary
The Data Controller works at the level of Table and Group. Permissions can only be set at group level, and so there are two parts to adding a user:
DC security is applied at the level of Table and Group. Permissions can only be set at group level. There are two parts to adding a user:
1 - Adding the user to the relevant group in SAS metadata
2 - Ensuring that group has the appropriate access level in the configuration table
For guidance with adding SAS users, see SAS Documentation.
For guidance with adding SAS users, see [SAS Documentation](http://support.sas.com/documentation/cdl/en/mcsecug/69854/HTML/default/viewer.htm#n05epzfefjyh3dn1xdw2lkaxwyrz.htm).
## Details

View File

@ -1,14 +1,14 @@
# Data Controller for SAS® - Adding Tables
## Overview
Adding tables to the Data Controller is a matter of configuration, specifically the addition of a new record to the `DATACTRL.MPE_TABLES` table.
Adding tables to the Data Controller is a matter of configuration, specifically the addition of a new record to the `DATACTRL.MPE_TABLES` table, and corresponding entries in the `DATACTRL.MPE_SECURITY` table.
!!! note
In order to surface the table to users, appropriate groups should be configured as per [security](dcc-security.md) settings.
![screenshot](img/configtable.png)
## Details
## MPE_TABLES Configuration Details
Each table to be edited in the Data Controller is represented by one record in `DATACTRL.MPE_TABLES`. The fields should be populated as follows:
@ -25,9 +25,10 @@ This is a required field.
### LOADTYPE
The loadtype determines the nature of the update to be applied. Valid values are as follows:
- UPDATE. This is the most basic type, and any updates will happen 'in place'. Simply provide the primary key fields in the `BUSKEY` column.
- TXTEMPORAL. This signifies an SCD2 type load. For this type the validty fields (valid from, valid to) should be specified in the `VAR_TXFROM` and `VAR_TXTO` fields. The table itself should include `VAR_TXFROM` in the physical key. The remainder of the primary key fields (not including `VAR_TXFROM`) should be specified in `BUSKEY`.
- BITEMPORAL. These tables have two time dimensions - a version history, and a business history. The version history (SCD2) fields should be specified in `VAR_TXFROM` and `VAR_TXTO` and the business history fields should be specified in `VAR_BUSFROM` and `VAR_BUSTO`. The `VAR_TXFROM` and `VAR_BUSFROM` fields should be in the key of the actual table, but should not be also specified in the `BUSKEY` field.
* UPDATE. This is the most basic type, and any updates will happen 'in place'. Simply provide the primary key fields in the `BUSKEY` column.
* TXTEMPORAL. This signifies an SCD2 type load. For this type the validity fields (valid from, valid to) should be specified in the `VAR_TXFROM` and `VAR_TXTO` fields. The table itself should include `VAR_TXFROM` in the physical key. The remainder of the primary key fields (not including `VAR_TXFROM`) should be specified in `BUSKEY`.
* BITEMPORAL. These tables have two time dimensions - a version history, and a business history. The version history (SCD2) fields should be specified in `VAR_TXFROM` and `VAR_TXTO` and the business history fields should be specified in `VAR_BUSFROM` and `VAR_BUSTO`. The `VAR_TXFROM` and `VAR_BUSFROM` fields should be in the key of the actual table, but should not be also specified in the `BUSKEY` field.
This is a required field.
!!! Note
The support for BITEMPORAL loads is restricted, in the sense it is only possible to load data at a single point in time (no support for loading multiple business date ranges for a single business key). The workaround is simply to load each date range separately.

15
docs/dcu-tableviewer.md Normal file
View File

@ -0,0 +1,15 @@
# Data Controller for SAS: User Guide
## Viewer
The viewer screen provides a raw view of the underlying table.
Choose a library, then a table, and click view to see the first 5000 rows.
A filter option is provided should you wish to view a different section of rows.
The Download button gives three options for obtaining the current view of data:
1) CSV. This provides a comma delimited file.
2) Excel. This provides a tab delimited file.
3) SAS. This provides a SAS program with data as datalines, so that the data can be rebuilt as a SAS table.
Note - if the table is registered in Data Controller as being TXTEMPORAL (SCD2) then the download option will prefilter for the _current_ records and removes the valid from / valid to variables. This makes the CSV suitable for DC file upload, if desired.

BIN
docs/img/dcc-dates1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

BIN
docs/img/dcc-dates2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 296 KiB

After

Width:  |  Height:  |  Size: 262 KiB

View File

@ -1,6 +1,6 @@
# Data Controller Documentation
## Overview
## Overview
The Data Controller for SAS® enables users to self serve their data changes, and for data owners to retain control over those updates by reviewing and approving them.
@ -12,6 +12,7 @@ The following information is available on this site:
* [Overview](dc-overview.md)
* [User Guide](dc-userguide.md)
* [Config - Adding Tables](dcc-tables.md)
* [Config - Security](dcc-security.md)
* [Installation](dci-backend.md)
@ -21,3 +22,4 @@ The following sites contain additional information on the Data Controller:
* DC Overview [Presentation](https://slides.com/allanbowe/datacontroller)
* Data Controller [LinkedIn](https://www.linkedin.com/company/datacontroller/) page
* Data Controller [website](https://datacontroller.io)

View File

@ -8,6 +8,7 @@ pages:
- Tables: dcc-tables.md
- Security: dcc-security.md
- Selectboxes: dcc-selectbox.md
- Dates / Datetimes: dcc-dates.md
- Installing Data Controller:
- Backend: dci-backend.md
- Frontend: dci-frontend.md