Definieren der Parameter zum Speichern
In diesem Kapitel erfahren Sie mehr zu den Parametern, die Sie zum Speichern von DMS-Objekten angeben können. Die Parameter gelten wahlweise für das Speichern mit oder ohne Benutzeraktion.
Festlegen eines JSON-Objektes zum Speichern
Das JSON-Objekt, das mit den HTTP
-Anforderungen zum Speichern eines DMS-Objektes gesendet wird, enthält folgende Parameter:
Eigenschaft | Beschreibung |
---|---|
| Gibt den Anzeigenamen des Elements an, das gespeichert wird. Der Anzeigename wird im Ablagedialog für den Anwender sichtbar. Dieser Parameter ist optional. |
| Gibt den Namen der zu speichernden Datei mit der Dateierweiterung an. Wenn Sie diesen Parameter festlegen, dann müssen Sie die unter
|
| Gibt die ID des zu aktualisierenden DMS-Objektes an. Dieser Parameter wird nur beim Aktualisieren eines DMS-Objektes mit Benutzerinteraktion berücksichtigt. |
| Gibt den Änderungsgrund für die Aktualisierung eines DMS-Objektes an. In d.3 admin legen Sie fest, ob das Angeben des Parameters verpflichtend ist. Dieser Parameter wird nur beim Aktualisieren eines DMS-Objektes berücksichtigt. |
| Gibt an, welche Kategorie für die Zuordnungsverarbeitung beim Speichern verwendet werden soll. Geben Sie die ID der Quellkategorie an. Das Angeben dieser Eigenschaft ist verpflichtend, außer unter folgenden Bedingungen:
Wenn Sie mehrere DMS-Objekte mit Benutzerinteraktion speichern, dann wird nur die Quellkategorie des ersten Elements im Array |
| Legt fest, zu welcher Quelle die Zuordnung gehört, die zum Speichern verwendet werden soll. Die Quelle muss existieren und das Quellsystem muss bei d.ecs http gateway registriert sein, damit die Eigenschaften unter Weitere Informationen zum Bereitstellen einer Quelle finden Sie unter Definieren eines Quellsystems. Wenn Sie kein eigenes Quellsystem haben, können Sie auch das Standardquellsystem des d.3-Repositorys verwenden. Informationen über das Standardquellsystem finden sie unter Abrufen des Standardquellsystems zu einem d.3-Repository. |
| Gibt die URL an, unter der die DMSApp die Elementeigenschaften für die Zuordnungsverarbeitung und Duplikatsprüfung herunterladen soll. Vor dem Speichern des DMS-Objektes sendet die DMSApp eine Alternativ zu dieser Eigenschaft können Sie die Eigenschaft |
| Gibt ein JSON-Array mit Quelleigenschaften an, die für die Zuordnungsverarbeitung und Duplikatsprüfung verwendet werden. Unter "Festlegen der Quelleigenschaften" ist das bereitzustellende JSON-Objekt beschrieben. Alternativ zu dieser Eigenschaft können Sie die Eigenschaft |
| Gibt die URL zur temporär hochgeladenen Datei an. Weitere Informationen finden Sie unter Bereitstellung über temporäres Hochladen. Alternativ können Sie die Eigenschaft Legen Sie diesen Parameter fest, dann müssen Sie die unter Diese Eigenschaft ist optional, wenn Sie ein DMS-Objekt aktualisieren oder eine Akte erstellen möchten. |
| Gibt die relative URL an, unter der die DMSApp die abzulegende Datei herunterlädt. Weitere Informationen finden Sie unter Bereitstellung über temporäres Hochladen. Alternativ können Sie die Eigenschaft Legen Sie diesen Parameter fest, dann müssen Sie die unter Diese Eigenschaft ist optional, wenn Sie ein DMS-Objekt aktualisieren oder eine Akte erstellen möchten. |
| Gibt die DMS-Objekt-ID der Akte an, mit der das abzulegende Element verknüpft werden soll. Ist der Ablagevorgang erfolgreich, wird das abgelegte Element mit der entsprechenden Akte verknüpft. Wurde das abzulegende Element als Duplikat erkannt, wird das bereits vorhandene Element mit der Akte verknüpft. Wenn Sie eine Akte mit einer anderen Akte verknüpfen möchten, wird jedoch keine Duplikatsprüfung vorgenommen. Diese Eigenschaft wird ignoriert, wenn Sie ein DMS-Objekt aktualisieren. |
| Gibt die URL an, die über Diese Eigenschaft ist optional. Sie können die Eigenschaft nur beim Speichern mit Benutzerinteraktion verwenden. |
Festlegen der Quelleigenschaften
Sie können die Quelleigenschaften direkt mithilfe des Parameters sourceProperties
definieren oder mit der URL in sourcePropertiesUri
bereitstellen.
Das JSON-Objekt ist wie folgt beschrieben:
Eigenschaft | Beschreibung |
---|---|
| Gibt ein Array der Quelleigenschaften an, die für die Zuordnungsverarbeitung bereitgestellt werden. Es werden nur diejenigen Eigenschaften beim Speichern berücksichtigt, die vom Administrator in der Zuordnung konfiguriert wurden. |
| Gibt einen eindeutigen Hashcode an, der von der Quelle für das abzulegende Element festgelegt und von d.3 server zur Duplikatserkennung verwendet wird. Das Festlegen dieser Eigenschaft ist optional. |
| Gibt ein Array von Optionen an, die zusätzlich im Ablagedialog angezeigt werden sollen. Das Angeben dieser Eigenschaft ist optional. Sie können die Eigenschaft nur beim Speichern mit Benutzerinteraktion verwenden. Weitere Informationen finden Sie unter Feedback mithilfe von "SuccessCallback" und "Userdata". |
| Gibt den Hash der zu speichernden Datei an. Der Hash der zu speichernden Datei hilft Ihnen sicherzustellen, dass Sie das Speichern einer Datei in einem d.3-Repository überprüfen können. Sobald die Hashes nicht übereinstimmen, wird das Speichern des Dokuments mit einer Fehlermeldung abgebrochen. Während des Speicherns wird serverseitig ein Hash von der zu speichernden Datei gebildet und mit dem Hash, den Sie generieren, verglichen und überprüft. Der Parameter muss dabei dem folgenden Aufbau entsprechen: HASHALGORITHM:base64encode(hashfunction(PAYLOAD)) Beispiel für eine Datei mit dem Inhalt "Example": SHA512:xrCRnH/mKK6QVpksSpF+XcA1qWFdSX9usr0UBj6q0+ZQjvyGgv7IKCPKPz3jEYaKcpkJRhZkKfAbOPnzPZymEA== Folgende Hashalgorithmen werden unterstützt:
Dieser Parameter ist optional. Führen Sie die Base64-Encodierung immer auf Byte-Ebene aus. Die Encodierung einer textuellen Repräsentation führt zu invaliden Hashwerten. Beispiele für das Erzeugen eines checkHash-Wertes unter Verwendung der Klassen aus System.Security.Cryptography in C#: private string CreateM5Hash(string filename) { using (var md5 = MD5.Create()) { using (var stream = File.OpenRead(filename)) { var retVal = md5.ComputeHash(stream); //Bytes in retVal für eine Datei mit dem Inhalt "Example": //45 155 209 108 21 173 26 160 179 111 217 119 62 110 20 172 return $"MD5:{Convert.ToBase64String(retVal)}"; //Hash base64-encodiert: //MD5:ClJzBZf7T/oB/BF9nnHjqQ== } } } private string CreateSHA256Hash(string filename) { using (var sha256 = SHA256.Create()) { using (var stream = File.OpenRead(filename)) { var retVal = sha256.ComputeHash(stream); //Bytes in retVal für eine Datei mit dem Inhalt "Example": //53 239 154 101 221 213 246 176 70 65 37 206 150 167 54 152 //63 65 154 140 96 227 200 169 71 112 149 213 153 156 17 27 return $"SHA256:{Convert.ToBase64String(retVal)}"; //Hash base64-encodiert: //SHA256:0Cn4fj2A+P2bG+Z8dCa0zB/0e0qdCoRhyCalnYxets0= } } } private string CreateSHA512Hash(string filename) { using (var sha512 = SHA512.Create()) { using (var stream = File.OpenRead(filename)) { var retVal = sha512.ComputeHash(stream); //Bytes in retVal für eine Datei mit dem Inhalt "Example": //72 237 177 122 242 252 39 57 63 98 44 167 119 228 162 20 106 //147 201 76 246 223 209 126 97 224 198 30 40 137 121 216 147 //21 15 16 1 103 84 101 60 241 95 82 14 126 211 137 170 235 180 //206 18 112 247 228 229 185 208 62 192 244 131 41 return $"SHA512:{Convert.ToBase64String(retVal)}"; //Hash base64-encodiert: //SHA512:xrCRnH/mKK6QVpksSpF+XcA1qWFdSX9usr0UBj6q0+ZQjvyGgv7IKCPKPz3jEYaKcpkJRhZkKfAbOPnzPZymEA== } } } |
Struktur eines Objekts im Array "properties"
Eigenschaft | Beschreibung |
---|---|
| Gibt die ID der Quelleigenschaft an. Es werden nur diejenigen Eigenschaften berücksichtigt, die von Ihnen angegeben und die vom Administrator in der Zuordnung konfiguriert wurden. Beim Aktualisieren eines DMS-Objektes werden nur die von Ihnen angegebenen Eigenschaften aktualisiert. Alle weiteren Werte der Eigenschaften des bereits vorhandenen DMS-Objektes bleiben bestehen. Wenn Sie das Erstellungsdatum ( |
| Gibt ein Array mit den zugehörigen Werten der Elementeigenschaft an. Auch wenn Sie nur einen Wert übergeben möchten, müssen Sie diesen Wert als JSON-Array übergeben. Sie können den d.3-Dokumentstatus für ein DMS-Objekt beim Speichern eines neuen DMS-Objektes festlegen. Mögliche Werte sind Beim Aktualisieren eines DMS-Objektes werden Zuordnungen zu d.3-Dokumentstatus, d.3-Variantennummer, d.3-Dokument-ID und d.3-Dokumentnummer ignoriert. Eigenschaften mit der Kennzeichnung "nur lesend" werden beim Speichern nicht berücksichtigt. Beim Aktualisieren ohne Benutzerinteraktion muss der authentifizierte Benutzer der Bearbeiter des DMS-Objektes sein, wenn das bestehende DMS-Objekt den d.3-Dokumentstatus Geben Sie numerische Werte ohne Tausendertrennzeichen an. Als Dezimaltrennzeichen gilt der Punkt (.). Beispiel: Für den Wert 1.000,20 EUR geben Sie 1000.20 an. Geben Sie Datumswerte im Format YYYY-MM-DD an. Beispiel: Für den 05.12.2014 (DD.MM.YYYY) geben Sie 2014-12-05 an. Geben Sie Datumszeitwerte im Format YYYY-MM-DDTHH:mm:ss+01:00. Beispiel: 2015-02-18T23:59:59+01:00 für den 18.02.2015 um 23:59 Uhr und 59 Sekunden in der Zeitzone UTC+1 für Winterzeit in Deutschland. |
Beispiel 1: Bereitstellen der Datei und der Eigenschaften durch eine URL
Ein einfaches JSON-Objekt könnte wie folgt aussehen:
{ "filename": "myfile.txt", "alterationText": "updated file", "sourceCategory": "mycategory1_ID", "sourceId": "/myapp/sources/mysource", "contentUri": "/myapp/sources/mysource/myfile.txt", "sourcePropertiesUri": "/myapp/sources/mysource/myfile.haljson" }
Beispiel 2: Direktes Angeben der Eigenschaften, inklusive der Parameter "userdata" und "successCallbackUri"
Das folgende JSON-Objekt enthält userdata
und die Eigenschaften (properties
). Zugleich wird uniqueTag
für die Duplikatsprüfung festgelegt. Die ID der Akte wird in dem Parameter parentId
festgelegt, um das neu zu erstellende DMS-Objekt zu verlinken:
{ "displayValue": "Please verify the XYZ invoice", "filename": "myfile.txt", "alterationText": "updated file", "sourceCategory": "mycategory1_ID", "sourceId": "/myapp/sources/mysource", "parentId": "P123456789", "contentLocationUri": "/dms/r/dee1f3d3-eae8-5d9d-84d8-2d758c5ddc27/blob/chunk/2018-01-01_temp_master_file_user1_44f7-95a6-58b8400ecf43", "successCallbackUri": "/myapp/sources/mysource/myfile/success", "sourceProperties": { "properties": [{ "key": "myprop1_ID", "values": ["Please verify the XYZ invoice"] }, { "key": "myprop2_ID", "values": ["Name1@contoso.com","Name2@samplecompany.de"] } ], "userdata": [{ "key": "postProcessingOption", "display": "My post processing options", "values": [ {"value":"1", "display": "Action 1", "default":"false"}, {"value":"2", "display": "Default action 2", "default":"true"}, {"value":"3", "display": "Action 3", "default":"false"} ] } ], "uniqueTag": "123456789", "checkHash": "MD5:ClJzBZf7T/oB/BF9nnHjqQ==" } }