Beispiel für ListRelations-Objekt

Beschreibung:

Durchläuft alle Relationen der Kontakte-Ansicht und prüft, ob für diese Relationen der Papierkorb aktiviert wurde.

VBScript:

Dim oListRelations : Set oListRelations = cRM.CurrentProject.ViewConfigs.ItemByName("Kontakte").Relations

Dim nRelationCount : nRelationCount = oListRelations.Count

Dim nCounter : nCounter = 0

Dim oRelation

Dim sListCascadeOnDeleteViews : sListCascadeOnDeleteViews = ""

 

For nCounter = 1 To nRelationsCount

 

    Set oRelation = oListRelations.Item(nCounter)

 

    If (oRelation.CascadeOnDelete = True) Then

        If (nCounter = nRelationsCount) Then

            sListCascadeOnDeleteViews = sListCascadeOnDeleteViews & oRelation.Name

        Else

sListCascadeOnDeleteViews = sListCascadeOnDeleteViews & oRelation.Name & vbCrLf

        End If

       

    End If

 

    Set oRelation = Nothing

   

Next

 

Set oListRelations = Nothing

 

If (Len(sListCascadeOnDeleteViews) > 0) Then

Call cRM.DialogMessageBox("Für folgende Relation(en) wurde der kaskadierende Papierkorb aktiviert: " & vbCrLf &  sListCascadeOnDeleteViews, "ListRelations", vbOkOnly)

Else

Call cRM.DialogMessageBox("Derzeit wurde bei keiner Relation der kaskadierende Papierkorb aktiviert.", "ListRelations", vbOkOnly)

End If

C#-Script:

ListRelations relations = cRM.CurrentProject.ViewConfigs.ItemByName("Kontakte").Relations;

System.Collections.Generic.List<string> relationsWithCascadeOnDelete = new System.Collections.Generic.List<string>();

 

foreach (Relation relation in relations)

{

    if (relation.CascadeOnDelete == true)

    {

        relationsWithCascadeOnDelete.Add(relation.Alias);

    }

}

 

if (relationsWithCascadeOnDelete.Count > 0)

{

cRM.DialogMessageBox("Für folgende Relation(en) wurde der kaskadierende Papierkorb aktiviert: " + System.Environment.NewLine + string.Join(", ", relationsWithCascadeOnDelete.ToArray()), "ListRelations", 0);

}

TypeScript:

import {

    cRM,

    ListRelations,

    Relation,

    ViewConfig

} from "./sdk/combitCRM.SDK.WindowsClient.v13";

 

const viewConfig : ViewConfig = cRM.CurrentProject.ViewConfigs.ItemByName("Kontakte");

const listRelations : ListRelations = viewConfig.Relations;

const relationCount : number = listRelations.Count;

 

let cascadeOnDeleteViews : string[] = [];

 

for (let i = 1; i <= relationCount; i++) {

    const relation : Relation = listRelations.Item(i);

 

    if (relation.CascadeOnDelete === true) {

        cascadeOnDeleteViews.push(relation.Alias);

    }

 

    relation.Dispose();

}

 

listRelations.Dispose();

 

if (cascadeOnDeleteViews.length > 0) {

    cRM.DialogMessageBox(

`Für folgende Relation(en) wurde der kaskadierende Papierkorb aktiviert:\n${cascadeOnDeleteViews.join("\n")}`,

        "ListRelations",

        0

    );

} else {

    cRM.DialogMessageBox(

"Derzeit wurde bei keiner Relation der kaskadierende Papierkorb aktiviert.",

        "ListRelations",

        0

    );

}

 

viewConfig.Dispose();