08 JanWarum haben Salesforce Record-Ids eine Länge von 15 und 18 Zeichen?

Vielleicht seid  Ihr auch schon einmal darüber gestolpert, dass Salesforce Datensätze mal 15 Zeichen lang sind, mal 18. Und hier spreche ich vom gleichen Datensatz, beispielsweise einem Account. Direkt im Link oder in einem Export von einem Report werden 15 Zeichen ausgegeben, nutzt man hingegen den DataLoader sind es 18. Was steckt also dahinter?

Salesforce-15

Der Grund weshalb ich diesen Post schreibe ist, dass ich Zeuge wurde wie ein neuer Admin eine Große Anzahl der vorhandenen 100.000 Account Daten unbrauchbar gemacht hatte indem ihm der Unterschied nicht klar war. Spätestens jetzt habe ich Eure Aufmerksamkeit! (Wir konnten die Daten übrigens retten, es gab ein Backup).

Was steckt also dahinter?

Die 15-stellige ID ist case sensitive, d.h. es ist ein Unterschied, ob eine ID 001i000000032b oder 001i000000032B lautet.
Das Problem entsteht in externen Programmen in denen Salesforce Daten verwendet werden. Excel beispielsweise unterscheidet nicht zwischen Groß- und Kleinbuchstaben, d.h. in einem VLOOKUP (SVERWEIS auf deutsch) sind beide Datensätze die gleichen! Und jetzt wisst Ihr auch schon, dass das sehr häßlich werden kann.

Aus diesem Grund gibt es weitere 3 Stellen, die von Salesforce am Ende hinzugefügt werden wenn Ihr die Daten exportiert. In meinem Beispiel wäre das dann beispielsweise: 001i000000032b43x und 001i000000032Bj4s. Das kann dann auch Excel nicht mehr verwechseln.

Ein gern genommener Anfängerfehler ist, Daten über einen Report zu exportieren und dann in Excel zu verarbeiten.
Das mag zwar bequem erscheinen, ist aber ein totales No-Go. Nutzt für externe Verarbeitung IMMER 18-stellige IDs, am einfachsten geht das über einen DataLoader (Original von Salesforce, Jitterbit DataLoader, dataloader.io oder andere).

Kann ich die 3 zusätzlichen Stellen auch selbst hinzufügen?

In Salesforce selbst sind die IDs 15-stellig gespeichert, das erspart Speicherplatz. Die 3 zusätzlichen Stellen werden bei Bedarf berechnet. Salesforce hat zu diesem Zweck die Formel CASESAFEID(Id) eingeführt. Falls Ihr im Netz auch über komplexe Algorithmen stolpert mit denen Ihr das berechnen könnt, so solltet Ihr wissen, dass die Funktion CASESAFEID(Id) erst in Spring’12 eingeführt wurde, vorher musste man sich mit einer sehr, sehr langen Formel helfen, die seitdem obsolet ist.

Und denkt immer daran: Wenn Ihr Daten in einem externen System verarbeitet, macht vorher ein Backup!

Wie geht Ihr mit den IDs um? Wir freuen uns über Rückmeldungen.

 

11 AugSalesforce 2-Faktor Authentifizierung abschalten – Gewusst wie und wann

Es ist mir wieder passiert: Vor kurzem habe ich meinen Arbeitgeber gewechselt und damit habe ich keinen Zugriff mehr auf meine alte Handynummer und Email-Adresse. Zudem nervt es mich sowieso immer wenn ich mich in reinen Developer-Editionen authentifizieren muss. In diesen Umgebungen hab ich nichts zu verheimlichen, da reicht mir auch eine reine Username und Passwort-Abfrage. Reichlich genervt habe ich die Funktion recherchiert wie man das umgehen kann, hier mein Blogpost dazu:

Gewusst wie

Die Funktion die 2-Faktor-Authentifizierung zu umgehen ist mit guter Absicht etwas im Administrationsmenü versteckt. Ausschalten kann man sie nicht, wohl aber umgehen!

Das Profil bietet die Möglichkeit eine sog. “Login IP Range” einzutragen. Alle Logins die von innerhalb dieses IP Bereiches kommen werden dann ohne weitere Authentifizierungen durchgeroutet, Ihr könnt Euch beim Benutzen von externen Tools zudem die Eingabe des Security Tokens sparen.

Seid Euch bitte bewusst was Ihr hier tut, das hat in einer Produktions-Umgebung meiner Meinung nach nichts verloren. Das ist etwas für Developer-Orgs, nicht mal für Sandboxen.

Login IP Range

 

Gewusst Wann

Eine Möglichkeit die 2-Faktor-Authentifizierung für alle Profile abzuschalten gibt es nicht, sollte es auch nicht geben.

Denn in einer Produktivumgebung werdet Ihr eventuell den umgekehrten Weg gehen wollen:

Hier könnt Ihr die Funktion so nutzen wie sie gedacht ist, nämlich die User gänzlich auszusperren wenn sie nicht innerhalb des IP Bereiches auf die Salesforce-Umgebung zugreifen. Unter anderem ist das für den Einsatz mit VPN gedacht. Hier geht der User über eine VPN-Verbindung ins Netz und hat damit einen festgelegten IP-Bereich.

 

Ich jedenfalls lasse alle Produktiv-Umgebungen unberührt, füge aber in jede Test und Demo-Umgebung seit ein paar Tagen den Bereich von 0.0.0.0 bis 255.255.255.255 – und bin damit auf der sicheren Seite, denn das sind alle IP Adressen, die es weltweit gibt.

 

01 OctAppExchange 5-5-5: Phonedeck im Kurzreview

Noch immer bin ich ganz begeistert von Phonedeck, einer Lösung mit der man mit wenigen Klicks und mit Hilfe seines iPhones oder Androids überall ein CallCenter aufbauen kann.

Technisch toll umgesetzt entfällt die Integration von einer Telefonanlage, was bei vielen Kunden oft der Grund ist eine tiefe Integration der Telefone dann doch nicht mit Salesforce zu machen.

Weil wir so begeistert waren, geht das Video diesmal 25 Minuten, jede davon ist sehenswert!

Ihr findet die Lösung auch auf der AppExchange, dem Salesforce Marktplatz für Business-Anwendungen und -Erweiterungen.

Ganz herzlichen Dank an Alexander Roth für die Vorbereitung und die Demo. Wir wünschen dem Phonedeck-Team als junges Startup viel Erfolg mit der Lösung, unter anderem als Aussteller auf der diesjährigen Dreamforce in San Francisco!

10 MarAppExchange 5-5-5: VisualLifecycle im Kurzreview

In unserer Videocast Serie haben wir heute Levin Beicht zu Gast.

vllogo

Levin und sein Team von Apracor haben sich darauf spezialisiert Prozesse in Salesforce zu modellieren ohne dass man dazu Code schreiben muss.

Herausgekommen ist nach einem Jahr intensiver Arbeit ein beeindruckendes Tool, welches es in 2 Varianten auf der AppExchange zum Installieren in Eure Salesforce-Umgebung gibt.

Schon mit der kostenlosen easy Variante könnte Ihr Prozesse modellieren und Euch einen guten Überblick über das Tool verschaffen. Die VisualLifecycle professional bietet Euch noch mehr Funktionalitäten zum fairen Preis wie wir finden.

Ich selbst war von der Demo begeistert, weil sie

  • die Möglichkeit bietet einzelne Prozesse und Prozess-Schritte so gestalten, dass neue Mitarbeiter weniger Fehler machen können und
  • man als Arbeitgeber die Freiheitsgrade der Mitarbeiter einschränken kann.
  • Darüber hinaus reduziert sich die Einlernzeit neuer Mitarbeiter.

Aber das Beste: Die Prozesse lassen sich mit wenigen Klicks auch wieder ändern. Aus meiner Sicht DER VORTEIL des Tool, das ohne Code auskommt.

Wie immer können und wollen wir mit unserem Video kein Produkttraining ersetzen, wer mehr Interesse hat, sollte sich unverbindlich mit Levin Beicht in Kontakt setzen.

Doch seht selbst:

04 MarAppExchange 5-5-5: quote 2.0 im Kurzreview

Heute haben wir uns dem Thema Angebotserstellung angenommen.

In Salesforce kann man Angebote erstellen. Die factory42 GmbH hat sich seit Jahren der Prozessoptimierung im Angebotswesen verschrieben und hat mit dem Quote 2.0 eine App auf dem AppExchange, die durchgängig mit 5 von 5 Sternen bewertet wurde.

Ben Kastl hat und in (nicht ganz) 5 Minuten die App vorgestellt und uns gezeigt wie man mit der Lösung schnell und effizient per Drag & Drop Angebote erstellt und auch die Angebot verwaltet.

Aus meiner Sicht eignet sich die App vor allem für folgende Anwendungsfälle:

Hohes Angebotsvolumen
Ihr habt eine hohe Zeitersparnis durch komfortable und schnelle Produktselektion, Verwendung von Vorlagen und Bausteinen etc.
Anspruchsvolles Corporate Design
Ihr könnt die Angebote  beliebig nach Eurem Corporate Design anpassen
Inhaltlich umfangreiche Angebote
Der Einsatz von Angebotsvorlagen, Angebotsbausteinen, Grafiken, Unterschriften etc. macht Euch das Leben deutlich einfacher bei umfangreichen Angeboten
Kalkulatorisch anspruchsvolle Angebote
Rabatte auf Produkt-/Summenebene, Auf-/Abschlagskalkulation, Produkt-, Rabatt- und Preisgruppen, mehrstufiger Vertrieb etc. könnt Ihr mit dem Tool konfigurieren, was ein echter Mehrwert ist und Euer Excel ersetzt!

Jeder, der viele Angebote erstellt – und dabei nicht unbedingt auf einen komplexen Produktkonfigurator zurückgreifen muss, sollte sich die App mal näher anschauen, bzw. mit Ben Kontakt aufnehmen.

Los geht’s mit dem Review:

Disclaimer: die factory42 GmbH ist Arbeitgeber von Tobias, er ist selbst aber nicht an der Produktentwicklung beteiligt.

Update: Inzwischen wird quote 2.0 von der appero GmbH vertrieben und weiterentwickelt.

27 FebAppExchange 5-5-5: Connect for Xing im Kurzreview

AppExchange 5-5-5

Ab heute präsentieren wir Euch ein neues Format: Auf dem Salesforce Marktplatz www.appexchange.com gibt es inzwischen mehr als 2000 Business-Applikationen. Da fällt es teilweise schwer den Überblick zu behalten und das Installieren und Testen von Apps ist zeitaufwendig.

Daher haben wir einige Hersteller angefragt, ob sie uns nicht

  • 5 Minuten Ihre Firma vorstellen
  • 5 Minuten die App zeigen
  • 5 Minuten für Fragen zur Verfügung stehen.

Die Premiere hat heute die App “Connect for Xing” und wird uns von Dirk Steuernagel vorgestellt.

Die ersten Sekunden gibt es nur ein schwarzes Bild.

Wir waren begeistert von den Use Cases und der einfachen Integration von Xing in Salesforce und freuen uns über Euer Feedback.

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.

02 DecSalesforce Integration für Arme

Das Thema wie Daten nach Salesforce hineinkommen und wieder exportiert werden können ist ein Thema, das jeden (aber auch wirklich jeden) vor dem Kauf brennend interessiert, daher möchte ich diesem Dauerbrenner einen Blogpost widmen.

Um es vorwegzunehmen. In meinen 10 Jahren Berufserfahrung war es noch nie so leicht Daten zu laden oder zu entladen wie heute. Die Tools sind einfach klasse geworden.

Daten exportieren

Dafür gibt es eine Funktion im Setup, die es Euch erlaubt alle (!) Daten per Knopfdruck und in Form von csv (Comma Separated Files) zu exportieren. Das beinhaltet auch die Dateien (Powerpoint, Excel etc.), die Ihr im Laufe der Zeit hochgeladen habt. Und ja, Ihr erhaltet auch die Information wie die Daten und Dateien zueinander gehören mit exportiert.

Ich empfehle Euch nachdrücklich die Erinnerungsmail zu nutzen, die Ihr wöchentlich (bei Professional Edition monatlich) erhalten könnt um Eure Daten lokal als Backup zu speichern. Man weiss ja nie, ob mal jemand aus Versehen alte Daten gelöscht hat. Ihr habt aktuell kein Backup bei Euch lokal gespeichert? Los geht!

Daten laden

Wenige Daten könnte Ihr bequem mit Bordmitteln laden – mit dem sogenannten Wizard – der im Setup eingebaut ist (Datenverwaltung -> Datenimport-Assistent). Allein dieses Tool hätte einen eigenen Post verdient, weil es seit der Überarbeitung im letzten Release deutlich hübscher und besser bedienbar geworden ist.

Probiert den Datenimport-Assistenten einfach mal selbst aus, wenn Ihr beispielsweise Accounts laden möchtet.

Und hier mein ultimativer TIP: Speichert Eure Excel Sheets mit OPEN OFFICE als csv-Dateien ab. Microsoft Excel eignet sich nicht zum Arbeiten mit csv-Dateien (das macht statt Kommas Semikolons – weshalb, das muss uns Microsoft noch erklären).

Sobald die Aufgabe etwas kniffliger wird, werdet Ihr mit dem Assistenten an Grenzen kommen. Vor allem dann, wenn Ihr die selbe Aufgabe mehrfach machen wollt, wenn ihr beispielsweise einen Fehler gemacht hattet und die Ursprungsdatei anpassen wollt oder mehr Daten laden wollt etc. werdet Ihr für ein etwas schlaueres Tool dankbar sein.

Für diesen Fall gibt es eine grosse Anzahl an KOSTENLOSEN Tools, die Ihr nutzen könnt.

Den Salesforce DataLoader gibt es als Bordmittel, dataloader.io, den Jitterbit Data Loader, Skyvva und viele mehr könnt ihr ebenfalls nutzen. Sie alle nutzen die Salesforce APIs und unterstützen Euch dabei Eurer Aufgabe Herr zu werden.

Ich persönlich arbeite inzwischen nur noch mit Jitterbit und dataloader.io und zwar aus folgenden Gründen:

Bei beiden Tools kann ich mehrere Logins hinterlegen (z.B. Testumgebung, Produktionsumgebung) und sämtliche Vorgänge (Laden von Daten, Exportieren etc.) speichern. Gerade wenn ich regelmässig Vorgänge durchführen muss, dann ist das super weil es mir Zeit erspart.

Mein Favorit ist seit Neuestem dataloader.io

Letzte Woche hatte ich einen Kunden am Telefon, der mit dem Assistenten an Grenzen gekommen war und dem ich dataloader.io empfohlen habe – und er war begeistert, so wie ich.

Seit dem letzten Release von dataloader.io lassen sich Laden- und Entlade-Vorgänge mit regelmässiger Abfolge automatisieren – und das kostenlos! Ihr legt beispielsweise fest, dass jeden Tag um 7:00 Uhr ein CSV-Sheet die Umsatzdaten Eurer Accounts aktualisiert – und das geschieht nach der einmaligen Konfiguration von allein.

Ihr könnt als Quelle FTP, Dropbox oder box.com angeben. Den Ausspruch “Integration für Arme” habe ich von meinem Kunden gerne an dieser Stelle übernommen.

Ihr habt somit die Möglichkeit Daten aus Bestandssystemen, Buchungssystemen, was auch immer nach Salesforce automatisch einmal am Tag hochzuladen. Oder alternativ Daten einmal täglich nach FTP, Dropbox oder box.com zu exportieren und von dort weiterzuverarbeiten.

Überlegt selbst welche Möglichkeiten Euch damit zur Verfügung stehen! Und das kostenlos! Bisher haben alle Tool-Hersteller Geld für Prozess-Automatisierungen genommen, dataloader.io hat das jetzt durchbrochen. Und macht damit natürlich Werbung für deren richtig, richtig schicke Integrations-Plattform Mulesoft, die Euch mit dem CloudHub noch ganz andere Möglichkeiten bietet (Ein Blick auf deren Portfolio lohnt sich!)

Natürlich bekommt Ihr keine Garantie für den Betrieb von dataloader.io und es ersetzt kein hochwertiges Integrationswerkzeug. Aber für eine Integration von unkritischen Daten auf dennoch sicherem Weg ist es unschlagbar gut.

Probiert es aus, Ihr werdet begeistert sein wie leicht sich Daten laden, mappen und exportieren lassen.

Wieso ist das bei Salesforce so einfach?

Ganz einfach, weil Salesforce konsequent auf offene Standards setzt und APIs für den Zugriff auf das System zur Verfügung stellt. Die anderen Hersteller verfolgen da den Weg die User in ihrer eigenen Welt einzusperren. Es ist oft ein Drama auf die Daten bei anderen Systemen zuzugreifen, von einfachen Wegen die Daten zu verarbeiten ganz zu schweigen. Für Ihr Integrations- bzw. Migrations-Projekt benötigt Ihr jetzt “nur noch” Zugriff auf die anderen Systeme, dann geht’s los.

Für Migrations-Projekte macht Euch schon heute an die Analyse darüber wie Ihr die Daten aus Euren Altsystem entladen bekommt. Diese Frage werdet Ihr Euch künftig nicht mehr stellen brauchen. Sie wurde in nur wenigen Zeilen hier beantwortet.

Welche Tools nutzt Ihr, was sind Eure Erfahrungen, welche Use Cases könnt Ihr Euch vorstellen mit den Möglichkeiten von dataloader.io?

02 DecSalesforce Video – Firmenprofil & Trust.com

Gerne wird vergessen die Grundeinstellungen einer Salesforce-Umgebung richtig zu wählen, was Euch dann später Ärger bereiten kann.

In diesem Video diskutieren Tobias und ich ausgiebig die Salesforce Firmeneinstellungen

  • Firmeninformationen
  • Geschäftsjahr
  • Geschäftzeiten
  • Feiertage
  • Spracheinstellungen
  • Trust.com

Aus unserer Sicht ein Muss für jeden Admin diese Themen zu verstehen, damit die Umgebung sauber aufgesetzt ist.

Erst danach sollte mit dem Bauen von Feldern, Layouts und Prozessen beginnen.

Viel Spass beim Zuschauen. Wir freuen uns auf Euer Feedback!