Error Codes

Every job call returns an integer value: 0 means success, any other value an error (see Introduction). This page collects the error codes documented so far in a central place, grouped by meaning.

This overview is new and not yet complete. It contains only error codes that are described elsewhere in the documentation or derived from concrete implementations, and is extended continuously. The absence of a code does not mean it cannot occur.

All codes are integer (INT) return values of the same mechanism. They are usually not job-specific but apply across the job calls (e.g. dms.XMLInsert, dms.XMLUpdate, dms.XMLImport, dms.GetResultList, check-in/check-out). The Code column lists the decimal return value (signed 32-bit integer). The Jobs column notes the triggers verified against a enaio® server.

1. Job-Dependent Specifics

The following observations were verified directly against a test server and should be considered when evaluating return values:

  • The same cause yields a different code depending on the job:

  • dms.XMLImport reports XML structure errors as a generic -1. The actual diagnosis is only available in the DMSResult buffer, not in the return value. dms.GetResultList, in contrast, returns specific codes (-1016 / -1029).

  • Each server namespace has its own codes for parameter errors. The dms. jobs return small, documented codes (-1024 / -1025) or -1; std., mng., wfm. and krn.* instead return large, HRESULT-style values (see Parameter Errors by Namespace).

  • No-error cases: Some jobs still return 0 for a functionally negative answer — the result is in the output value, not in the return value. Examples: dms.GetUserData and dms.IsUserData with an unknown name; krn.VerifyPassword with a wrong password; ado.ExecuteSQL with invalid SQL (return_code = 0 and an empty result — the SQL error is swallowed, so error detection must not rely on the return value here).

  • Configuration-dependent findings: dms.XMLMove can enforce a server-side configured target capacity (-89 when exceeded). -1012 (moving a register into one of its own children) was not reproducible on the test server — the move was allowed with return_code = 0; this behaviour is therefore not guaranteed.

2. Parameter Errors by Namespace

Each server namespace returns its own codes for parameter errors, grouped by error class. The dms. jobs return small codes documented in this list; the other namespaces (std., mng., wfm., krn.*) instead return large, HRESULT-style values:

Namespace Parameter missing Wrong parameter type Value not supported

dms.*

-1024 / -1025

-1024

std.*

-1043201825

-1043201825

mng.*

-1043332470

-1043332106

wfm.*

-1043332470

-1043332106

krn.*

-1043332815

This table is not exhaustive. Other namespaces and jobs (std., mng., wfm., lic., …) may return their own large, HRESULT-style values for parameter errors.

3. General Errors

Code Meaning Jobs

-1

General error (not further specifiable).

dms.XMLImport for XML structure errors (details only in the DMSResult buffer) (verified)

-2

No cabinet specified.

-4

No register type specified.

-6

No document type specified.

-10

Required folder identification is missing. Server message: The location of the object that should be inserted is unknown.

dms.XMLImport (document insert without folder_id/register_id) (verified)

-11

Required document identification is missing.

-12

Required register identification is missing.

-16

Folder update failed.

-17

Document update failed.

-18

Register update failed.

-24

The field name could not be resolved. Server message: The DMS field >…< could not be found.

dms.XMLImport (unknown field) (verified)

-28

The value for the given field is not allowed.

-29

The specified object ID is invalid.

-30

The mandatory fields have not been filled in. Server message: Field >…< is required, but was not filled out.

dms.XMLImport (verified)

-31

The specified value does not match the type on the archive server. Server message: invalid date format … / Invalid decimal format.

dms.XMLImport (invalid date/decimal value) (verified)

-40

A transfer parameter is incorrect or missing.

-65

No index could be obtained from the server.

-1004

No document list was specified.

-1006

The requested functionality is not implemented in the current version.

-1007

An error occurred while reading the object definitions.

-1013

A system ID was specified but no foreign ID.

-1016

An error occurred while parsing the XML text. Server message: Missing type ident attributes.

dms.GetResultList (malformed XML / missing type attribute) (verified)

-1017

An error occurred while validating the XML text.

-1018

The XML text is incomplete.

-1024

A job parameter is missing or has the wrong type. Server message: A required parameter was not specified: … or Parameter <…> has an invalid type: <1> instead of <2>.

dms.GetObjectDetails (missing and wrong type), dms.GetObjectTypeByID, dms.RemoveStoredQuery, dms.IsUserData, dms.GetUserData (verified)

-1025

The specified parameter value is invalid or missing. Server message: Missing argument >XML< / …not specified: QueryID.

dms.GetResultList, dms.ExecuteStoredQuery, dms.GetStoredQuery (verified)

-1027

More values were specified for a table field than there are columns.

-1028

An error occurred while inserting the note objects/texts.

-1029

An XML element is unknown or incorrectly positioned. Server message: Unknown or incorrectly positioned XML element: ….

dms.GetResultList (verified)

-1032

The job was cancelled by user request.

-1033

The specified condition is invalid.

-1034

An XML attribute is invalid.

-1035

A required XML attribute is missing.

-1047

The user data specifications are ambiguous.

-1051

The query format is not supported.

-1055

An expression has an invalid format.

-1056

The section name is invalid.

-1057

General error while reading the query.

-1058

Unknown query type.

-1060

The query could not be processed.

-1067

The full-text query contains only words that are to be ignored.

-1068

Insufficient memory is available.

-1043267169

A GUID parameter marked as mandatory is empty (GUID '<parameter name>' is not set).

wfm.GetRunningActivities

-1043201825

Missing or wrong-type parameter in the std.* namespace. Large, HRESULT-style value (see Parameter Errors by Namespace).

std.GetObjectInfo

-1043332470

Missing parameter in the mng./wfm. namespace. Large, HRESULT-style value (see Parameter Errors by Namespace).

mng.GetUserAttributes, wfm.GetWorkflowList

-1043332106

Wrong parameter type in the mng./wfm. namespace. Large, HRESULT-style value (see Parameter Errors by Namespace).

mng., wfm. (e.g. mng.GetUserAttributes, wfm.AdminTerminateProcess)

-1043332815

Unsupported parameter value in the krn.* namespace (info number not supported). Large, HRESULT-style value (see Parameter Errors by Namespace).

krn.GetServerInfo

4. Object / Resource Not Found

Code Meaning Jobs

-3

Specified cabinet unknown.

-5

Specified register type unknown.

-7

Specified document type unknown. Server message: The cabinet for object >…< could not be determined.

dms.XMLImport (unknown object type) (verified)

-13

Required register identification is unknown.

-14

Required folder identification is unknown.

-15

Required document identification is unknown.

-22

The specified/required object is unknown. Server message: …no object with identifier >…< could be found.

dms.XMLUpdate, dms.XMLDelete, dms.XMLMove (object_id does not exist) (verified)

-23

The ID of the specified register does not exist on the archive server.

-32

The specified/required file does not exist.

-1001

The specified value could not be found in the associated catalog.

-1019

The specified owner could not be determined.

-1022

The reference was not found.

-1030

An object type was not found on the DMS server. Server message: DMS object >…< in cabinet >< could not be found.

dms.GetResultList (unknown object type) (verified)

-1031

An object field was not found on the DMS server. Server message: The DMS field >…< could not be found. Note: dms.XMLImport returns -24 for the same message.

dms.GetResultList (unknown field) (verified)

-1044

The parent variant of the document could not be determined.

-1046

The document variant could not be determined. Server message: Document with ID … could not be found … not a version.

dms.XMLImport (variantparent_id points to a non-version or non-existent document) (verified)

-1049

The query was not found. Server message: Saved query with ID … was not found.

dms.ExecuteStoredQuery, dms.GetStoredQuery, dms.RemoveStoredQuery (unknown query ID) (verified)

-1052

The cabinet name could not be read.

-1053

The document name could not be read.

-1054

The register name could not be read.

-1062

The location of the object could not be determined.

5. Invalid State / Invalid Operation

Code Meaning Jobs

-8

The specified register is not in the specified folder.

-9

The specified document type is not allowed in the specified cabinet.

-21

The document has already been archived.

-51

The document has no pages.

-68

Moving folders is not allowed. Server message: This operation is not allowed for an object of main type >0<.

dms.XMLMove (moving a folder not allowed) (verified)

-89

The relationship between document and register is not allowed. Server message: The relationship between document and register is not allowed; for dms.XMLMove The parent folder >…< was not found… / maximum count … will be exceeded.

dms.XMLImport (document at an invalid location); dms.XMLMove (target folder not found / target capacity exceeded) (verified)

-90

Reference documents cannot be moved without specifying a location.

-94

Document pages are not allowed.

-1002

The key field is not unique. Server message: Combination >…< of key fields already exists….

dms.XMLImport (key field combination not unique) (verified)

-1005

The specified object is connected to a workflow process.

-1009

The object is in the recycle bin. Server message: The object is in the recycle bin.

dms.XMLDelete (object already in recycle bin) (verified)

-1010

The document is in a portfolio.

-1011

The recursion depth is too large, the action was aborted.

-1012

The target register is a child of the register to be moved.

-1014

Pages cannot be added to a reference document.

-1015

The document cannot reference another document because it has pages.

-1020

The object type is invalid for this operation.

-1021

Cascade deletion is not allowed, the object still has child objects. Server message: Cascade deletion is not allowed….

dms.XMLDelete (object still has child objects) (verified)

-1036

Only documents may be checked in and out. Server message: Only documents can be checked in and out….

dms.CheckOutDocument (target object is not a document) (verified)

-1037

The document has been checked in. Server message: The document was not checked out….

dms.UndoCheckOutDocument (document was not checked out) (verified)

-1038

The document has been checked out.

-1039

The document has been checked out to another user.

-1040

The document has been checked out to another station.

-1041

The document cannot be checked out because it has no pages. Server message: The requested document contains no pages….

dms.CheckOutDocument (document without pages) (verified)

-1042

The document is not in the workflow storage.

-1043

The document is in the workflow storage.

-1045

New variants may only be created for W-documents.

-1048

A concurrent update of an object failed (outdated concurrency_timestamp / OBJECT_MODIFYTIME). Server message: A concurrent update of an object failed.

dms.XMLUpdate (verified)

-1050

The copy of the object already exists at the specified location.

-1059

The new variant was created but could not be set to 'Active'.

-1061

Moving or linking objects is locked system-wide.

-1063

The document already exists at the location.

-1064

Copying objects with key fields is not allowed.

-1070

'Error' was specified as the action for the hit count.

dms.XMLImport (source comment)

6. Access Denied

Code Meaning Jobs

-47

The user does not have the required rights on the archive server.

-1003

An attempt was made to set a read-only field.

-1008

A requested file could not be accessed.

-1023

The specified system field cannot be changed by the user.

-1026

It is not possible for the user to disable the rights check.

-1065

The specified password is incorrect. Server message: The password entered by user >…< does not match….

krn.SessionChangePassword (wrong old password) (verified)

-1066

The new and old passwords are identical.

-1069

Access to a system resource was denied.

dms.GetObjectDetails (rights check before ID check) (observed)

-1042674726

The LIS license is missing although OSFTS is used with intrafind.

vtx.OpenObjectQuery

-1040906164

The calling user lacks system role 4 (Administrator: Configure security system). Message: User {username} does not have permission to configure the security system. Please contact your administrator.

Modifying mng jobs for users and groups (e.g. mng.CreateUser)

31523546

The calling user lacks system role 109 (Server: Execute script, R_SRV_SCRIPT_JOB). Message: Job <krn.RunScript> can only be executed by a user who owns the system roles [R_SRV_SCRIPT_JOB(109)]. The value is HRESULT-style encoded (0x1E102DA); the low word 0x2DA (730) carries the actual error.

krn.RunScript (verified)