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();