...
Info |
---|
Es wird empfohlen, den Import zunächst in einer eigenen Testumgebung durchzuführen. |
Importer installieren
Wie im Artikel Kontinuierlicher Datenimport beschrieben, wird eine Importer.exe
benötigt. Diese kann selbst geschrieben werden. Für die meisten Fälle bietet antony aber Standard-Importer an. Diese können im Hub manuell installiert werden. Dazu auf im Hub auf Umgebungsverwaltung > Produkte
und den Punkt Produkt installieren
aufklicken und den Namen des gwünschten Importers angeben.
AntonyDataImportCsv
AntonyDataImportMsSql
AntonyDataImportMySql
AntonyDataImportOdbc
AntonyDataImportOracle
_import_configuration
Die _import_configuration
Tabelle enthält als Basisinformationen des Imports
Database field | Description | ||
---|---|---|---|
id | Jeder Import hat seine eigene ID. Dies ist eine GUID, die Sie einfach generieren können. Zum Beispiel hier https://guidgenerator.com | ||
is_active | Mit diesem Flag können Sie den Import aktivieren (1) und deaktivieren (0) | ||
debug | Das
| ||
frequency | Die Häufigkeit, mit der der Import ausgelöst wird. Format: <d>.<HH>:<MM>:<ss>. Sie können keinen Bereich unter einer Minute festlegen, da der Importeur nur einen pro Minute überprüft. | ||
import_name | Der Name des Imports. Dieser kann frei vergeben werden. | ||
comment | Ein Kommentar zu diesem Import. Frei zur Verwendung, | ||
connection_information | Die Verbindungsinformationen, die Die konkrete Information, die dort abgelegt wird ist abhängig vom verwendeten Importer | ||
import_group | Manchmal möchten Sie mehrere Importe aus demselben Ursprung (z.B. ERP) konfigurieren. Diese Importe können einen Link zueinander enthalten, wie z.B. eine CustomerId innerhalb einer Bestellung. In diesem Fall müssen Sie die beiden Importe dieselbe Diese Funktion wurde ursprünglich für Kundenverknüpfungsfelder innerhalb eines Flexobjects entwickelt. | ||
mapping_name | Diese Einstellung ist nur in Verbindung mit einer Sie müssen darauf achten, dass der mapping_name für alle Ihre konfigurierten Importe eindeutig ist. Andernfalls kann der Importeur die foreign_id des Importeurs nicht mit den ids von antony in Verbindung bringen. | ||
importer_exe | Der vollständige Pfad zur | ||
import_exe_args | Diese Argumente werden an die | ||
target_type | Der Typ, in den importieren werden soll. Dies kann sein
| ||
import_parameter | Dies sind einige Parameter, die der | ||
merge_fields | Manchmal möchte man nicht ein ganzes Objekt importieren, sondern nur einige Daten aus einem System in ein bestehendes importieren. Stellen Sie sich vor, Sie importieren Bestellungen in ein Flexobjekt. Sie haben nun ebenfalls ein ERP-System, dass den Status dieser Bestellung über die Bestellnummer der Bestellung festhält. Mit den merge_fields können Sie den Import so konfigurieren, dass dieser Status an das bereits vorhandene Flexobjekte angefügt wird. Dazu prüft der Importer, ob es bereits ein Flexobject mit dem Wert gibt, den die importer.exe im Feld merge_fields angibt. Ist dies der Fall, wird dieses Flexobject durch den Import aktualisiert. Andernfalls wird ein neues Flexobjekt erzeugt Wenn Sie mehrere Flexobjects haben, die der Bedingung entsprechen, werden ALLE Flexobjects aktualisiert. Sie können auch mehrere Felder angeben. Die Felder in der Datenbank sind durch Kommas getrennt | ||
batch_size | Hier wird die Größe des Stapels festgelegt, den der Importer ohne Verzögerung importiert. Der Standardwert ist 1. Diese Option und die Option | ||
delay_between_batch | Hier wird die Verzögerung festgelegt, die der Importer zwischen den Batches (siehe | ||
suppress_create | Dieses Flag ist nützlich, wenn Sie sicherstellen wollen, dass durch den Import kein neues Element erzeugt werden soll. Benutzen Sie dies, wenn Sie nur zusätzliche Daten aus einer Quelle in einen bereits bestehenden Datensatz in antony importieren wollen. Z.B. das obige Beispiel des Bestellstatus aus dem ERP |
import_configuration_mapping fields
Diese Tabelle enthält die Konfiguration des Imports, wie die "provides"-Felder der "importer.exe" auf das "antony"-Feld abgebildet werden.
Database field | Description | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
id | Eine inkrementelle id | ||||||||||
foreign_source_field | Dies ist der Feldname, den die Die Felder sind Abhängig vom verwendeten Importer. | ||||||||||
antony_target_field | Dies ist das Feld des von Ihnen konfigurierten target_type (siehe unten), in das das Für | ||||||||||
converter_infos | Hier können Sie Konverter konfigurieren, um die vom
Achten Sie darauf, dass die Eingabe korrekt gequoted wird (" zu \") | ||||||||||
comment | Ein Kommentar. Dieser kann von Ihnen ausgefüllt werden, um das Mapping noch in 2 Tagen zu verstehen. | ||||||||||
import_configuration_id | Die Id des Imports. Dies ist der Link zur Tabelle |
List Antony Fields
Natürlich wollen Sie die Zuordnung der Felder zu den entsprechenden antony-Feldern konfigurieren. Dazu müssen Sie die Namen der Felder kennen, die antony zur Verfügung stellt. Sie können sie hier finden
Contact
TargetType: “antony://contact”
Antony Mapping Field | .net Data-Type | Comments | |||||
---|---|---|---|---|---|---|---|
MainContactId | System.Int64 | Dies ist die Id von antonys' Hauptkontakt, wenn der Kontakt ein Unterkontakt sein möchte. Normalerweise ist diese im Fremdsystem nicht vorhanden, denn dort sind natürlich nur die Ids des jeweiligen Fremdsystems enthalten. Zum Mappen können Sie den eingebauten Konverter
Wenn der angegebene Hauptkontakt nicht im Importmapping enthalten ist, wird der neue Kontakt als normaler Hauptkontakt angelegt Damit das IdLookup funktioniert müssen die Importe in der selben | |||||
TitleId | System.Int64 | Die ID des Titels des Kontakts. Sie können sie in der Tabelle | |||||
Company | System.String | ||||||
Firstname | System.String | ||||||
Lastname | System.String | ||||||
Street | System.String | ||||||
Zipcode | System.String | ||||||
City | System.String | ||||||
State | System.Int64 | Die ID des Bundeslandes. Sie finden sie in der Tabelle | |||||
CountryId | System.Int64 | Die ID des Landes. Sie können sie in der Tabelle | |||||
Phone | System.String | ||||||
Phone2 | System.String | ||||||
Fax | System.String | ||||||
System.String | |||||||
Mobile | System.String | ||||||
Homepage | System.String | ||||||
Comment | System.String | ||||||
StreetPrivate | System.String | ||||||
ZipcodePrivate | System.String | ||||||
CityPrivate | System.String | ||||||
StatePrivate | System.Int64 | Die private ID des Bundeslands. Sie finden sie in der Tabelle | |||||
CountryIdPrivate | System.Int64 | Die private ID des Landes. Sie können sie in der Tabelle | |||||
PhonePrivate | System.String | ||||||
Phone2Private | System.String | ||||||
FaxPrivate | System.String | ||||||
Department | System.String | ||||||
Picture | Byte[] | ||||||
Birthday | System.DateTime | Stellen Sie sicher, dass Sie hier LocalTime verwenden | |||||
ContactGroup | System.Boolean | Wenn Sie hier eine Kontaktgruppe angeben, wird der Kontakt zu der angegebenen Kontaktgruppe hinzugefügt. Der aktuelle Kontakt wird nicht aus den bestehenden Gruppen entfernt. | |||||
Benutzerdefinierte Felder von Kontakten können hinzugefügt werden, indem |
Appointment
TargetType: “antony://appointment”
Antony Mapping Field | .net Data-Type | Comments | |||||
---|---|---|---|---|---|---|---|
UID | System.Int64 | ||||||
AllDay | System.Boolean | ||||||
StartDateTime | System.DateTime | Die Angaben sind hier in LocalTime! | |||||
EndDateTime | System.DateTime | Die Angaben sind hier in LocalTime! | |||||
Subject | System.String | ||||||
Location | System.String | ||||||
Description | System.String | ||||||
Label | System.Int64 | ||||||
Status | System.Int64 | ||||||
IsPrivate | System.Boolean | ||||||
HasReminder | System.Boolean | True, wenn eine Erinnerung konfiguriert ist | |||||
ReminderTimeBeforeStart | System.Int64 | Die Anzahl der Nanosekunden der Erinnerungszeit. Die Angabe in Nanosekunden ist historisch bedingt. | |||||
ResourceIds | List`1 | Die IDs der Kalender, in die der Termin gelegt werden soll. Sie finden sie im Administator, wenn Sie sich dort die Spalte Beispiel für
| |||||
Das Erstellen von wiederkehrenden Terminen wird nicht unterstützt. |
Flexobjects
Der Importer kann auch Flexobjekte importieren, die in Ihrer Umgebung konfiguriert sind. Da ein Flexobjekt nur CustomFields
enthält, müssen Sie diese nachschlagen. Sie können hinzugefügt werden, indem man Field_n
innerhalb des antony_field
platziert. Das n
ist die ID des Customfields selbst. Sie können sie entweder aus dem visuellen Editor von antony oder aus der Tabelle instance_customfields
abrufen
TargetType: “antony://flexobject/<type_id>”
Die type_id
ist die ID des Typs des Flexobjects selbst. Sie finden sie in der Tabelle flexobject
Fazit
Der Import ist ein leistungsstarkes, aber komplexes Werkzeug zum Importieren beliebiger Daten aus einer externen Datenquelle. Sie können zu den Standardimportern auch einen benutzerdefinierten Importer schreiben, um Daten aus Ihrer benutzerdefinierten Quelle zu holen.
Wenn Sie Probleme haben, Ihren Import zum Laufen zu bringen, kontaktieren Sie uns bitte.