Yearly Archives: toommorel2014

22 FebSalesforce Freigaberegeln mit APEX

In einem vergangenen Blogpost habe ich zusammengestellt wie man sich in Salesforce die Freigaberegeln definieren kann und habe darauf viele Rückfragen bezüglich APEX bekommen, daher will ich diesem Thema mal hier näher auf den Grund gehen:

Wie funktionieren die Freigaben im Detail – und wie kann man auf die Regeln per APEX zugreifen bzw. diese erstellen?

Das Prinzip ist so einfach wie genial. Um das zu verstehen müssen wir einen kurzen (sehr kurzen!) Ausflug in die Datenbank von Salesforce machen:

Für jedes Objekt für das die Unternehmensweiten Standardeinstellungen NICHT “öffentlicher Lese-/Schreibzugriff” ist, wird eine weiteres Objekt angelegt in dem die Freigaben abgelegt werden. Über die Admin-Bedienoberfläche ist das aber nicht sichtbar. Um darauf zuzugreifen bedient man sich Admin-Tool (z.B. Eclipse, Develpper Konsole, SoqlXplorer etc.) und findet dort das entsprechende Objekt.

Ich habe für Euch die Account-Sicherheitseinstellungen auf privat gesetzt und EINE einzige Freigaberegel erstellt und Euch mit dem SoqlXplorer einen Screenshot gemacht:

AccountSharing

 

Was dann in der Datenbank abgelegt wird ist nicht etwa die Regel selbst, sondern es wird für jeden (!) Account für den eine Freigaberegel erstellt wurde diese in die Sharing-Tabelle eingetragen. In diesem Beispiel wurde also aus einer Regel 12 Einträge.

Das ist auch der Grund weshalb man immer die Meldung bekommt, dass die Regeln “berechnet” werden und das etwas dauern kann nach dem Speichern. Denn Salesforce übersetzt die von Euch erstellten Freigaberegeln auf die Accounts und trägt diese dann in die Tabelle ein. Bei riesigen Datenmengen und entsprechend vielen Usern kann das schon mal richtig viel werden und entsprechend lange dauern.

So, und wie greift man jetzt auf die Tabelle per APEX zu? Ganz einfach: Ihr habt die Chance selbst dort Einträge vorzunehmen bzw. diese auch wieder zu löschen. In der Praxis sieht das dann so aus, dass man (bleiben wir beim Beispiel Account) bei jedem Speichern/Erstellen/Löschen einen Trigger startet, der die Sharing-Regeln in der Tabelle überarbeitet bzw. einträgt.

Ihr legt dort fest welcher User oder welche Gruppe (Vorsicht, das sind keine Chatter-Gruppen, sondern öffentliche Gruppen!) welchen Zugriff auf den Datensatz bekommt.

Mein Tip war und bleibt: Man kommt fast immer mit den Standard-Regeln aus. Erst wenn diese zu 100% ausgenutzt worden sind und Ihr Freigaben braucht, die man einfach nicht anders machen kann, solltet Ihr die APEX-Regeln nutzen.

Was ist Eure Best-Practice?

09 JanSalesforce Release Notes für Spring’14 sind verfügbar

Seit heute sind die Release Notes für das kommende Spring’14 Release verfügbar:

https://help.salesforce.com/help/pdfs/en/salesforce_spring14_release_notes.pdf

Stand heute sind es bereits 325 Seiten voller Neuigkeiten. In der Vergangenheit wurden die Release Notes meistens noch etwas erweitert mit den Wochen. Schaut also öfter mal vorbei was es Neues gibt.

Meine Highlights

Meine Highlights nach einem ersten drüberlesen:

– Salesforce Files (Früher bekannt unter Chatter Files) ist nun für alle Kunden verfügbar. Damit kann man Dokumente zwischen dem Rechner und Salesforce spielend leicht synchronisieren, ähnlich wie das box oder dropbox anbieten.

– Es gibt ein neues Standard-Objekt: Orders. Zeitgleich gibt es auch eine API, um Orders (Bestellungen) automatisch zu erfassen.

– Die Outlook-Integration hat eine weitere Ergänzung erfahren: Ab sofort kann man Kundenvorgänge mit einem Mausklick aus einer Mail erstellen.

– Die Service Konsole unterstützt jetzt Multi-Monitor-Support und man kann leichter Anhänge per Drag&Drop an die Kundenkommunikation anhängen. Zusätzlich ist es jetzt auch möglich in Kundenemails Bilder direkt in den Text einzufügen, was bisher nur über Umwege ging ist jetzt im Standard verfügbar.

– Ein Schmankerl für Power-User ist, dass man Topics nun auch direkt  Objekten hinzufügen kann und in Listenansichten nach diesen Topics sortieren und filtern kann. Zusammen mit dem neuen Skill-Management, das für die User als Pilot im neuen Release eingeführt wird kann man sich also künftig je nach Topic einer Opportunity die richtigen Spezialisten vorschlagen lassen innerhalb der Firma.

Was sind Eure Highlights?

Das neue Release ist in Kürze in den Sandboxen verfügbar und Anfang Februar 2014 dann in allen Produktionsumgebungen.