Key | Value |
---|---|
Table | DS05 Schedule Logic |
Severity | CRITICAL |
Unique ID | 9050282 |
Summary | Is this task missing in the schedule? |
Error message | task_ID not found in DS04 task_ID list (by schedule_type and subproject_id). |
The Data Integrity and Quality (DIQ) check titled "Task Missing in Schedule" is designed to verify the consistency of task data across the DS04 Schedule and DS05 Schedule Logic tables.
This check is performed to ensure that every task listed in the DS05 Schedule Logic table is also present in the DS04 Schedule table by both schedule type and subproject ID.
If a task is found in the DS05 Schedule Logic table that does not have a corresponding entry in the DS04 Schedule table for the same schedule type and subproject id, this DIQ check will flag an error.
This could occur if a task is added to DS05 or removed from DS04, or if there is a typographical error in the task_ID or subproject_id fields.
To resolve this issue, ensure that all tasks are consistently listed across both tables and that the task_IDs are correctly entered.
This test is being performed to ensure that all tasks are properly accounted for in the DS05 Schedule Logic table. The test is checking if a specific task, identified by its task_ID, schedule_type, and subproject_id, is present in the DS04 task_ID list. If the task is not found, it means that there is a task missing in the schedule, which could lead to significant issues in project management, such as missed deadlines or resource allocation problems.
The severity of this check is marked as 'CRITICAL', which is the highest level of severity. This means that if this issue is not resolved, the data cannot be reviewed or used for further analysis. It is crucial to maintain data integrity and quality in project management data, as any discrepancies or missing information can lead to inaccurate project planning and execution. Therefore, this check is of utmost importance to ensure that all tasks are included in the schedule and no task is overlooked.
CREATE FUNCTION [dbo].[fnDIQ_DS05_Logic_IsTaskMissingInDS04] (
@upload_id int = 0
)
RETURNS TABLE
AS RETURN
(
with Tasks as (
SELECT schedule_type, task_ID, ISNULL(subproject_ID,'') SubP
FROM DS04_schedule
WHERE upload_ID = @upload_ID
)
SELECT
L.*
FROM
DS05_schedule_logic L LEFT OUTER JOIN Tasks T ON L.schedule_type = T.schedule_type
AND L.task_ID = T.task_ID
AND ISNULL(L.subproject_ID,'') = ISNULL(T.SubP,'')
WHERE
upload_id = @upload_ID
AND T.task_ID IS NULL
)
Date | Description of Changes |
---|---|
2024-04-30 | Logic adjusted to account for the addition of 'subproject_ID' field. |