workflow.Workflow_ProcedureDependency_T_redundant - V

type: V ( view ), modify_date: 2021-08-17 20:29:03

RepoObject_guid: A1BCD983-91FA-EB11-850E-A81E8446D5B0

Description

Examples

Entity Diagram

entity-workflow.workflow_proceduredependency_t_redundant

Columns

Table 1. Columns of workflow.Workflow_ProcedureDependency_T_redundant - V
PK Column Name Data Type NULL? ID

uniqueidentifier

NOT NULL

uniqueidentifier

NOT NULL

bigint

NULL

int

NOT NULL

Foreign Key Diagram

entity_1_1_fk-workflow.workflow_proceduredependency_t_redundant

References

Object Reference Diagram - 1 1

entity_1_1_objectref-workflow.workflow_proceduredependency_t_redundant

Object Reference Diagram - Referenced - 30 0

entity_30_0_objectref-workflow.workflow_proceduredependency_t_redundant

Object Reference Diagram - Referencing - 0 30

entity_0_30_objectref-workflow.workflow_proceduredependency_t_redundant

Column Reference Diagram

entity_1_1_colref-workflow.workflow_proceduredependency_t_redundant

Indexes

idx_Workflow_ProcedureDependency_T_redundant__1

idx_Workflow_ProcedureDependency_T_redundant__2

idx_Workflow_ProcedureDependency_T_redundant__3

idx_Workflow_ProcedureDependency_T_redundant__4

idx_Workflow_ProcedureDependency_T_redundant__5

Column Details

_

referenced_Procedure_RepoObject_guid

referenced_Procedure_RepoObject_guid

uniqueidentifier

NOT NULL

referencing_Procedure_RepoObject_guid

referencing_Procedure_RepoObject_guid

uniqueidentifier

NOT NULL

RownrPerReferencing

RownrPerReferencing

bigint

NULL

Workflow_id

Workflow_id

int

NOT NULL

sql_modules_definition

workflow.Workflow_ProcedureDependency_T_redundant - V script
/*
possible redundant references

we must not remove all of them at the same time, because some of them recognize each other as redundant. +
Therefore marking as `is_redundant` happens one by one for always only one reference by referencing_Procedure_RepoObject_guid

*/
CREATE View workflow.Workflow_ProcedureDependency_T_redundant
As
Select
    T1.Workflow_id
  , T1.referenced_Procedure_RepoObject_guid
  , T1.referencing_Procedure_RepoObject_guid
  , RownrPerReferencing = Row_Number () Over ( Partition By
                                                   T1.Workflow_id
                                                 , T1.referencing_Procedure_RepoObject_guid
                                               Order By
                                                   T1.referenced_Procedure_RepoObject_guid
                                             )
From
    workflow.Workflow_ProcedureDependency_T_active     As T1
    Inner Join
        workflow.Workflow_ProcedureDependency_T_active As T2
            On
            T1.Workflow_id                               = T2.Workflow_id
            And T1.referenced_Procedure_RepoObject_guid  = T2.referenced_Procedure_RepoObject_guid

    Inner Join
        workflow.Workflow_ProcedureDependency_T_active As T3
            On
            T1.Workflow_id                               = T3.Workflow_id
            And T1.referencing_Procedure_RepoObject_guid = T3.referencing_Procedure_RepoObject_guid
            And T2.referencing_Procedure_RepoObject_guid = T3.referenced_Procedure_RepoObject_guid
Where
    T1.is_redundant     = 0
    And T2.is_redundant = 0
    And T3.is_redundant = 0