Table of Contents

Work Order Task Movement

Table

Database Table Entity On Key 5 Conversions On Key 5 Tables Other Entities stored in same Table
Transaction wm.work_order_task_movement Work Order Task Movement

Columns

Property Db Table Db Column Db DataType Nullable Primary Key Joins
CreatedByUserId wm.work_order_task_movement created_by_user_id bigint False
CreatedByUserCode uam.user code character varying(50) False wm.work_order_task_movement.created_by_user_id = uam.user.user_id
CreatedByUserFullName uam.user full_name character varying(200) False wm.work_order_task_movement.created_by_user_id = uam.user.user_id
CreatedOn wm.work_order_task_movement created_on timestamp without time zone False
PermissionTreeId wm.work_order_task_movement permission_tree_id bigint False
PermissionTreeCode uam.permission_tree code text False wm.work_order_task_movement.permission_tree_id = uam.permission_tree.permission_tree_id
PermissionTreeDescription uam.permission_tree description text True wm.work_order_task_movement.permission_tree_id = uam.permission_tree.permission_tree_id
Id wm.work_order_task_movement work_order_task_movement_id bigint False True
Version wm.work_order_task_movement version integer False
Action wm.work_order_task_movement action wm.work_order_movement_action False
Direction wm.work_order_task_movement direction wm.work_order_movement_direction False
Result wm.work_order_task_movement result wm.work_order_movement_result False
WorkOrderId wm.work_order_task_movement work_order_id bigint False
WorkOrderCode wm.work_order code character varying(50) False wm.work_order_task_movement.work_order_id = wm.work_order.work_order_id
WorkOrderMovementId wm.work_order_task_movement work_order_movement_id bigint False
WorkOrderMovementWorkOrderId wm.work_order work_order_id bigint False True wm.work_order_task_movement.work_order_movement_id = wm.work_order_movement.work_order_movement_id Then
wm.work_order_movement.work_order_id = wm.work_order.work_order_id
WorkOrderMovementWorkOrderCode wm.work_order code character varying(50) False wm.work_order_task_movement.work_order_movement_id = wm.work_order_movement.work_order_movement_id Then
wm.work_order_movement.work_order_id = wm.work_order.work_order_id
WorkOrderMovementWorkOrderDescription wm.work_order description character varying(100) False wm.work_order_task_movement.work_order_movement_id = wm.work_order_movement.work_order_movement_id Then
wm.work_order_movement.work_order_id = wm.work_order.work_order_id
WorkOrderMovementWorkOrderWorkRequired wm.work_order work_required text False wm.work_order_task_movement.work_order_movement_id = wm.work_order_movement.work_order_movement_id Then
wm.work_order_movement.work_order_id = wm.work_order.work_order_id
WorkOrderMovementWorkOrderRequiredBy wm.work_order required_by timestamp without time zone False wm.work_order_task_movement.work_order_movement_id = wm.work_order_movement.work_order_movement_id Then
wm.work_order_movement.work_order_id = wm.work_order.work_order_id
WorkOrderMovementWorkOrderSiteId gen.site site_id bigint False True wm.work_order_task_movement.work_order_movement_id = wm.work_order_movement.work_order_movement_id Then
wm.work_order_movement.work_order_id = wm.work_order.work_order_id Then
wm.work_order.site_id = gen.site.site_id
WorkOrderMovementWorkOrderSiteCode gen.site code character varying False wm.work_order_task_movement.work_order_movement_id = wm.work_order_movement.work_order_movement_id Then
wm.work_order_movement.work_order_id = wm.work_order.work_order_id Then
wm.work_order.site_id = gen.site.site_id
WorkOrderMovementWorkOrderCostCentreId fin.cost_centre cost_centre_id bigint False True wm.work_order_task_movement.work_order_movement_id = wm.work_order_movement.work_order_movement_id Then
wm.work_order_movement.work_order_id = wm.work_order.work_order_id Then
wm.work_order.cost_centre_id = fin.cost_centre.cost_centre_id
WorkOrderMovementWorkOrderCostCentreCode fin.cost_centre code character varying(50) False wm.work_order_task_movement.work_order_movement_id = wm.work_order_movement.work_order_movement_id Then
wm.work_order_movement.work_order_id = wm.work_order.work_order_id Then
wm.work_order.cost_centre_id = fin.cost_centre.cost_centre_id
WorkOrderMovementWorkOrderGeneralLedgerId fin.general_ledger general_ledger_id bigint False True wm.work_order_task_movement.work_order_movement_id = wm.work_order_movement.work_order_movement_id Then
wm.work_order_movement.work_order_id = wm.work_order.work_order_id Then
wm.work_order.general_ledger_id = fin.general_ledger.general_ledger_id
WorkOrderMovementWorkOrderGeneralLedgerCode fin.general_ledger code character varying(50) False wm.work_order_task_movement.work_order_movement_id = wm.work_order_movement.work_order_movement_id Then
wm.work_order_movement.work_order_id = wm.work_order.work_order_id Then
wm.work_order.general_ledger_id = fin.general_ledger.general_ledger_id
WorkOrderMovementWorkOrderStatusId wm.work_order_status work_order_status_id bigint False True wm.work_order_task_movement.work_order_movement_id = wm.work_order_movement.work_order_movement_id Then
wm.work_order_movement.work_order_id = wm.work_order.work_order_id Then
wm.work_order.status_id = wm.work_order_status.work_order_status_id
WorkOrderMovementWorkOrderStatusCode wm.work_order_status code character varying(50) False wm.work_order_task_movement.work_order_movement_id = wm.work_order_movement.work_order_movement_id Then
wm.work_order_movement.work_order_id = wm.work_order.work_order_id Then
wm.work_order.status_id = wm.work_order_status.work_order_status_id
WorkOrderMovementWorkOrderStatusBaseStatus wm.work_order_status base_status wm.work_order_status_base_status False wm.work_order_task_movement.work_order_movement_id = wm.work_order_movement.work_order_movement_id Then
wm.work_order_movement.work_order_id = wm.work_order.work_order_id Then
wm.work_order.status_id = wm.work_order_status.work_order_status_id
WorkOrderTaskId wm.work_order_task_movement work_order_task_id bigint False
WorkOrderTaskTaskCode wm.work_order_task task_code character varying False wm.work_order_task_movement.work_order_task_id = wm.work_order_task.work_order_task_id

Enumerations

Mapping 1

Property Property Type Db Column Db Column Type Db Column Values
Action WorkOrderMovementAction action wm.work_order_movement_action Merge
Split

Mapping 2

Property Property Type Db Column Db Column Type Db Column Values
Direction WorkOrderMovementDirection direction wm.work_order_movement_direction Target
Source

Mapping 3

Property Property Type Db Column Db Column Type Db Column Values
Result WorkOrderMovementResult result wm.work_order_movement_result Moved
Duplicate
FeedbackConstraint

Mapping 4

Property Property Type Db Column Db Column Type Db Column Values
WorkOrderMovementWorkOrderStatusBaseStatus WorkOrderStatusBaseStatus base_status wm.work_order_status_base_status AwaitingApproval
Approved
Completed
Closed
Cancelled

Queries

The list of example Work Order Task Movement queries can be interpreted using the following legend:

Legend Description
Primary Table Alias The alias for the wm.work_order_task_movement table in the query
Include References Include (true) or exclude (false) all lookup table joins in the query
Include Permissions Include (true) or exclude (false) the permission table join in the query to enforce or skip row-level security based on the permissions for the user

Query 1

Primary Table Alias Include References Include Permissions
_wotm False False
SELECT
    _wotm.created_by_user_id AS "CreatedByUserId",
    _wotm.created_on AS "CreatedOn",
    _wotm.permission_tree_id AS "PermissionTreeId",
    _wotm.work_order_task_movement_id AS "Id",
    _wotm.version AS "Version",
    _wotm.action AS "Action",
    _wotm.direction AS "Direction",
    _wotm.result AS "Result",
    _wotm.work_order_id AS "WorkOrderId",
    _wotm.work_order_movement_id AS "WorkOrderMovementId",
    _wotm.work_order_task_id AS "WorkOrderTaskId"
FROM
    wm.work_order_task_movement _wotm


Query 2

Primary Table Alias Include References Include Permissions
_wotm True False
SELECT
    _u.user_id AS "CreatedByUserId",
    _u.code AS "CreatedByUserCode",
    _u.full_name AS "CreatedByUserFullName",
    _wotm.created_on AS "CreatedOn",
    _pt.permission_tree_id AS "PermissionTreeId",
    _pt.code AS "PermissionTreeCode",
    _pt.description AS "PermissionTreeDescription",
    _wotm.work_order_task_movement_id AS "Id",
    _wotm.version AS "Version",
    _wotm.action AS "Action",
    _wotm.direction AS "Direction",
    _wotm.result AS "Result",
    _wo.work_order_id AS "WorkOrderId",
    _wo.code AS "WorkOrderCode",
    _wom.work_order_movement_id AS "WorkOrderMovementId",
    _wom.work_order_id AS "WorkOrderMovementWorkOrder",
    _wo1.work_order_id AS "WorkOrderMovementWorkOrderId",
    _wo1.code AS "WorkOrderMovementWorkOrderCode",
    _wo1.description AS "WorkOrderMovementWorkOrderDescription",
    _wo1.work_required AS "WorkOrderMovementWorkOrderWorkRequired",
    _wo1.required_by AS "WorkOrderMovementWorkOrderRequiredBy",
    _wo1.site_id AS "WorkOrderMovementWorkOrderSite",
    _s.site_id AS "WorkOrderMovementWorkOrderSiteId",
    _s.code AS "WorkOrderMovementWorkOrderSiteCode",
    _wo1.cost_centre_id AS "WorkOrderMovementWorkOrderCostCentre",
    _cc.cost_centre_id AS "WorkOrderMovementWorkOrderCostCentreId",
    _cc.code AS "WorkOrderMovementWorkOrderCostCentreCode",
    _wo1.general_ledger_id AS "WorkOrderMovementWorkOrderGeneralLedger",
    _gl.general_ledger_id AS "WorkOrderMovementWorkOrderGeneralLedgerId",
    _gl.code AS "WorkOrderMovementWorkOrderGeneralLedgerCode",
    _wo1.status_id AS "WorkOrderMovementWorkOrderStatus",
    _wos.work_order_status_id AS "WorkOrderMovementWorkOrderStatusId",
    _wos.code AS "WorkOrderMovementWorkOrderStatusCode",
    _wos.base_status AS "WorkOrderMovementWorkOrderStatusBaseStatus",
    _wot.work_order_task_id AS "WorkOrderTaskId",
    _wot.task_code AS "WorkOrderTaskTaskCode"
FROM
    wm.work_order_task_movement _wotm
    JOIN uam.user _u ON _wotm.created_by_user_id = _u.user_id
    JOIN uam.permission_tree _pt ON _wotm.permission_tree_id = _pt.permission_tree_id
    JOIN wm.work_order _wo ON _wotm.work_order_id = _wo.work_order_id
    JOIN wm.work_order_movement _wom ON _wotm.work_order_movement_id = _wom.work_order_movement_id
    JOIN wm.work_order _wo1 ON _wom.work_order_id = _wo1.work_order_id
    JOIN gen.site _s ON _wo1.site_id = _s.site_id
    LEFT JOIN fin.cost_centre _cc ON _wo1.cost_centre_id = _cc.cost_centre_id
    LEFT JOIN fin.general_ledger _gl ON _wo1.general_ledger_id = _gl.general_ledger_id
    JOIN wm.work_order_status _wos ON _wo1.status_id = _wos.work_order_status_id
    JOIN wm.work_order_task _wot ON _wotm.work_order_task_id = _wot.work_order_task_id


Query 3

Primary Table Alias Include References Include Permissions
_wotm False True
Parameter Name Data Type Value
@permission_user_id Bigint 500000000000
@permission_id Bigint 100120800
WITH permission_tree_ids AS
(
    SELECT DISTINCT unnest(psd.permission_tree_ids) AS permission_tree_id FROM uam.user_permission up JOIN uam.permission_set_data psd ON up.permission_set_id = psd.permission_set_id WHERE up.user_id = @permission_user_id AND up.permission_id = @permission_id
)
SELECT
    _wotm.created_by_user_id AS "CreatedByUserId",
    _wotm.created_on AS "CreatedOn",
    _wotm.permission_tree_id AS "PermissionTreeId",
    _wotm.work_order_task_movement_id AS "Id",
    _wotm.version AS "Version",
    _wotm.action AS "Action",
    _wotm.direction AS "Direction",
    _wotm.result AS "Result",
    _wotm.work_order_id AS "WorkOrderId",
    _wotm.work_order_movement_id AS "WorkOrderMovementId",
    _wotm.work_order_task_id AS "WorkOrderTaskId",
    _wotm.permission_tree_id AS "_wotm_permission_tree_id"
FROM
    wm.work_order_task_movement _wotm
    JOIN permission_tree_ids permission_join ON _wotm.permission_tree_id = permission_join.permission_tree_id


Query 4

Primary Table Alias Include References Include Permissions
_wotm True True
Parameter Name Data Type Value
@permission_user_id Bigint 500000000000
@permission_id Bigint 100120800
WITH permission_tree_ids AS
(
    SELECT DISTINCT unnest(psd.permission_tree_ids) AS permission_tree_id FROM uam.user_permission up JOIN uam.permission_set_data psd ON up.permission_set_id = psd.permission_set_id WHERE up.user_id = @permission_user_id AND up.permission_id = @permission_id
)
SELECT
    _u.user_id AS "CreatedByUserId",
    _u.code AS "CreatedByUserCode",
    _u.full_name AS "CreatedByUserFullName",
    _wotm.created_on AS "CreatedOn",
    _pt.permission_tree_id AS "PermissionTreeId",
    _pt.code AS "PermissionTreeCode",
    _pt.description AS "PermissionTreeDescription",
    _wotm.work_order_task_movement_id AS "Id",
    _wotm.version AS "Version",
    _wotm.action AS "Action",
    _wotm.direction AS "Direction",
    _wotm.result AS "Result",
    _wo.work_order_id AS "WorkOrderId",
    _wo.code AS "WorkOrderCode",
    _wom.work_order_movement_id AS "WorkOrderMovementId",
    _wom.work_order_id AS "WorkOrderMovementWorkOrder",
    _wo1.work_order_id AS "WorkOrderMovementWorkOrderId",
    _wo1.code AS "WorkOrderMovementWorkOrderCode",
    _wo1.description AS "WorkOrderMovementWorkOrderDescription",
    _wo1.work_required AS "WorkOrderMovementWorkOrderWorkRequired",
    _wo1.required_by AS "WorkOrderMovementWorkOrderRequiredBy",
    _wo1.site_id AS "WorkOrderMovementWorkOrderSite",
    _s.site_id AS "WorkOrderMovementWorkOrderSiteId",
    _s.code AS "WorkOrderMovementWorkOrderSiteCode",
    _wo1.cost_centre_id AS "WorkOrderMovementWorkOrderCostCentre",
    _cc.cost_centre_id AS "WorkOrderMovementWorkOrderCostCentreId",
    _cc.code AS "WorkOrderMovementWorkOrderCostCentreCode",
    _wo1.general_ledger_id AS "WorkOrderMovementWorkOrderGeneralLedger",
    _gl.general_ledger_id AS "WorkOrderMovementWorkOrderGeneralLedgerId",
    _gl.code AS "WorkOrderMovementWorkOrderGeneralLedgerCode",
    _wo1.status_id AS "WorkOrderMovementWorkOrderStatus",
    _wos.work_order_status_id AS "WorkOrderMovementWorkOrderStatusId",
    _wos.code AS "WorkOrderMovementWorkOrderStatusCode",
    _wos.base_status AS "WorkOrderMovementWorkOrderStatusBaseStatus",
    _wot.work_order_task_id AS "WorkOrderTaskId",
    _wot.task_code AS "WorkOrderTaskTaskCode",
    _wotm.permission_tree_id AS "_wotm_permission_tree_id",
    _u.permission_tree_id AS "_u_permission_tree_id",
    _wo.permission_tree_id AS "_wo_permission_tree_id",
    _wom.permission_tree_id AS "_wom_permission_tree_id",
    _wo1.permission_tree_id AS "_wo1_permission_tree_id",
    _s.permission_tree_id AS "_s_permission_tree_id",
    _cc.permission_tree_id AS "_cc_permission_tree_id",
    _gl.permission_tree_id AS "_gl_permission_tree_id",
    _wos.permission_tree_id AS "_wos_permission_tree_id",
    _wot.permission_tree_id AS "_wot_permission_tree_id"
FROM
    wm.work_order_task_movement _wotm
    JOIN permission_tree_ids permission_join ON _wotm.permission_tree_id = permission_join.permission_tree_id
    JOIN uam.user _u ON _wotm.created_by_user_id = _u.user_id
    JOIN uam.permission_tree _pt ON _wotm.permission_tree_id = _pt.permission_tree_id
    JOIN wm.work_order _wo ON _wotm.work_order_id = _wo.work_order_id
    JOIN wm.work_order_movement _wom ON _wotm.work_order_movement_id = _wom.work_order_movement_id
    JOIN wm.work_order _wo1 ON _wom.work_order_id = _wo1.work_order_id
    JOIN gen.site _s ON _wo1.site_id = _s.site_id
    LEFT JOIN fin.cost_centre _cc ON _wo1.cost_centre_id = _cc.cost_centre_id
    LEFT JOIN fin.general_ledger _gl ON _wo1.general_ledger_id = _gl.general_ledger_id
    JOIN wm.work_order_status _wos ON _wo1.status_id = _wos.work_order_status_id
    JOIN wm.work_order_task _wot ON _wotm.work_order_task_id = _wot.work_order_task_id