Verknüpfen von DMS-Objekten

Freigegeben: JSON-Repräsentation

In diesem Kapitel erfahren Sie, wie Sie DMS-Objekte mit anderen DMS-Objekten unabhängig vom Typ hierarchisch verknüpfen können.

Um DMS-Objekte miteinander zu verknüpfen, müssen Sie folgende Schritte durchführen:

  • Ermitteln der URL zu einem Repository

  • Ermitteln und Aufrufen der Linkrelation zum Abrufen der Details eines DMS-Objektes

  • Ermitteln der Linkrelation zum Verknüpfen von DMS-Objekten

  • Verknüpfen von DMS-Objekten

Ermitteln der URL zu einem Repository

Im Kapitel Ermitteln eines Repositorys können Sie nachlesen, wie Sie die URL zu einem Repository ermitteln.

Ermitteln und Aufrufen der Linkrelation zum Abrufen der Details eines DMS-Objektes

Im Kapitel Abrufen und Anzeigen von Details eines DMS-Objektes können Sie nachlesen, wie Sie die URL zum Abrufen der Details eines DMS-Objektes ermitteln und aufrufen.

Ermitteln der Linkrelation zum Verknüpfen von DMS-Objekten

Das JSON-Objekt zu den Details eines DMS-Objektes enthält die Linkrelation linkDmsObjects, mit deren Hilfe Sie DMS-Objekte verknüpfen können.

Response

{ 
    "_links": {   
        "linkDmsObjects":{
            "href": "/dms/r/dee1f3d3-eae8-5d9d-84d8-2d758c5ddc27/o2m/D000000123/children"
        }
    },
    "id": "D000000123" 
}

Verknüpfen von DMS-Objekten

Führen Sie eine HTTP POST-Anforderung mit der Liste der IDs der zu verknüpfenden DMS-Objekte als Body auf die zuvor ermittelte URL wie folgt aus, um ein DMS-Objekt mit den übergebenen DMS-Objekten zu verknüpfen:

Request

POST https://host/dms/r/dee1f3d3-eae8-5d9d-84d8-2d758c5ddc27/o2m/D000000123/children HTTP/1.1
Accept: application/hal+json

Content-Type: application/hal+json

{
    "dmsObjectIds": [
        "D000000089",
        "D000000127",
        "D000004567",
    ]
}

Das JSON-Objekt, das beim POST übergeben wird, ist wie folgt beschrieben:

Eigenschaft

Beschreibung

dmsObjectIds

Gibt das Array mit den IDs der DMS-Objekte (vom Typ String) an, die mit dem DMS-Objekt verknüpft werden sollen.

Sie erhalten als Antwort den HTTP-Statuscode 200 (OK), wenn das Verknüpfen erfolgreich war. War das Verknüpfen nicht erfolgreich oder nur für einzelne DMS-Objekte erfolgreich, erhalten Sie den HTTP-Statuscode 207 (Multi-Status) und eine Liste mit detaillierten Informationen zu den einzelnen Verknüpfungsvorgängen.

Beispiel für eine Antwort für eine teilweise fehlgeschlagene Anforderung (Request):

Response

HTTP/1.1 207 Multi-Status
Content-Type: application/hal+json
 
{
 "requestId": "XyErwIKPhyGaMg9dxcGksgAAA@A",
 "linkDocumentErrorPageModels": [
   {
     "dmsObjectId": "D000000089",
     "errorPageModel": {
       "reason": "These documents are already linked to each other! [0000071] ",
       "severity": 1,
       "errorCode": 71
     }
   },
   {
     "dmsObjectId": "D000000127",
     "errorPageModel": {
       "reason": "These documents are already linked to each other! [0000071] ",
       "severity": 1,
       "errorCode": 71
     }
   },
   {
     "dmsObjectId": "D000004567",
     "errorPageModel": {
       "reason": "These documents are already linked to each other! [0000071] ",
       "severity": 1,
       "errorCode": 71
     }
   }
 ]
}

Beschreibung der Parameter zu der Antwort auf die fehlerhafte Anforderung:

Eigenschaft

Beschreibung

requestId

ID der zugehörigen Anforderung. Die ID wird bei weiteren Anforderungen an andere Apps übergeben und dient der Nachverfolgung bei der Verarbeitung einer Aktion.

linkDocumentErrorPageModels

Ein Array mit Fehlermeldungen zu einem Verknüpfungsvorgang.

Struktur eines Antwortobjektes zu einem Verknüpfungsvorgang

Eigenschaft

Beschreibung

dmsObjectId

Die ID des DMS-Objektes, das verknüpft werden soll.

errorPageModel

Ein Objekt mit einer Beschreibung, ob die Verknüpfung erfolgreich war.

Format der Antwort bei Fehlern

Eigenschaft

Beschreibung

errorCode

Ein optionaler Fehlercode, den d.3 server zurückgegeben hat.

reason

Ein optionaler kurzer Beschreibungstext, weshalb der Fehler aufgetreten ist. Dieser Text wird als Titel der Fehlermeldung verwendet.

severity

Optionaler Schweregrad des Fehlers. Folgende Werte sind möglich:

Success = 0,
Information = 1,
Warning = 2,
Error = 3