Mehr Cleverness und viel API First. Beim Salesforce Summer '17 Release ist für alle was dabei. Schwerpunkte liegen auf KI, Citizen Data Science und Development mit Wave und Flow in Lightning. Service Cloud mit Communities können mit besseren Integrationsmöglichkeiten in den eigenen Webauftritt und anderer Neuerungen einen blitzgescheiten 360° Blick auf den Kunden bieten.//
Wichtig
- LockerService kommt - wenn man möchte. In salomonischer Weisheit hat sich Salesforce gegen breaking changes entschieden und erzwingt den Locker Service erst für Components API Version 40 (= Summer '17) und höher. Alle Components, die heute noch funktionieren, werden das mit Summer '17 auch tun, sofern niemand die API Version umstellt. Was wohl das Security Review Team dazu gesagt hat? Zum Umdenken gehört auch, Content Secruity Policy vom Locker Service zu trennen und in einzelnen Updates verfügbar zu machen. (Lightning)
- CSRF Visualforce Critical Update verschoben - wenn es denn mal kommt: Automatisch bekommen VF Seiten den CSFR Schutz nicht. Kritisch wird es, wenn es eine Administratorin einschaltet (und das sollte sie). Deswegen Codebase checken! (alle Editionen)
- External Object Nutzer und vor allem Entwickler aufgepaßt: Salesforce führt demnächt temporäre IDs für diese Objekte ein, wenn nach ihnen gesucht wird oder eine SOSL Query läuft. D.h. bestehender Code, der sich auf persistente IDs verläßt, muß angepaßt werden.
- Änderungen im Verhalten von Permission Sets bei Deployment und Retrieval. Bitte genau lesen:
In API version 39.0 and earlier, if your permission set contains the Manage Roles user permission and you deploy a metadata file without this user permission, Manage Roles remains enabled. However, in API version 40.0 and later, if you deploy a metadata file without this user permission, Manage Roles is disabled in the target org.
Dazu im Metadata Bereich der Release Notes:
PermissionSet
In API version 40.0 and later, when you retrieve permission set metadata, all content exposed in Metadata API for the permission sets are retrieved. Retrieval includes Apex associated with the permission set, CRUD, and so on. In API version 39.0 and earlier, retrieving permission set metadata returns only the app and system permissions assigned to the permission set. Junction metadata (such as Apex, CRUD) are included only if the metadata for the related component is also included in the package definition. Quelle
Lieblings-Features
- Byebye, URL Hacks II: Standard-Werte für Felder mittels Formeln festlegen. Anders als die Doku suggeriert, geht das mit allen Custom Fields. Aber eben nur Custom Fields. Für Account Name wünsch ich mir das auch und überhaupt alle Felder.
- Massive Updates für Flows (alle Editionen mit Einschränkung, teils Pilot) - unbedingt anschauen. Gerade in Lightning werden Flows auf Grund dieser Features eine solide Alternative zu selbst programmierten Components. Statt 20 Screens nur 5, dafür mit dynamisch eingeblendeten Feldern (Pilot) - je nachdem, was im Kontext für den Nutzer gerade wichtig ist. Das Weiterleiten in Lightning nach Abschluß des Flows soll auch funktionieren. Flows können auf Lightning Pages eingebettet als auch via Buttons und Tab aufgerufen werden.
Ein etwas faden Beigeschmack hinterlassen die dynmaisch eingeblendeten Felder. Denn das Feature wird für alle Editionen ausgegeben, aber für den Nutzer ersichtliche Auswirkungen hat das nur in Lightning. In Classic wird man es z.B. mittels API selbst nachbauen müssen. - Metadata via Apex verändern und das ohne Metadata API, sondern direkt aus Apex heraus. Das läßt mein ISV Herz höher schlagen: Nach Installation/Upgrade eines Paketes können Custom Metadata Types und Layouts angepaßt werden. (Nur für Bereitsteller von verwalteten Paketen)
- Ein schnelleres Setup wird vor allem die Adoption von Lightning unter Powernutzern und Admins steigern. Wichtiger Schritt, fand ich, und hab mich draufgestürzt: Gleichmal ein Objekt mit vielen Feldern genomen Strg+F gedrückt, mein
TestField__c
gesucht - Fehlanzeige. Es werden nicht alle Felder auf die Page geladen ohne Scrollen. Da hab ich mich geärgert. Kurz darauf über mich selbst, weil ich die viel bessere Lösung in Lightning übersehen hatte: Nach dem Feld einfach in der Searchbar suchen. Und überhaupt: Viel mehr Searchbar verwenden in Lightning! - Shortcuts in Lightning (Lightning)
- Nervtötend und endlich abgeschafft - das Ausbleiben von Email Alert, wenn ein Update z.B. einen Workflow auslöst (alle Editionen)
- Lightning Console wurde in Spring '17 eingeführt, mit dem jetzigen Update kommt die dazugehörige API in Developer Preview dazu, um mit Tabs, Subtabs und der Utility Bar umzugehen. Die API bindet sich nahtlos in Lightning Components ein und ist handhabbarer als die Classic Variante. Das tröstet aber nur bedingt darüber hinweg, daß wir Entwickler nun zwei Varianten untertützen müssen. (Lightning, Developer Preview)
- Auch erst im Pilot: Deine App im Chatter Publisher. Besonders für Communities eine tolle Sache. Wie wäre es mit einer Sentiment-App, die aus dem Post-Text Stimmung lesen kann? (Wenige Sätze dazu hier)
Eine ziemlich runde Sache, denn Apex Chatter Methoden und Updates der Chatter API werden zeitgleich ausgeliefert. (Lightning) - Es freut mich sehr, wohin die Reise mit Salesforce Communities geht. Die Grenze zwischen Das ist mein CRM und Das ist meine Website wird mit Summer '17 weiter aufgeweicht. Bisher waren SAML und OpenID möglich - nicht unbedingt etwas, was jedes Unternehmen eingeführt hat. Entwickler können jetzt ein stinknormales Login Formular auf die eigene Website packen, das sich um alles kümmert, was die Verbindung zu Salesforce (genauer einer Community) anbelangt. seamless and easily configured - sehr gut! Bei der Gelegenheit: Diese URL-Paths (/id/, /idp/, /saml/) bitte nicht mehr verwenden.
- Community 360 macht auch einen sehr guten ersten Eindruck. (Lightning)
Community 360 shows support agents working in the console whether customers have already looked at pertinent documentation, and if they’ve already filed any cases before calling support. Agents don’t suggest articles customers have already accessed, or open duplicate cases.
- Wave Einstein Discovery ermöglicht ganz verschiedene Datenquellen hochzuladen und von Einstein hinsichtlich Mustern, Einsichten und was der AI sonst noch einfällt, analysieren zu lassen. Technical Architect Daniel Stange gibt an, bei seinen Tests 10.000 Datensätzen sinnvolle Ergebnisse erhalten zu haben. (Wave)
- Und nochmal Einstein, weil er so cool ist: Die Vision API ist jetzt GA. Hierzu sei auch die Apex Einstein Wrapper API von Senior Developer Evangelist René Winkelmeyer wärmstens empfohlen.
Entwickler
- Mehr erreichen mit Custom Metadata Types, die nun auch LongText, Validierungen und Field Relations unterstützen. Damit dürften sich Testdaten bequem ablegen lassen und mäandernde Custom Setting Gewächshäuser eindlich eindampfen. Mit den Fieldrelations z.B. ergeben sich Abhänigkeiten, so daß ein Admin nicht mal schnell ein Feld löschen kann, das noch gebraucht wird - was Custom Settings nicht verhindern konnten.
- Wer noch mit Custom Settings arbeitet, der kann jetzt einfach einsehen, wie viel Speicherplatz bereits verbraucht wurde.
- BigObjects sind jetzt packageable (alle Editionen)
- REST API Update bringt u.a. auch Platform Event Definitions mit (alle Editionen)
- Nett:
SOSL
kann jetzt gefundene Felder hervorheben:
FIND {Salesforce West} IN ALL FIELDS RETURNING Building__c(Name, BuildingDescription__c) WITH HIGHLIGHT
- Viele Updates für die Chatter API - gebt Unternehmenskommunikation nicht ohne guten Grund aus der Hand. Alles, was in Chatter passiert, kann in Berichten verwendet werden (Wer spricht gerade worueber? Welche Chatter Group hat die meisten @mentions?) - mit Hipchat, Slack und Co geht das nicht ohne weiteres. (alle Editionen)
- Session Based Permission Set - die Release Notes erklären's am besten:
[L]et’s say your org has a custom object called Conference Room. A mobile app called Conference Room Sync has read and update access to the object. You can create a permission set to allow updates to the object only when the Conference Room Sync connected mobile app generates the user’s session
- Der Optimzer kennzeichnet Apex und Visualforce, das veraltete API Versionen nutzt. Bei API Updates bitte vorsichtig vorgehen. (alle Editionen)
Admins
- Es kostet ein bißchen, aber Salesforce Shield entwickelt sich zunehmends zu einer durchdachten Lösung für stark regulierte und sicherheitsabhängige Unternehmen. Die Goodies wie z.B. Wave Dashboard über Lightning User-Adoption oder mal schnell herausfinden, wer richtig große Reports runterlädt, sind auch nicht zu verachten. (gegen Aufpreis)
- In dem Zusammenhang gehört auch: Formel Felder funktionieren ab Summer '17 mit verschlüßelten Feldern. Selbiges gilt auch für den Process Builder und Flow. (alle Editionen)
- Single-Sign-On kennen wir ja schon. Nun kommt auch Single-Sign-Out in die Beta. (alle Editionen)
- Health Check ermöglichte bisher zu prüfen, was Salesforce selbst für eine Org gesund hält. Hinzukommen nun benutzerdefinierte Regeln, die eingebaut werden können. Bob Buzzard hat das hier bereits vorgestellt.
- Wesentlich besserer Picklist Support für External Objects im Kontext von Salesforce Connect
- Innerhalb eines Flows einem Benutzer ein temporäres Permission Set zuweisen (alle Editionen)
- Mit ein paar Klicks: Picklist zu wesentlich besseren Global Value Sets befördern (alle Editionen)
- Kluge Verbesserungen in Sachen Error Handling beim Hochladen von CSV mittels Data Import
- Die Mouse-Over Effekte in Lightning, zum Beispiel, wenn man auf einem Kontakt über den Account fährt, können abgeschaltet werden. Das ist wichtig für alle, die mit einem ScreenReader arbeiten.
- Custom Richtext Felder sind wieder da. QuillJS kümmert sich dahinter um alles.
- Salesforce rät, auf die neuen Lightning Syncs umzusteigen. Gerade für Outlook bedeutet das, keine manuellen Software Updates mehr. Und überhaupt den Funktionsumfang, den wir schon länger haben wollten. Auch die Updates zur Gmail Integration in Lightning sind stark.
- Kannte ich noch gar nicht: Extended Salesforce Mail Merge - Inhalte aus Salesfore in Microsoft Word unterbringen und versenden. (Classic)
- neue Routing Optionen für Omni Channel. Aus Entwickler Sicht läßt sich leider OmniChannel nur über Umwege ein wenig anpassen. Ich hoffe, das ändert sich bald. Vom Konzept bin ich ziemlich überzeugt.
- Wofür man früher eher auf die AppExchange ging, bringt Salesfore immer stärker selbst mit: Updates zum Finden, Vermeiden und Beseitigen von doppelten Datensätzen. (alle Editionen)
Nutzer
- Approvals im vollen Umfang für alle Editionen - Salesforce1 eingeschlossen!
- Content und Libraries werden getrennt. Es gibt mehr Platz für Dateien, mehr Downstream für Dateien, mehr Vorschau, mehr von allem in Sachen Files - auch Dateiordner. Sogar an den Transfer von Dateien bei Lead Konvertierung wurde gedacht. (Lightning, teils Classic)
- Chatter Streams wurden noch mal nach User Rückmeldung weiter verbessert. Streams erlauben effiziente Ordnung in Chatter. (Lightning)
- Wesentlich bessere Übersicht im Case Feed (Lightning)
- Vereinheitlich in der Namensgebung: Alle Actions, die Emails versenden, heißen nun schlicht 'Email'
- So ist die neue Lightning Service Console aufgebaut:
- Ich hatte mich gefragt, wann wohl auch die Sales Console in
Lightning ankommt, jetzt da es die Service Console gibt. Dann hab ich Einstein High Velocity Salescloud entdeckt. Ein Out-of-the-Box Vertriebs-Callcenter. - Die Opportunity Stage History nun auch in Lightning
- Ditto für Hierarchien: Account und Contact Hierarchien