So migrieren Sie Salesforce-Dateien ohne Skripte

So migrieren Sie Salesforce-Dateien ohne Skripte

Ana NetoProducts and Solutions Leave a Comment

Es gibt zahlreiche Gründe, Dateien aus Salesforce auszulagern: Speicherkosten, Compliance-Anforderungen oder einfach die Konsolidierung der Orte, an denen Ihr Unternehmen seine Inhalte aufbewahrt.

Seltsamerweise gibt es auch gute Gründe, den umgekehrten Weg zu gehen und Dateien aus einem älteren CRM-System oder einem anderen Geschäftssystem im Rahmen einer CRM-Migration, einer Systemkonsolidierung oder eines Integrationsprojekts in Salesforce zu übertragen.

Beides ist ohne Skripte machbar, einschließlich der schwierigen Aufgabe, Dateien mit den richtigen Datensätzen zu verknüpfen, Duplikate zu vermeiden und die Metadaten zu erhalten.

Möchten Sie Salesforce-Dateien ohne Programmieraufwand in das Format SharePoint migrieren?

Erfahren Sie, wie Document Extractor gebaut für die Salesforce Plattform kann Migrationen reibungslos gestalten

#1 – Wissen, was man transportiert

Vor der eigentlichen Umstellung müssen Sie eine kurze Bestandsaufnahme Ihrer aktuellen Organisationsstruktur durchführen.

  • Speicherbericht erstellen: Gehe zu Einstellungen > Daten > Speicherauslastung um das genaue Bruttovolumen Ihres Dateispeichers im Vergleich zum Datenspeicher zu ermitteln.
  • Das Schema abfragen: Führen Sie eine kurze SOQL-Abfrage durch oder verwenden Sie ein API-Tool, um die Anzahl der Zeilen in den Tabellen „Attachment“, „Document“ und „ContentVersion“ zu ermitteln.
  • Große Dateien identifizieren: Identifizieren Sie Ihre Ausreißer. Werden Sie viele große Dateien übertragen? Legen Sie einen Schwellenwert fest (z. B. 25 MB) und filtern Sie nach Dateien, die diesen Schwellenwert überschreiten, da diese später Ihre Stapelgrößen und Netzwerkdurchsatzgrenzen bestimmen werden.

Beachten Sie bitte, dass bei einer älteren Salesforce-Organisation Dokumente möglicherweise sowohl im Speicher der Classic-Ära als auch im modernen Lightning-Speicher verteilt sind.

Klassisch (alt):

  • Anhänge: Dateien, die im alten Modell direkt an Datensätze angehängt waren
  • Anmerkungen: Anmerkungen im Klartext zu Datensätzen
  • Dokumentenordner: die alte Registerkarte „Dokumente“

Blitz (modern):

  • Dateien (ContentDocument / ContentVersion): der aktuelle Standard
  • Erweiterte Notizen: das mit Lightning eingeführte, umfangreichere Notizformat
  • Bibliotheken (Salesforce CRM-Inhalte): gemeinsame Datei-Repositorys

Die eigentliche Herausforderung bei einer Salesforce-Dateimigration besteht nicht darin, die reinen Binärdaten (die PDFs, Bilder oder Protokolle) zu verschieben, sondern darin, den relationalen Kontext zu bewahren.

Im Classic-Modell ist ein Anhang ein einfaches untergeordnetes Element eines übergeordneten Datensatzes. In Lightning enthält „ContentVersion“ die eigentlichen Dateidaten, die zu einem „ContentDocument“ zusammengefasst werden, das dann mithilfe eines Verbindungsobjekts namens „ContentDocumentLink“ den Datensätzen zugeordnet wird.

Wenn Sie Dateien aus Salesforce verschieben, müssen Sie diese Beziehungen extrahieren, damit Ihr Zielsystem (wie SharePoint, Azure Blob oder ein AWS S3-Bucket) weiß, welche Datei zu welchem Konto oder Fall gehört. Wenn Sie Dateien in das System übertragen, müssen Sie Ihre Altdaten dieser modernen, mehrschichtigen Lightning-Architektur zuordnen. Um dies ohne das Schreiben benutzerdefinierter Apex-Batches oder Python-Skripte zu bewerkstelligen, benötigen Sie ein Tool, das diese zugrunde liegenden API-Beziehungen von Haus aus versteht.

#2 Legen Sie Ihre Ausgangs- und Zielsprache fest

Wenn SharePoint Ihr Ziel ist: Document Extractor

Document Extractor wurde speziell für die Übertragung von Salesforce-Dateien zu und von SharePoint Online oder in lokalen Umgebungen entwickelt.

Es übernimmt die ganze mühsame Arbeit. Document Extractor überwacht Dokumente, die sich auf Salesforce-Objekte wie Konten, Kontakte, Leads, Verkaufschancen, Angebote, Verträge, Aufträge, Anlagen, E-Mail-Nachrichten und benutzerdefinierte Objekte beziehen, und erstellt die entsprechende Ordnerstruktur in SharePoint. Es berücksichtigt dabei alle erforderlichen Beziehungen, Sonderfälle und Verknüpfungen.

Ihre Nutzer merken davon überhaupt nichts. Nachdem eine Datei nach SharePoint verschoben wurde, bleibt an ihrer Stelle in Salesforce ein Verweis zurück. Hinter den Kulissen befinden sich möglicherweise bereits einige Dateien in SharePoint, während andere noch in Salesforce gespeichert sind; für die Benutzer bleibt die Nutzung von Salesforce jedoch unverändert. Das bedeutet, dass Sie die Migration schrittweise durchführen, die Ergebnisse dabei laufend überprüfen und eine riskante ’Big-Bang“-Umstellung vermeiden können.

Legen Sie ein Startdatum fest. Wenn Sie nicht alles auf einmal migrieren möchten, können Sie ein Datum festlegen und nur Dateien übertragen, die nach diesem Zeitpunkt erstellt wurden. Dies ist besonders für große Unternehmen nützlich, die die Migration schrittweise durchführen möchten.

Metadaten. Standard-Metadaten-Dateiattribute wie „Erstellt von“, „Eigentümer“, „Beschreibung“, „Version“ und „Geändert von“ werden direkt auf SharePoint abgebildet, ebenso wie alle benutzerdefinierten Felder, die im ContentVersion-Objekt definiert sind. Dadurch wird sichergestellt, dass Sie den vollständigen Dateiverlauf, die Compliance und den Benutzerkontext auch dann beibehalten, wenn Dateien das Salesforce-Ökosystem verlassen. Über die Dateiattribute hinaus ordnet Document Extractor Felder des übergeordneten Datensatzes (z. B. „Kontoname“) der entsprechenden SharePoint-Ordnerhierarchie zu.

Umfassende Berichterstattung zu Classic und Lightning. Anhänge, Notizen, Dokumentordner, Dateien, erweiterte Notizen und Bibliotheken werden alle unterstützt. Nichts bleibt auf der Strecke.

Unterstützte Salesforce-Editionen: Professional, Enterprise, Unlimited und Developer, sowohl in der Classic- als auch in der Lightning Experience. Zu den unterstützten SharePoint-Versionen gehören 2013, 2016, 2019 sowie SharePoint Online / Office 365.

Es gibt einen Kostenlose 15-tägige SaaS-Testversion, keine Kreditkarte erforderlich – das ist genug Zeit, um einen ordentlichen Proof-of-Concept durchzuführen. Wenn Sie Ihre Testversion selbst hosten möchten oder weitere Informationen benötigen, gibt es eine einfache Formular die Sie nutzen können, um Kontakt aufzunehmen.

Falls Ihr Zielwert nicht SharePoint lautet: Connect Bridge

Nicht jede Dateimigration beginnt oder endet mit SharePoint. Als Quelle oder Ziel Ihrer Dateien kann ein älteres CRM-System, ein lokaler Dateispeicher, ein proprietäres Dokumentenmanagementsystem oder etwas ganz anderes dienen. Genau hier kommt Connect Bridge kommt ins Spiel.

Connect Bridge ist eine Integrationsplattform, die Salesforce mit praktisch jeder Datenbank oder Geschäftsanwendung verbindet. Sie verwenden die Standard-SQL-Syntax für die Kommunikation mit Connect Bridge, und im Hintergrund übersetzt die Plattform SQL-Abfragen (SELECT, INSERT, UPDATE, DELETE) in die entsprechenden Salesforce-API-Aufrufe.

Dies ist besonders nützlich für:

  • Synchronisierung von Salesforce mit lokalen Datenbanken oder Altsystemen
  • Erstellung benutzerdefinierter Integrationen, bei denen das Ziel nicht SharePoint ist
  • Organisationen mit spezifischen Anforderungen hinsichtlich der Einhaltung von Vorschriften oder der Datenlokalisierung

In umgekehrter Richtung verarbeitet Connect Bridge jede externe Quelle, aus der Sie Dateien in Salesforce importieren möchten, und ist damit auch das richtige Werkzeug für Inbound-Migrationen.

So funktioniert die Preisgestaltung

Die Preisgestaltung für Document Extractor richtet sich nach der Anzahl der Salesforce-Benutzer und nicht nach dem Volumen oder der Größe der zu migrierenden Dateien. Bei Connect Bridge richtet sich die Preisgestaltung nach der Anzahl der Salesforce-Benutzer und der Anzahl der zu migrierenden Dateien.

Das spielt eine große Rolle, wenn Sie mit großen Dateimengen arbeiten: Tools, bei denen die Kosten pro GB oder pro Datei abgerechnet werden, können überraschend hohe Rechnungen verursachen, sobald die Dateigröße mehrere hundert Gigabyte erreicht.

Die nutzerbasierte Preisgestaltung ist unabhängig vom Datenvolumen vorhersehbar und bietet Ihnen die Flexibilität, die Migration schrittweise durchzuführen und Jobs bei Bedarf erneut auszuführen, ohne ständig auf die Kosten achten zu müssen.

Sollten Sie dennoch in Betracht ziehen, die Sache selbst in die Hand zu nehmen?

Wenn Sie mit Python vertraut sind, ist der Weg über die REST-API (beispielsweise das Abrufen von Daten aus ContentVersion und das Hochladen in Microsoft Graph) für eine einmalige Migration mittleren Umfangs eine praktikable Lösung. Allerdings sind damit erhebliche versteckte Kosten verbunden: Entwicklungsaufwand, die Bewältigung von Ratenbeschränkungen, Deduplizierungslogik für „ContentDocumentLink“, die Beibehaltung von Metadaten sowie Sonderfälle, die erst im Verlauf einer großen Migration zutage treten.

Für die meisten Unternehmen ist der Einsatz eines sofort einsatzbereiten Tools mit kostenloser Testphase, bewährter Erfolgsbilanz und nutzungsabhängiger Preisgestaltung der Weg mit dem geringsten Risiko. Der Weg über die Skriptierung ist dann sinnvoll, wenn Sie Anforderungen haben, die kein Standard-Tool erfüllen kann, oder wenn Sie über einen Entwickler verfügen, der tatsächlich über freie Kapazitäten verfügt, um das Projekt von Anfang bis Ende zu betreuen.

Erste Schritte

  • Migration zu SharePoint oder Import von SharePoint nach Salesforce? Document Extractor bietet eine 15-tägige kostenlose Testphase an, für die keine Kreditkarte erforderlich ist.
  • Gibt es noch andere Ausgangs- oder Zielsprachen? Connect Bridge bietet eine kostenlose Demo an.

und steht Ihnen für Fragen über die Kontaktformular jederzeit.


Über den Autor

Ana Neto

Durch Ana Neto, technischer Berater bei Connecting Software.

"Ich bin seit 1997 Software-Ingenieur, und seit kurzem schreibe ich gerne und halte öffentliche Vorträge. Haben Sie Fragen oder Kommentare zu diesem Artikel? Ich würde mich über Ihr Feedback freuen. Hinterlassen Sie unten einen Kommentar!"

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

For security, use of Google's reCAPTCHA service is required which is subject to the Google Privacy Policy and Terms of Use.