СЭД «ДЕЛО»
Руководство пользователя
×

4.6.5.1 Добавление и изменение элемента справочника

Данный тест демонстрирует использование пакетных команд для добавления и изменения элемента справочника «Виды доставки».
При запуске следует указать параметры:
-                     BaseUrl – адрес сервиса
-                     UserName – логин пользователя
-                     Pass – пароль пользователя
-                     DeliveryName1 – имя добавляемого элемента
-                     DeliveryName2 – значение имени, на которое у элемента оно будет изменено
Для того, чтобы создание и изменение справочника прошли, у пользователя должны быть соответствующие права («Системный технолог» и право на данный справочник). В демо-примере это право есть у пользователя TVER.
Скрипт делает вход в систему. Добавляет элемент с указанным именем. Получает Id элемента, загружает его. Далее изменяет у элемента имя на второй вариант значения. Снова загружает.
Пример:
PS D:\restapi> .\delivery_add_change.ps1
Попытка входа в систему
{
  "user": "tver",
  "password": "tver"
}
Response status code does not indicate success: 400 (Bad Request).
Ответ сервера:  {"NeedRedirect":true,"Url":"/Dev.Delo96.x2021.Site/Main.aspx","Code":null,"Message":null}
Вход произведён
Создаём новый элемент видов доставки
Тело запроса {
  "variables": null,
  "query": "mutation\r\n    {\r\n      createDeliveryCl(input:\r\n      {\r\n        clientMutationId:\"d\"\r\n        data:{\r\n          isnLclassif: -10000\r\n          classifName: \"тест\"\r\n          protected:0\r\n          deleted:0\r\n        }\r\n      }) {\r\n        success\r\n        message\r\n        data {\r\n          isnLclassif\r\n        }\r\n      }\r\n    }"
}
Ответ сервера:  {"data":{"createDeliveryCl":{"success":true,"message":null,"data":{"isnLclassif":-10000}}}}
Получаем данные о добавленном виде доставки
Ответ сервера:  {"data":{"getDeliveryCl":{"classifName":"\u0442\u0435\u0441\u0442"}}}
Изменяем элемент видов доставки
Тело запроса {
  "variables": null,
  "query": "mutation\r\n    {\r\n      updateDeliveryCl(input:\r\n      {\r\n        clientMutationId:\"d\"\r\n        data:{\r\n          isnLclassif: -10000\r\n          classifName: \"тест123\"\r\n          note: \"Текст комментария\"\r\n        }\r\n      }) {\r\n        success\r\n        message\r\n        data {\r\n          isnLclassif\r\n        }\r\n      }\r\n    }"
}
Ответ сервера:  {"data":{"updateDeliveryCl":{"success":true,"message":null,"data":{"isnLclassif":-10000}}}}
Получаем данные о изменённом виде доставки
Ответ сервера:  {"data":{"getDeliveryCl":{"classifName":"\u0442\u0435\u0441\u0442123","note":"\u0422\u0435\u043A\u0441\u0442 \u043A\u043E\u043C\u043C\u0435\u043D\u0442\u0430\u0440\u0438\u044F"}}}
Выход из системы
Ответ сервера:  {"NeedRedirect":false,"Url":null,"Code":null,"Message":null}
Онлайн помощь создана в Dr.Explain