The contractmanagement import imports the following datas (to the contract):
Currently it's not possible to upload attachements.
<note important>This import is implemented in Version 5.2.</note>
| Field-Name | Type of Data | Info | Mandatory field |
|---|---|---|---|
| id | long | The ID of a contract. Advice: only for existing contracts. | Eitherid or number has to be assigned. |
| number | string | The “Contract number” of a contract. | Eitherid or number has to be assigned. |
| name | string | The name of the contract. | At creation: mandatory field At update: optional |
| status | int | The status of a contract. Possible Values: - 0 = “activ” - 1 = “inactiv”. Default value: activ. | Optional |
| startDate | Date | The Begin of contract. The date has to be the same as in the Config data “dateFormat”. | Optional |
| endDate | Date | The Experation of contract. The date has to be the same as in the Config data “dateFormat”. | Optional |
| description | string | The description of the contract. | Optional |
| companyId | long | The (1stAnswer internal) ID of the company. | At the creation: companyId or companyNumber has to be in it. At update: optional |
| companyNumber | string | The companynumber of the company. | At creation: companyId or companyNumber has to be in it. At update: optional |
| mandator | long | The ID of a mandator. The contract will be applied to this mandator. | At creation: mandatory field. At update: optional. |
| attributes | - | A list of CustomAttributes. Look article: Tag "serviceLevelAgreement" | Optional |
| positions | - | A list of contract position. Look article: Tag "position" | Optional |
| responsibles | - | A list of responsible persons. Look article: Tag "responsible" (Responsable person) | Optional |
The XML-Tag “attribute” has an attribute named “name”.
The value of the “name-Attributs” has to be the same as the “attribute”-Tags in the CustomAttributeConfig.xml.
The content of the tag is the value of the CustomAttributes inside the application.
<note important>Wenn der “positions”-Tag (der Vater-Knoten eines “position”-Knotens) mitgeliefert wird (egal ob dieser leer ist oder nicht) gilt folgende Regel:
Es müssen alle Positionen angegeben werden, die entweder erstellt oder beibehalten werden sollen.
Bereits (z.B. über die Oberfläche angelegte) existierende Positionen die dem Import nicht mitgeliefert werden, werden gelöscht. Bei existierenden Positionen genügt es, entweder die “id” oder die “number” anzugeben, damit die Position nicht gelöscht wird.
</note>
Felder:
| Feld-Name | Datentyp | Info | Pflichtfeld |
|---|---|---|---|
| id | long | Die (1stAnswer-interne) ID einer Vertrags-Position. | Entweder id oder number muss übergeben werden. |
| number | string | Die Positionsnummer einer Vertrags-Position. | Entweder id oder number muss übergeben werden. |
| name | string | Der Name des Vertrags-Position. | Beim Anlegen: Pflichtfeld Beim aktualisieren: optional |
| status | int | Der Status der Position. Verfügbare Werte: - 0 = “aktiv” - 1 = “gelöscht” (in der Oberfläche nicht mehr sichtbar) Der Standard-Wert ist “aktiv”. | Optional |
| priorityGroup | long | Die (1stAnswer-interne) ID einer Prioritätsgruppe. | Optional |
| priority | long | Die (1stAnswer-interne) ID einer Priorität. | Optional |
| configurationItems | - | Eine Liste von ConfigurationItems. Siehe Abschnitt Tag "configurationItem" (ConfigurationItem für eine Vertrags-Position) | Optional |
<note important>Wenn der “configurationItems”-Tag (der Vater-Knoten eines “configurationItem”-Knotens) mitgeliefert wird (egal ob dieser leer ist oder nicht) gilt folgende Regel:
Es müssen alle ConfigurationItems angegeben werden, die für die jeweilige Vertrags-Position gültig sind.
Bereits (z.B. über die Oberfläche angelegte) existierende ConfigurationItem-Verknüpfungen die nicht mitgeliefert werden, werden gelöscht.
</note>
<note important>Wenn der “responsibles”-Tag (der Vater-Knoten eines “responsible”-Knotens) mitgeliefert wird (egal ob dieser leer ist oder nicht) gilt folgende Regel:
Es müssen alle Benutzer angegeben werden, die als Verantwortliche des Vertrages eingetragen werden sollen.
Bereits (z.B. über die Oberfläche angelegte) existierende Verantwortlichen-Verknüpfungen die nicht mitgeliefert werden, werden gelöscht.
</note>
Eines der folgenden Felder muss angegeben werden:
Zuerst wird nach der “ID” des Benutzers gesucht.
Wenn das Feld nicht mitgeliefert wird oder wenn kein Benutzer mit der angegebenen ID gefunden wird, wird nach einen Benutzer mit der mitgelieferten Ansprechpartnernummer gesucht.
<note important>Derzeit ist es nicht möglich Dateianhänge zu importieren.</note>
Alle Dateien im konfigurierten Import-Verzeichnis (in der Config-Datei “importDir”), auf die der Datei-Filter (“importFileMask” - z.B: “*.xml”) zutrifft werden verarbeitet.
Nach dem Importieren werden die Dateien in das (“archiveDir”) Archiv-Verzeichnis verschoben.
Das Datums-Format ist (in der Config-Datei “dateFormat”) konfigurierbar.
Dabei können sämtliche von .NET zur Verfügung stehenden Format-Platzhalter verwendet werden.
Siehe hierzu: Custom Date and Time Format Strings und Benutzerdefinierte und DateTime-Formatzeichenfolgen
Nach dem Import wird an alle konfigurierten Mail-Adressen (“to” und “bcc”) eine Status-Email (über den unter “smtpServer” angegebenen Mail-Server) verschickt.
Der Absender der Mail (“from”), Betreff der Mail (“subject”) und der Inhalt (“mailBodyPrefix” und “mailBodySuffix”) können ebenfalls konfiguriert werden.
Die Email enthält Informationen zu den Importierten Datensätzen (Fehler, Warnungen etc.)
Damit die Email richtig versendet werden kann, muss der Log-Pfad (“logFilePath” - sollte auf die Datei “ServiceLevelAgreementImportUserLog.log” verweisen) konfiguriert werden.
Der Inhalt dieser Datei wird zwischen “mailBodyPrefix” und “mailBodySuffix” geschrieben.
Der Pfad zur Zuordnungs-Datei muss eingestellt werden (“customAttributeConfigFilePath”).
Diese Datei hat folgenden Aufbau (inkl. Beispiel):
<?xml version="1.0" encoding="UTF-8" ?> <customAttributes> <servicelevelagreement> <attribute name="attribute1">23</attribute> </servicelevelagreement> </customAttributes>
Hier bekommt das CustomAttribute mit der ID 23 und dem Geschäftsobjekt ServiceLevelAgreement den Namen attribute1.
Der Import kann dann folgendermaßen einen Wert für das CustomAttribute (im jeweils aktuellen Vertrag vergeben):
<?xml version="1.0" encoding="UTF-8"?> <serviceLevelAgreements> <serviceLevelAgreement> ... <attributes> <attribute name="attribute1">Beispiel-Wert Eins</attribute> ...