The QueryJoin
object defines a join to another (or same) table within a query. The Type
defines the join type, such as inner join, etc. The IncludeColumns
and ExcludeColumns
provide a shorthand to include or exclude selected columns; with the AliasColumns
providing a means to rename where required (for example duplicate name).
A YAML configuration example is as follows:
queries:
- { name: Table, schema: Test, view: true, viewName: vwTestQuery, excludeColumns: [CreatedBy, UpdatedBy], permission: TestSec,
joins: [
{ name: Person, schema: Demo, excludeColumns: [CreatedDate, UpdatedDate], aliasColumns: [RowVersion ^ RowVersionP],
on: [
{ name: PersonId, toColumn: TableId }
]
}
]
}
The QueryJoin
object supports a number of properties that control the generated code output. These properties are separated into a series of logical categories. The properties with a bold name are those that are more typically used (considered more important).
Category | Description |
---|---|
Key |
Provides the key configuration. |
Columns |
Provides the Columns configuration. |
Infer |
Provides the special Column Name inference configuration. |
Provides the key configuration.
Property | Description |
---|---|
name |
The name of the table to join. |
schema |
The schema name of the table to join. Defaults to Table.Schema ; i.e. same schema. |
alias |
The Schema.Table alias name. Will automatically default where not specified. |
type |
The SQL join type. Valid options are: Inner , Left , Right , Full . Defaults to Inner . |
Provides the Columns configuration.
Property | Description |
---|---|
includeColumns |
The list of Column names to be included in the underlying generated output. Where not specified this indicates that all Columns are to be included. |
excludeColumns |
The list of Column names to be excluded from the underlying generated output. Where not specified this indicates no Columns are to be excluded. |
aliasColumns |
The list of Column and Alias pairs (split by a ^ lookup character) to enable column renaming. Each alias value should be formatted as Column + ^ + Alias ; e.g. PCODE^ProductCode |
Provides the special Column Name inference configuration.
Property | Description |
---|---|
columnNameIsDeleted |
The column name for the IsDeleted capability. Defaults to CodeGeneration.IsDeleted . |
columnNameTenantId |
The column name for the TenantId capability. Defaults to CodeGeneration.TenantId . |
columnNameOrgUnitId |
The column name for the OrgUnitId capability. Defaults to CodeGeneration.OrgUnitId . |
columnNameRowVersion |
The column name for the RowVersion capability. Defaults to CodeGeneration.RowVersion . |
columnNameCreatedBy |
The column name for the CreatedBy capability. Defaults to CodeGeneration.CreatedBy . |
columnNameCreatedDate |
The column name for the CreatedDate capability. Defaults to CodeGeneration.CreatedDate . |
columnNameUpdatedBy |
The column name for the UpdatedBy capability. Defaults to CodeGeneration.UpdatedBy . |
columnNameUpdatedDate |
The column name for the UpdatedDate capability. Defaults to CodeGeneration.UpdatedDate . |
columnNameDeletedBy |
The column name for the DeletedBy capability. Defaults to CodeGeneration.UpdatedBy . |
columnNameDeletedDate |
The column name for the DeletedDate capability. Defaults to CodeGeneration.UpdatedDate . |
Note: This markdown file is generated; any changes will be lost.