move()
Moves a document or register to a new folder/register location using dms.XMLMove.
Moving a register also moves all its contained child objects recursively.
When wf_to_user_tray=True, the document is moved from the workflow tray to
the user tray. In that case no location parameters should be provided.
1. Signature
-
Sync
-
Async
ecm.dms.move(
model: ECMDocumentModel | ECMRegisterModel | int,
object_type: int | str | None = None,
*,
folder_id: int | ECMFolderModel | None = None,
register_id: int | ECMRegisterModel | None = None,
register_type: int | None = None,
wf_to_user_tray: bool = False,
) -> None
await ecm.dms.move(
model: ECMDocumentModel | ECMRegisterModel | int,
object_type: int | str | None = None,
*,
folder_id: int | ECMFolderModel | None = None,
register_id: int | ECMRegisterModel | None = None,
register_type: int | None = None,
wf_to_user_tray: bool = False,
) -> None
2. Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
|
|
— |
The object to move. Either a model instance (must have |
|
|
|
Only required when |
|
|
|
Target folder — a numeric ID or an |
|
|
|
Target register — a numeric ID or an |
|
|
|
Type ID of the target register. Inferred automatically when |
|
|
|
When |
3. Exceptions
| Exception | Condition |
|---|---|
|
|
|
|
4. Examples
4.1. Move a document to a different folder
-
Sync
-
Async
doc = ecm.dms.select(InvoiceDocument).where(InvoiceDocument.Title == "Draft").execute()[0]
target_folder = ecm.dms.select(InvoiceFolder).where(InvoiceFolder.Year == 2024).execute()[0]
ecm.dms.move(doc, folder_id=target_folder, register_id=-1)
doc = (await ecm.dms.select(InvoiceDocument).where(InvoiceDocument.Title == "Draft").execute())[0]
target_folder = (await ecm.dms.select(InvoiceFolder).where(InvoiceFolder.Year == 2024).execute())[0]
await ecm.dms.move(doc, folder_id=target_folder, register_id=-1)