Aufgaben ausblenden wenn privat

8. Januar 2016 01:20

Hallo Community,

ich bin noch CRM Anfänger und habe folgendes Problem. Bei unserem Unternehmen mit CRM 2013 wollen wir Aufgaben als privat markieren so dass wirklich nur der Besitzer diese sehen kann. Dazu wollte ich ein neues Feld new_isprivate (ja nein) hinzufügen. Dann will ich mittels webressource + jscript und onLoad() Event alle Aufgaben, die als privat markiert sind und der aufrufende client nicht der Besitzer ist, ausblenden. Irgendwie so:

Code:
forEach(task in tasks){
    if(task.owner != Xrm.context.guid) task.visibility(false)
}


in CRM 2015 scheint das ja irgendwie zu gehen (hier mal für Kontakte):

Code:
var allGridRowData = [];
var rows = Xrm.Page.getControl("Contacts").getGrid().getRows();
rows.forEach(function (row, i) {
 allGridRowData.push(row.getData());
});



DOM wollte ich nicht manipulieren...

Mfg Oppemaniac

Re: Aufgaben ausblenden wenn privat

11. Januar 2016 14:16

Hallo Carsten,

erst einmal herzlich willkommen in unserem Forum :-)

Aktivitäten, und dazu gehören die Aufgaben, sind etwas komplizierter im CRM als Entitäten wie z.B. Kontakte.

Allerdings sollte dein Code für CRM 2015 auch in CRM 2013 funktionieren. Ich kann aktuell nicht erkennen, das dies nicht gehen sollte.
Welche Fehlermeldung erhältst du denn, wenn du diesen Code in CRM 2013 ausführst?

Alternativ würde ich mir an deiner Stelle einmal das Sicherheitskonzept vom CRM genauer ansehen. Deine Anforderung würde ich über das Sicherheitskonzept lösen wenn es für alle Aktivitäten gilt. Wenn dies nur für Aufgaben gelten soll, dann musst du programmieren.
Wobei ich kein JavaScript verwenden würde sondern ein PlugIn. Der Nachteil über JavaScript ist, das die Daten zum Benutzer übertragen werden und nur im Browser ausgeblendet sind. Drückt der Benutzer F12, sieht er auch die ausgeblendeten Elemente.
Auch wirst du Schwierigkeiten bekommen, die Aufgaben wirklich überall per JavaScript in allen Kombinationen auszublenden.