PIM
Es wird das Zusatzmodul “PIM System” benötigt
Die PIM-Schnittstelle ermöglicht den Export von Produktdaten aus dem Multiflex ERP-System in ein externes PIM-System (Product Information Management) und Import von Assets nach Multiflex (Tabelle Bilder).
Die Konfiguration erfolgt im Multilflex Grundlagenmanager und im WpfInterfaces.
Im Multiflex Grundlagenmanager unter dem Punkt “PIM” werden die Basiseinstellungen für die PIM Anbindung getroffen.
Im WpfInterfaces erfolgt die Konfiguration der Schnittstelle.
Multiflex Grundlagenmanager

Name | Typ | Werte |
PIM-System | DropDown | Multiflex (Default) |
Basis URL | String | Angabe der Basis-URL, unter welcher die REST-Services erreichbar sind |
API-Key | String | Authentifizierungstoken für die REST-Services des PIM-Systems |
Where-Bedingung | String | Angabe einer „where-Bedingung“ – es werden nur jene Artikel an das PIM übertragen, welche dieser Bedingung entsprechen. Beispiel: |
Wenn PimCore aktiviert wird, wird die Infomeldung „DB Update ausführen“ angezeigt.
Im Anschluss muss dass Multiflex DB Update ausgeführt werden, welches die benötigten Trigger aktiviert.
WpfInterfaces
Hauptfunktionen
Profile verwalten: Es können verschiedene Exportprofile angelegt, bearbeitet, dupliziert, gelöscht, importiert und exportiert werden. Ein Profil definiert, welche Daten und Felder exportiert werden.
Mappings bearbeiten: Für jedes Profil können die Zuordnungen (Mappings) zwischen ERP-Datenbankfeldern und PIM-Feldern angepasst werden.
Export durchführen: Einzelne Artikel oder alle Artikel können exportiert werden. Der Export erfolgt als JSON-Datei oder direkt per Schnittstelle.
Statusberichte: Nach jedem Export wird ein Statusbericht erstellt. Bei Fehlern kann eine Benachrichtigung per E-Mail erfolgen.
Dateiformate und Pfade: Die Schnittstelle unterstützt die Konfiguration von Dateiformaten (z.B. Datumsformat), UNC-Pfaden und Basis-URLs für die Ablage und den Zugriff auf exportierte Daten.
Bedienung
Profil auswählen oder anlegen:
Wählen Sie ein bestehendes Exportprofil aus oder legen Sie ein neues Profil an. Profile können auch aus einer Datei importiert oder als Datei exportiert werden.Mappings konfigurieren:
Passen Sie die Feldzuordnungen an, um festzulegen, welche ERP-Daten in das PIM-System übertragen werden.Export starten:
Einzelartikel: Geben Sie die Artikelnummer ein und starten Sie den Export.
Gesamtexport: Starten Sie den Export für alle Artikel.
Der Export kann automatisch beim Start der Schnittstelle erfolgen (Autostart).
XML<Pim> <!-- ===================== --> <!-- Database Configuration --> <!-- ===================== --> <DB>DB</DB> <!-- Example: ML, PROD, TEST --> <USER>SYSADM</USER> <!-- Database user --> <PASSWORD>SYSADM</PASSWORD> <!-- Database password --> <!-- ===================== --> <!-- General Settings --> <!-- ===================== --> <Loglevel>Detail</Loglevel> <!-- Options: None | Error | Info | Detail --> <MaxParallelism>4</MaxParallelism> <!-- Number of concurrent tasks --> <BatchSize>100</BatchSize> <!-- Number of records processed per batch --> <ProfileInx>1</ProfileInx> <!-- Profile ID / configuration index --> <DateTimeFormat>dd.MM.yyyy HH:mm:ss</DateTimeFormat> <!-- Date/time formatting --> <BaseUncPath>\\SERVER\Share\PIM</BaseUncPath> <!-- UNC path to shared directory (optional) --> <BaseUrl>https://example.com/pim</BaseUrl> <!-- Base URL for web-based resources (optional) --> <!-- ===================== --> <!-- Mail / Notification Settings --> <!-- ===================== --> <ProtocolEMail>your.name@example.com</ProtocolEMail> <!-- Recipient for protocol or logs --> <SenderEMail>noreply@example.com</SenderEMail> <!-- Sender email for notifications --> <SmtpServer>smtp.example.com</SmtpServer> <!-- SMTP server address --> <SmtpUser>noreply@example.com</SmtpUser> <!-- SMTP username --> <SmtpPassword>your-secure-password</SmtpPassword> <!-- SMTP password --> <MailLevel>All</MailLevel> <!-- Options: None | Error | Info | All --> </Pim>
Status und Fehler prüfen:
Nach dem Export erhalten Sie einen Statusbericht. Bei Fehlern werden diese angezeigt und können per E-Mail versendet werden.Profile und Mappings verwalten:
Sie können Profile und Mappings jederzeit bearbeiten, duplizieren, löschen oder sichern.
Profile

Im WpfInterfaces Pim Interface UI können mehrere Profile konfiguriert werden.
Mappings
Hier wird der Aufbau des zu generierenden JSONs angegeben. Dabei wird ein Array an JSON-Objekten generiert. Für jeden noch nicht exportierten Artikel aus der PIM_UPDATE Tabelle wird ein Eintrag in diesem JSON-Array erstellt. Dabei wird zwischen Tabellen und Profilierungskriterien unterschieden.
Tabellen
Tabelle | Verknüpfung | Zusätzliche Spalten anderer Tabellen |
|---|---|---|
ARTIKELBILDER | LAENDERKENNZEICHEN | |
ARTIKELSTAMM | LANGTEXTE (Typ 2 und Typ 3) | |
ARTIKELSTAMM_TEXTE | ||
ARTIKELTEXT | LAENDERKENNZEICHEN | |
ARA_ERA | ||
FOLGEARTIKEL | ||
KATALOGE | ||
PIM_UPDATE | ||
VORSCHLAGSARTIKEL | Artikelbezogene Vorschlagsartikel + Sortimentsbezogene Vorschlagsartikel + Bundlebezogene Vorschlagsartikel | |
ZUSATZTEXTE | LAENDERKENNZEICHEN |
Profilierungskriterien
Für Profilierungskriterien kann pro Kriterium ein eigenes Mapping angelegt werden. Dabei sind neben den Spalten aus der Tabelle ART_PROFKRIT auch die Spalten aus FR_WERTE verfügbar.
Mappings

JSON Path (pro Table Mapping)
Für jeden Mappingseintrag kann ein kann ein JSON Pfad hinterlegt werden. Gibt es diesen Pfad bereits, wird dieser erweitert, andernfalls wird ein neues JSON-Objekt in diesem Pfad angelegt.
Handelt es sich bei der Tabelle um eine 1:N Beziehung (mehrere Einträge pro Artikel) wird für jeden Eintrag eine eigenes JSON-Objekt angelegt und es wird an Stelle eines JSON-Objekts ein JSON-Array in diesem Pfad erstellt.
Ist der JSON Path leer, werden die Felder direkt ins Root Element dieses Artikels generiert.
Wenn es notwendig ist, dass ein Array generiert wird, obwohl nur ein Eintrag vorhanden ist, kann auch durch eine Kennzeichnung mit eckigen Klammern (Bsp “attributes[]”) ein JSON-Array erzwungen werden.
Filter
Es ist auch möglich, ein bereits bestehendes JSON-Object eines Arrays zu erweitern. Dazu kann eine Filterbedingung im Pfad angegeben werden.

In den eckigen Klammern kann ein Feld der JSON-Objekte aus dem Array und eine Spalte angegeben werden. Um auch konvertierte Werte richtig zu vergleichen, kann ein Konverter angegeben werden, der auf die Spalte angewendet wird, bevor der Vergleich durchgeführt wird.
In den Eckigen Klammern ist es auch möglich, eine “_” anzugeben. Bsp: “assets[_]”. Dadurch werden diese Änderungen auf alle Elemente im JSON-Array angewendet. ACHTUNG: das Array muss hierbei aber das letzte Pfad Element sein.
Column Mappings
Für jedes Column Mapping ist es verpflichtend, dass ein Feld angegeben wird, in welches der Wert aus der Spalte geschrieben wird. Null Werte werden nicht geschrieben.
Hier kann entweder eine Spalte angegeben werden, oder eine Konstante. Eine Konstante ist ein statischer Wert, der in ein Feld geschrieben werden kann.
Es kann auch ein mehrstufige JSON Pfad angegeben werden, um eine verschachtelte Struktur zu ermöglichen.
Zusätzlich kann ein Konverter angegeben. Dieser ermöglicht die Veränderung von Werten, bevor diese ins JSON Feld geschrieben werden
Batch
Über BatchSize und MaxParallelism kann kontrolliert werden, wie viel gleichzeitig geladen und übertragen wird.
Parameter | Default | Beschreibung |
|---|---|---|
BatchSize | 100 | Wie viele Artikel pro Thread selektiert, in ein JSON konvertiert und übertragen werden. |
MaxParallelism | 10 | Anzahl der Threads, die gleichzeitig arbeiten können. |
Converter
DownloadUnc
Nur anwendbar auf Felder der Tabelle “BILDER”. Bei diesem Converter ist die angegebene Column nicht relevant.
Bei Verwendung des Converters wird das Bild an den in den Einstellungen angegebenen UNC-Pfad kopiert und der Pfad dann durch die angegebene Download URL ersetzt. Die Download URL muss also eine vom Zielsystem erreichbare Adresse sein und auf den Pfad zeigen, der im UNC-Pfad angegeben ist.
PimAssetType
Nur anwendbar auf Felder der Tabelle “BILDER”. Bei diesem Converter ist die angegebene Column nicht relevant.
In der Tabelle “PIM_ASSETTYPE_CONVERTER” können Regeln angegeben werden.
Spalte | Datentyp | Länge | Beschreibung |
|---|---|---|---|
PATTERN | Varchar | 100 | Muster, welches für den Abgleich verwendet wird |
MATCHING_TYPE | Smallint | Es sind folgende unterschiedliche Arten von Abgleichen verfügbar:
| |
TARGET_ASSET_TYPE | Varchar | 100 | Wert der in das angegebene Feld geschrieben wird |
Combeenation Service
Wenn im Combeenation Service ein ProfileInx eines PimInterface Profils angegeben wird und in den Grundlagen eine Pim Schnittstelle ausgewählt ist, dann wird bei der Anlage eines Artikels durch Combeenation Service eine direkte Übertragung mit diesem Profil an das PIM durchgeführt.
In der Konfiguration des Combeenation Service müssen folgende Einträge ergänzt werden:
Parameter | Beschreibung |
|---|---|
pimprofileinx | Profile Inx, welches verwendet werden soll (steht beim Profil im WpfInterface dabei) |
pimdatetimeformat | wahrscheinlich "dd.MM.yyyy HH:mm:ss" |
pimuncpath | Pfad, wo die generierten Files im Filesystem abgelegt werden sollen. |
pimdownloadurl | URL, die auf den unter pimuncpath definierten UNC Pfad verweist. |