Для разных объектов, например таких как - заявки, клиенты и тд, предусмотрены блокировки. Они отвечают за то, чтобы несколько пользователей одномоментно не могли изменить один объект.

Виды операций:

  1. Проверка принадлежности блокировки пользователю

Запрос:

{
    "Parameters": {
        "LockedObjectType": 1,
        "LockedObjectId": 47611
    },
    "ApiKey": null,
    "UserKey": "c5e3dbcb-2787-4410-8246-200fb9128a8b",
    "ApiVersion": "100",
    "Method": "LockingApi.VerifyLock",
    "ModuleId": null
}

Ответ - Блокировка принадлежит пользователю ("VerifySuccessful": true):

{
    "Result": {
        "VerifySuccessful": true,
        "LockingObject": {
            "LockedObjectType": 1,
            "LockedObjectCode": 47611,
            "LockedObjectName": "Заявка 47611",
            "UserName": "Антонеко Виталий",
            "LockDateTime": "17.01.2025 12:02:40",
            "UserCode": 2,
            "UserFilial": "Центральный"
        },
        "Error": ""
    },
    "ApiKey": null,
    "ApiVersion": "100",
    "Method": "LockingApi.VerifyLock",
    "Errors": [],
    "Duration": 3.9890000000000003
}

Ответ - Блокировка НЕ принадлежит пользователю ("VerifySuccessful": false):

{
    "Result": {
        "VerifySuccessful": false,
        "LockingObject": {
            "LockedObjectType": 1,
            "LockedObjectCode": 47611,
            "LockedObjectName": "Заявка 47611",
            "UserName": "Белоусов Максим",
            "LockDateTime": "17.01.2025 12:10:26",
            "UserCode": 134,
            "UserFilial": "Центральный"
        },
        "Error": ""
    },
    "ApiKey": null,
    "ApiVersion": "100",
    "Method": "LockingApi.VerifyLock",
    "Errors": [],
    "Duration": 1.0009000000000001
}
  1. Создание новой блокировки или получение текущей

Запрос:

{
    "Parameters": {
        "LockedObjectType": 1,
        "LockedObjectId": 47611,
        "ForceLock": false
    },
    "ApiKey": null,
    "UserKey": "c5e3dbcb-2787-4410-8246-200fb9128a8b",
    "ApiVersion": "100",
    "Method": "LockingApi.LockObject",
    "ModuleId": null
}

Ответ - Блокировка принадлежит пользователю ("SelfLockingSuccessful": true):

{
    "Result": {
        "SelfLockingSuccessful": true,
        "LockingObject": {
            "LockedObjectType": 1,
            "LockedObjectCode": 47611,
            "LockedObjectName": "Заявка 47611",
            "UserName": "Антонеко Виталий",
            "LockDateTime": "17.01.2025 12:02:40",
            "UserCode": 2,
            "UserFilial": "Центральный"
        },
        "Error": ""
    },
    "ApiKey": null,
    "ApiVersion": "100",
    "Method": "LockingApi.LockObject",
    "Errors": [],
    "Duration": 32.8337
}

Ответ - Блокировка НЕ принадлежит пользователю ("SelfLockingSuccessful": false):

{
    "Result": {
        "SelfLockingSuccessful": false,
        "LockingObject": {
            "LockedObjectType": 1,
            "LockedObjectCode": 47611,
            "LockedObjectName": "Заявка 47611",
            "UserName": "Белоусов Максим",
            "LockDateTime": "17.01.2025 12:08:20",
            "UserCode": 134,
            "UserFilial": "Центральный"
        },
        "Error": ""
    },
    "ApiKey": null,
    "ApiVersion": "100",
    "Method": "LockingApi.LockObject",
    "Errors": [],
    "Duration": 3.7435
}
  1. Освобождение блокировки

Запрос: