Verschieben von Objekten (nicht dokumentierte Funktion der Server-API)

Ich denke es könnte auch für andere interessant sein. Der enaio-Client verwendet für das Verschieben von Objekten eine nicht dokumentierte Funktion. „dms.MoveObject“

    result = enaio_client.execute(
        Job(
            jobname='dms.MoveObject', 
            Flags=0, 
            FolderID=folder_id_register, #ID des Folder-Ziels
            ObjectID=objekt[SystemFields.OBJECT_ID.name], #ID des zu verschiebenden Objekts
            ObjectType=int(objekt['OBJECT_TYPE_ID']), #Type des zu verschiebenden Objekts
            RegisterID=ziel_id, #ID des Register-Ziels
            UserIdent=0,
        )
    )

Der Parameter „UserIdent“ scheint egal zu sein. Ich hatte ihn bisher immer auf 0 gelassen.

Zu Beachten: Ich habe den Befehl noch nicht getestet mit Dokumenten mit mehreren Standorten. Hier scheint der Client nämlich ein UPDATE der sdrel-Tabelle durchzuführen.

1 Like

Hallo @danielstraub, hast Du damit Vorteile gegenüber der Verwendung von DMS.XMLMove, z. B. beim Tempo? (Abgesehen davon, dass man sich das Aufbauen des XMLs sparen kann, was nett ist.)

Hallo @rk ,
ich habe keine Performance unterschiede wahrgenommen. Der große Vorteil ist hierbei glaube tatsächlich die einfache Handhabung.
Vielleicht hat die Funktion noch einen Vorteil - aus irgendeinem Grund wird die Funktion vermutlich vom enaio Client verwendet anstatt „DMS.XMLMove“.