docs(config): derived variables in the EDIT screen #21
@@ -74,7 +74,7 @@ Derived columns themselves are an EDIT screen feature: the VIEW screen and the d
|
|||||||
|
|
||||||
- **Expressions only.** `VAR_LOGIC` must be a single SAS expression - no semicolons, macro triggers (`%`, `&`) or comments. Conditional logic is available through functions such as `ifc()`, `choosec()`, `cats()`, `catx()`, `put()`, `input()` and `intnx()`.
|
- **Expressions only.** `VAR_LOGIC` must be a single SAS expression - no semicolons, macro triggers (`%`, `&`) or comments. Conditional logic is available through functions such as `ifc()`, `choosec()`, `cats()`, `catx()`, `put()`, `input()` and `intnx()`.
|
||||||
- **Dependencies declared.** `VAR_DEPS` lists every input the expression uses, physical columns and derived variables alike. Statements are generated in dependency order, so a variable can build on another without a sequence number. The declaration is checked against the expression in both directions: a derived variable that is referenced must be declared, and a declared name that the expression does not reference is an error. A declared name must be a column of the table or a derived variable of the same table, and a cycle is rejected.
|
- **Dependencies declared.** `VAR_DEPS` lists every input the expression uses, physical columns and derived variables alike. Statements are generated in dependency order, so a variable can build on another without a sequence number. The declaration is checked against the expression in both directions: a derived variable that is referenced must be declared, and a declared name that the expression does not reference is an error. A declared name must be a column of the table or a derived variable of the same table, and a cycle is rejected.
|
||||||
- **Shadowing is allowed.** `VAR_NM` may match an existing column of the target table, in which case the expression reads the physical value - `SUMMER = SUMMER + 1` - and the view carries the derived value under the original name. `VAR_TYPE` and `VAR_LEN` must then match the column, because `attrib` cannot change either on a variable that already exists. The reserved names (`TX_FROM`, `TX_TO`, `PROCESSED_DTTM`, `VAR_TXFROM`, `VAR_TXTO`, `VAR_PROCESSED`, `_____DELETE__THIS__RECORD_____`) may never be used.
|
- **No collisions.** `VAR_NM` must not match an existing column of the target table, or one of the reserved names (`TX_FROM`, `TX_TO`, `PROCESSED_DTTM`, `VAR_TXFROM`, `VAR_TXTO`, `VAR_PROCESSED`, `_____DELETE__THIS__RECORD_____`).
|
||||||
- **Read-only.** Derived columns cannot be edited in the grid, and any value submitted for them is discarded before the approval package is created.
|
- **Read-only.** Derived columns cannot be edited in the grid, and any value submitted for them is discarded before the approval package is created.
|
||||||
- **Recomputed on every read.** The value always reflects the current data and the current definition, and there is no history of previous derived values.
|
- **Recomputed on every read.** The value always reflects the current data and the current definition, and there is no history of previous derived values.
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user