reference.RepoObject_ReferenceTree_cyclic - V

type: V ( view ), modify_date: 2021-09-04 20:15:41

RepoObject_guid: 7DE72F09-C5FD-EB11-850F-A81E8446D5B0

Description

Examples

Entity Diagram

entity-reference.repoobject_referencetree_cyclic

Columns

Table 1. Columns of reference.RepoObject_ReferenceTree_cyclic - V
PK Column Name Data Type NULL? ID

int

NULL

int

NULL

nvarchar(261)

NULL

nvarchar(257)

NULL

uniqueidentifier

NOT NULL

char(2)

NULL

int

NULL

int

NULL

nvarchar(261)

NULL

nvarchar(257)

NULL

uniqueidentifier

NOT NULL

varchar(2)

NULL

uniqueidentifier

NOT NULL

Foreign Key Diagram

entity_1_1_fk-reference.repoobject_referencetree_cyclic

References

Object Reference Diagram - 1 1

entity_1_1_objectref-reference.repoobject_referencetree_cyclic

Object Reference Diagram - Referenced - 30 0

entity_30_0_objectref-reference.repoobject_referencetree_cyclic

Object Reference Diagram - Referencing - 0 30

entity_0_30_objectref-reference.repoobject_referencetree_cyclic

Column Reference Diagram

entity_1_1_colref-reference.repoobject_referencetree_cyclic

Indexes

idx_RepoObject_ReferenceTree_cyclic__1

idx_RepoObject_ReferenceTree_cyclic__2

Column Details

_

Referenced_Depth_0_30

Referenced_Depth_0_30

int

NULL

Referenced_Depth_30_0

Referenced_Depth_30_0

int

NULL

Referenced_fullname

Referenced_fullname

nvarchar(261)

NULL

Referenced_fullname2

Referenced_fullname2

nvarchar(257)

NULL

Referenced_guid

Referenced_guid

uniqueidentifier

NOT NULL

Referenced_type

Referenced_type

char(2)

NULL

Referencing_Depth_0_30

Referencing_Depth_0_30

int

NULL

Referencing_Depth_30_0

Referencing_Depth_30_0

int

NULL

Referencing_fullname

Referencing_fullname

nvarchar(261)

NULL

Referencing_fullname2

Referencing_fullname2

nvarchar(257)

NULL

Referencing_guid

Referencing_guid

uniqueidentifier

NOT NULL

Referencing_type

Referencing_type

varchar(2)

NULL

RepoObject_guid

RepoObject_guid

uniqueidentifier

NOT NULL

sql_modules_definition

reference.RepoObject_ReferenceTree_cyclic - V script
/*
cyclic references:

the same RepoObject_guid has the same references backward and forward: in _30_0 and in _0_30 +
this causes errors in PUML diagrams and in workflow generator

goals of this view:

* vizualisation in diagrams
* solving the issues in PUML reference diagrams and workflow generator
*/

CREATE View reference.RepoObject_ReferenceTree_cyclic
As
Select
    T1.RepoObject_guid
  , T1.Referenced_guid
  , Referenced_Depth_0_30  = T2.Referenced_Depth
  , Referenced_Depth_30_0  = T1.Referenced_Depth
  , T1.referenced_fullname
  , T1.referenced_fullname2
  , T1.referenced_type
  , T1.Referencing_guid
  , Referencing_Depth_0_30 = T2.Referencing_Depth
  , Referencing_Depth_30_0 = T1.Referencing_Depth
  , T1.referencing_fullname
  , T1.referencing_fullname2
  , T1.referencing_type
From
    reference.RepoObject_ReferenceTree     As T1
    Inner Join
        reference.RepoObject_ReferenceTree As T2
            On
            T1.RepoObject_guid       = T2.RepoObject_guid
            And T1.Referencing_guid  = T2.Referencing_guid
            And T1.Referenced_guid   = T2.Referenced_guid
            And T1.Referencing_Depth = 0
            And T2.Referenced_Depth  = 0