CloneMyCompany registrieren
1. Einführung
CloneMyCompany synchronisiert Business Central-Daten zwischen einem Quell-Tenant und einem Ziel-Tenant, indem es befüllte Tabellen erkennt, Datensätze in Blöcken überträgt, wiederaufnehmbare Aufträge und optionale Delta-Synchronisation unterstützt und den Fortschritt über eine Cockpit-Seite anzeigt.
2. Voraussetzungen und Rollen
- Business Central 21.0 oder höher sowie administrativer Zugriff auf beiden Tenants und eine Azure AD App-Registrierung für OAuth sind erforderlich, bevor Sie beginnen.
- Der Quell-Tenant (Sender) verfügt über die Daten, die Sie sichern möchten, während der Ziel-Tenant (Empfänger) die übertragenen Datensätze über die von der App veröffentlichten API-Endpunkte annimmt.
3. Bereiten Sie die Umgebung des Ziels (Empfängers) vor
- Installieren Sie die CloneMyCompany-App im Ziel-Tenant und weisen anschließend der Entry-Anwendung die notwendigen Berechtigungen zu.
4. Konfigurieren Sie die Quellumgebung (Sender)
- Installieren Sie die App im Quell-Tenant, öffnen Sie CloneMyCompany Setup und wählen Sie Verbindungsinformationen importieren, um das JSON zu laden, das Sie vom Empfänger exportiert haben. Die Aktion validiert das JSON-Format und füllt die Authentifizierungsfelder automatisch aus.
- Jedes Mal, wenn Sie die Mieter-URL oder die Anmeldedaten bearbeiten, löscht die Seite das zwischengespeicherte OAuth-Token, um sicherzustellen, dass die nächste Anfrage die aktualisierten Werte verwendet.
4.1 Feldreferenz für CloneMyCompany Setup
| Feld | Wie man sie füllt | Warum es wichtig ist |
|---|---|---|
| Ziel-Tenant-URL | Verwenden Sie die Basis-URL von Business Central bis (und einschließlich) des Umgebungsnamens, z. B. https://api.businesscentral.dynamics.com/v2.0/<tenantId>/<environmentName>. Wenn das importierte JSON mit /api/ endet, ersetzen Sie diesen Platzhalter durch den tatsächlichen Umgebungsnamen, bevor Sie speichern. | Die App fügt /api/v2.0/companies hinzu, wenn sie Unternehmen und /ODataV4/backupdata_ReceiveBackupData für die Datenübertragung abruft. Daher muss die Basis-URL auf das Stammverzeichnis der Umgebung zeigen und die Mieterkennung enthalten, die der OAuth-Handler für Token-Anfragen extrahiert. |
| Client ID / Geheimer Client-Schlüssel | Nehmen Sie beide Werte aus dem exportierten JSON und fügen Sie sie genau wie angegeben ein; das Geheimnis bleibt in der Benutzeroberfläche maskiert. | Sie werden für die OAuth-Token-Erfassung bei jedem API-Aufruf verwendet; ungültige Werte blockieren die Kommunikation mit dem Empfänger. |
| Zielmandant | Drücken Sie auf Refresh Companies, um die Liste vom Zielmieter zu laden, wählen Sie das gewünschte Unternehmen aus und lassen Sie die Seite das Feld ausfüllen. Die Auswahl speichert die eindeutige Unternehmens-ID, die von der API zurückgegeben wird, und nicht den Anzeigenamen, so dass Sie den Namen nicht manuell eingeben müssen. | Die Unternehmens-ID wird beim Senden der Daten an den OData-Endpunkt angehängt, damit der Empfänger die Datensätze im richtigen Unternehmenskontext speichert. |
| Quellmandant | Geben Sie den Namen des Business Central-Unternehmens ein, von dem aus Sie den Auftrag ausführen möchten. Verwenden Sie ihn als Erinnerung, um den Auftrag im Kontext dieses Unternehmens auszuführen oder zu planen. | Die Engine wird in der aktuellen Firma (oder der Firma, die im Eintrag in der Auftragswarteschlange festgelegt wurde) ausgeführt, ohne automatisch umzuschalten. Wenn Sie also das Feld mit Ihrer Arbeitsfirma abgleichen, vermeiden Sie Fehler, wenn Sie Backups ausführen oder planen. |
| Chunk Größe | Belassen Sie es bei der Voreinstellung 1000 Datensätze oder wählen Sie einen beliebigen Wert zwischen 10 und 10 000, je nach Leistungsbedarf. | Die Chunk-Größe steuert, wie viele Datensätze die Engine bei der Verarbeitung jeder Tabelle pro HTTP-Aufruf bündelt. |
| Delta Sync aktivieren | Aktivieren Sie diese Option, um unveränderte Datensätze bei zukünftigen Läufen zu überspringen; lassen Sie sie für vollständige Backups ausgeschaltet. | Wenn diese Funktion aktiviert ist, prüft die App das Sicherungsprotokoll auf den Zeitstempel der letzten Änderung jedes Datensatzes und überträgt nur neue oder aktualisierte Einträge erneut. |
Nachdem Sie die Felder ausgefüllt haben, verwenden Sie Verbindung prüfen, um zu bestätigen, dass die Anmeldeinformationen und die URL gültig sind; die Aktion ruft ein neues Token ab und meldet jeden Authentifizierungsfehler.
5. Zu übertragende Tabellen auswählen
Wählen Sie auf der Einrichtungsseite Tabellen auswählen, um die Tabellenauswahlliste zu öffnen. Von dort aus können Sie:
- Alle Tabellen mit Daten automatisch erkennen(Tabellen mit Daten erkennen).
- Schalten Sie die Einbeziehung um, passen Sie die Prioritäten an (niedrigere Nummern laufen zuerst) oder setzen Sie die Prioritäten auf das Standardprofil zurück.
- Wählen Sie schnell alle Tabellen aus oder heben Sie die Auswahl auf.
Die Liste verfolgt die Anzahl der Datensätze und der übertragenen Datensätze pro Tabelle, um Ihnen die Planung großer Migrationen zu erleichtern.
6. Backup durchführen
- Starten Sie eine On-Demand-Übertragung mit Backup jetzt starten; die Aktion wird bestätigt, bevor die Codeeinheit für die Datenübertragung aufgerufen wird.
- Die Backup-Codeeinheit validiert die Registrierung, initialisiert die Konfiguration und geht jede ausgewählte Tabelle durch, verarbeitet die Datensätze in Stücken und markiert die Konfiguration als abgeschlossen, wenn sie fertig ist.
- Für die manuelle Überwachung oder um einen unterbrochenen Auftrag wieder aufzunehmen, öffnen Sie den Teil CloneMyCompany Cockpit und verwenden Sie dort Start/Resume Backup.
7. Planen Sie wiederkehrende Läufe
Verwenden Sie CloneMyCompany planen auf der Setup-Karte, um tägliche, wöchentliche oder monatliche Wiederholungen zu definieren. Die Seite für die Zeitplanung überprüft Ihre Eingaben, schreibt die Wiederholung in die Konfiguration zurück und erstellt den entsprechenden Eintrag in der Jobwarteschlange. Sie können den Zeitplan von derselben Seite aus aktualisieren oder abbrechen.
Der Job Queue Manager durchläuft die geplanten Konfigurationen und löst für jede StartBackupJob aus, wobei das Ergebnis der Laufzeit protokolliert wird, damit Sie die automatisierten Läufe überprüfen können.
8. Fortschritte überwachen und Protokolle führen
- Das Cockpit zeigt den Gesamtstatus, den prozentualen Fortschritt, die geschätzte verbleibende Zeit und den Zeitstempel der letzten abgeschlossenen Sicherung an. Eingebettete Teile zeigen laufende oder fehlgeschlagene Protokolleinträge und detaillierte Tabellenstatistiken an.
- Bereinigen Sie regelmäßig historische Protokolleinträge über Protokolleinträge bereinigen (mit vordefinierten Aufbewahrungsoptionen) oder Sicherungsprotokoll löschen, wenn Sie das Protokoll vollständig zurücksetzen müssen.
- Die Bereinigungsaktion wird an
CleanupBackupLogdelegiert, das nur abgeschlossene Einträge aufbewahrt, die neuer sind als der gewählte Aufbewahrungszeitraum.
9. Delta Sync und inkrementelles Verhalten
Wenn die Delta-Synchronisierung aktiviert ist, prüft ShouldTransferRecord das Sicherungsprotokoll auf den Zeitstempel der letzten Änderung jedes Datensatzes und überspringt Datensätze, die bereits ohne Änderungen übertragen wurden, wodurch der wiederholte Datenverkehr reduziert wird.
Auch bei deaktiviertem Delta laufen die Übertragungen entsprechend der von Ihnen eingestellten Chunk-Größe in Chunks ab, so dass große Tabellen effizient verarbeitet werden.
10. FAQ
Wie muss die URL des Zielmieters aufgebaut sein?
Verwenden Sie die Basis-URL der Business Central-Umgebung (Mandant + Umgebung) ohne zusätzliche API-Segmente, zum Beispiel https://api.businesscentral.dynamics.com/v2.0/<tenantId>/<environmentName>. Die Einrichtungsseite verkettet diese Basis mit /api/v2.0/companies, wenn Sie Unternehmen aktualisieren, und mit /ODataV4/backupdata_ReceiveBackupData?company=<id> bei Übertragungen, und der OAuth-Handler extrahiert die Mandantenkennung aus derselben Zeichenfolge, um Zugriffstoken anzufordern.
Erwartet „Zielunternehmen“ den Firmennamen oder die ID?
Die Aktion Unternehmen aktualisieren ruft die Business Central API auf, zeigt die Unternehmensnamen an und speichert die GUID (ID) des ausgewählten Unternehmens in der Konfiguration. Überlassen Sie die Auswahl der Aktion, damit die gespeicherte ID mit dem übereinstimmt, was die APIs erwarten. Die manuelle Eingabe eines Namens funktioniert nicht mit dem OData-Endpunkt.
Was soll ich unter „Quellunternehmen“ eingeben?
Geben Sie den Namen des Business Central-Unternehmens ein, das Sie sichern möchten (z.B. das Unternehmen, bei dem Sie derzeit angemeldet sind). Das Feld dokumentiert Ihre Absicht; die Backup-Engine selbst läuft im aktuellen Unternehmenskontext (oder in dem Unternehmen, das dem Eintrag in der Jobwarteschlange zugewiesen ist) und wechselt nicht automatisch. Wenn Sie dieses Feld korrekt halten, können Sie Aufträge im richtigen Unternehmen planen und ausführen.
11. Tipps zur Fehlerbehebung
- Authentifizierungsprobleme – Verwenden Sie Verbindung prüfen, um die Anmeldeinformationen sofort zu testen. Die Aktion meldet Token-Fehler, so dass Sie die Client-ID, das Geheimnis oder die URL korrigieren können.
- Aktualisierungsfehler bei Unternehmen – Vergewissern Sie sich, dass die Mandanten-URL, die Client-ID und das Geheimnis ausgefüllt sind, bevor Sie auf Unternehmen aktualisieren drücken. Die Seite zeigt HTTP-Statuscodes an, wenn die API-Anfrage fehlschlägt, damit Sie die URL oder die Anmeldeinformationen anpassen können.
- Protokollwachstum – Verwenden Sie die Protokollbereinigungsaktionen regelmäßig, um alte abgeschlossene Einträge zu bereinigen und das Cockpit reaktionsfähig zu halten.
12. Schnellreferenz
- Receiver: App installieren → Receiver Setup Wizard ausführen → Verbindung JSON exportieren.
- Sender: JSON importieren → Verbindungsfelder überprüfen → Unternehmen aktualisieren → Chunk-Größe/Delta-Synchronisation anpassen → Tabellen auswählen → Backup ausführen oder planen.
- Überwachen Sie: Verwenden Sie das Cockpit für den Status, bereinigen Sie die Protokolle nach Bedarf.