Zum Hauptinhalt springen
Version: 4.1 (2026 H2)

Organisationssynchronisation

Überblick

Organisationseinheiten können in primedocs manuell oder automatisiert angelegt werden. Über den OrgSync können Organisationseinheiten mit einem Fremdsystem synchronisiert werden.

Da Organisationseinheiten hierarchisch organisiert sind, ist ein 1:1-Abgleich wie bei den Benutzern nicht möglich. Als Synchronisationsquelle dient daher eine XML-Datei, welche mit den Daten vom Fremdsystem ausgefüllt werden muss.

Folgende Daten können hierbei zu primedocs synchronisiert werden:

  • Titel der Organisationseinheit
  • Zu setzende Felder der Organisationseinheit
  • Berechtigungen der Organisationseinheit
  • Organisationseinheitenhierachie

Die Organisationseinheit wird über ein eindeutiges Merkmal in primedocs erkannt, d.h. das Fremdsystem gibt einen "Schlüssel/Technisches Merkmal" vor und beim Import der Organisationseinheiten wird dieses Merkmal in primedocs gespeichert.

Die generierte Datei muss danach über den JobHost, z.B. als zeitgesteuerte Aufgabe, in die primedocs Datasource importiert werden.


XML Struktur

Folgende XML Struktur wird benötigt:

<primedocsOrgSync>
<OrganizationUnits>
<OrganizationUnit>
<!-- "Technisches Merkmal" - muss eindeutig sein und dient als "Identifikationsmerkmal" für die Synchronisierung -->
<Identifier></Identifier>
<!-- Titel der Organisationseinheit -->
<Title></Title>
<!-- Felder, die zu primedocs synchronisiert werden -->
<Fields>
<!--
Id="Org.Street": verweist auf eine Felddefinition (FieldId) in primedocs
Value="Sample Street 123": der tatsächliche Wert, der für diese Organisationseinheit und dieses Feld gespeichert wird
-->
<Field Id="Org.Street" Value="Sample Street 123" />
<!--
Für die Mehrsprachigkeit ist die exakte LCID erforderlich. Ohne sie wird der Wert in der Standardsprache gespeichert.
Es sind nur bestimmte LCIDs erlaubt, d. h. "LCID 9" für "Englisch" ist nicht zulässig, sondern muss exakt auf "en-US" oder "en-GB" zeigen.
Siehe: https://docs.microsoft.com/en-us/openspecs/office_standards/ms-oe376/6c085406-a698-4e12-9d4d-c3b0ee3dbc4a
-->
<Field Id="Org.City" Value="München" />
<Field Id="Org.City" Value="Munich" LCID="2057" />
<!-- Leere Werte werden ebenfalls unterstützt -->
<Field Id="Org.POBox" Value="" />
</Fields>
<Permissions>
<!--
primedocs benötigt die SID und den Typ (Benutzer oder Gruppe) und speichert diese Information in der Datenbank.
Um diese Information zu laden, wird ein "Lookup" durchgeführt.

Die Syntax erlaubt z. B. die Suche nach SID, sAMAccountName oder UPN im Active Directory.
Der gesuchte Wert muss genau einem Objekt im Verzeichnis entsprechen.
LookupKey muss gesetzt sein, sonst findet der OrgSync den Zielbenutzer nicht. Die gültigen Felder richten sich nach dem Principal Connector:
d. h. im Active Directory: objectSid, sAMAccountName, theoretisch aber auch weitere AD-Felder usw.
in Microsoft Entra ID: "id" - aktuell sind keine weiteren Felder möglich
-->
<SecurityAccount LookupValue="local\username" LookupKey="sAMAccountName" />
</Permissions>
<OrganizationUnits>
<!-- "Unter-Organisationseinheit", gleiches Schema -->
<OrganizationUnit></OrganizationUnit>
</OrganizationUnits>
</OrganizationUnit>
</OrganizationUnits>
</primedocsOrgSync>

Berechtigungssynchronisation

Permissions, welche in dieser Datei angeben sind, überschreiben die Permissions der gefundenen Organisationseinheit in der primedocs Datasource, d.h. im primedocsOrgSync müssen alle gewünschten Permissions vorhanden sein. Manuell gesetzte Berechtigungen werden überschrieben.


Feldsynchronisation

Fields hingegen werden mit den bestehenden Feldern in der Organisationseinheit zusammengeführt, d.h. nicht angegebene Felder werden nicht geleert, sondern so belassen.

Über den primedocsOrgSync können auch keine Felder gelöscht werden, sodass der Vererbungsmechanismus von primedocs greift. Dies muss manuell geschehen.


Synchronisationsverhalten

Alle Organisationseinheiten, die unterhalb des SyncRoot existieren, aber nicht im Import enthalten sind, werden gelöscht.

Profile, die an den gelöschten Organisationseinheiten hängen, werden auf die FallBackOu umgehängt.

Organisationseinheiten, die in der Datenbank ausserhalb des SyncRoot sind aber im Import als Kind des SyncRoot angegeben sind, werden entsprechend dem Import verschoben.


JobHost

Analog dem UserSync kann beim OrgSync eine DataSourceId angegeben werden - ist diese nicht angegeben, wird der OrgSync auf allen Datenbanken ausgeführt. Ohne angegebene DataSourceId ergibt sich der minimale Aufruf ...\primedocs.JobHost.exe OrgSync -i "P:\ath\To\InputFile.xml" mit dem Pfad zur XML-Datei als einzigen zwingenden Parameter.

Parameter

Für den OrgSync stehen die folgenden Aufrufparameter zur Verfügung:

ShortLongRequiredDefaultBeschreibung
-i--InputFiletrueString.EmptyPfad zur Importdatei
-d--DataSourceIdfalsenullGUID der Zieldatenbank auf dem Server. Wenn weggelassen wird der OrgSync auf allen konfigurierten Datenbanken ausgeführt.
-r--SyncRootfalseString.EmptyRoot-OE für den Syncprozess (siehe Ermittlung des SyncRoot unten).
-c--CreateNewRootAsSiblingfalsefalseWenn true, wird der Import als Geschwister zum bestehenden Root angelegt. Wenn false, wird der Import als Kind des bestehenden Root angelegt. Kommt nur zum Tragen, wenn der angegebene SyncRoot (-r) nicht existiert, oder kein SyncRoot ermittelt werden kann.
-f--FallBackOufalseString.EmptyOE, an welche Profile von gelöschten OEs angehängt werden. Wenn diese nicht angegeben ist, wird die bestehende Root-OE verwendet. Bei mehreren bestehenden Root-OEs in der Datenbank wird die erste gefundene verwendet.

Ermittlung des SyncRoot

Der SyncRoot (-r) bestimmt, unter welchen Knoten der Inhalt aus dem InputFile (-i) synchronisiert wird. Der Inhalt wird in den OE-Baum unterhalb des SyncRoot synchronisiert; ist der SyncRoot selbst Teil des Imports, wird er ebenfalls synchronisiert. Als Wert kann eine GUID (primedocs-Id der OE) oder der Identifier aus dem Import-File angegeben werden.

Ist kein SyncRoot angegeben, wird anhand des Import-Files versucht, einen zu ermitteln:

  • Die Top-Level-OE des Import-Files wird anhand des Identifiers in der Datenbank gesucht.
  • Bei mehreren Top-Level-OEs im Import-File wird in der Datenbank nach einer OE gesucht, die mindestens eine der Top-Level-OEs aus dem Import-File als Kind hat.

Kann kein SyncRoot ermittelt werden, wird der Import standardmässig als Kind(er) des bestehenden Root angelegt (bei mehreren bestehenden Root-OEs in der Datenbank wird die erste gefundene verwendet). Mit der Option -c lässt sich stattdessen festlegen, dass der Import als neue Root-OE(s) als Geschwister zum bestehenden Root angelegt wird.


Einschränkungen

Der OrgSync hat das Ziel, eine vorgegebene Organisationsstruktur in primedocs zu importieren und synchron zu halten.

Ist bereits im primedocs eine Organisationsstruktur vorhanden, gibt es aktuell keine automatische Möglichkeit diese mit einem Fremdsystem zu synchronisieren.
Ebenfalls gibt es keine Oberfläche, um die Identifier für die Synchronisierung zu setzen oder zu ändern.

hinweis

Bei Fragen wenden Sie sich an unseren Support - wir helfen Ihnen gern weiter.