Получить требования-накладные

HTTP-сервис demands, метод GetDemands. Возвращает документы Требование-накладная (Документ.ТребованиеНакладная) из 1С УПП.

Endpoint

GET /main/hs/demands/get

Параметры запроса

Все параметры опциональны. Читаются из query string (ПараметрыЗапроса) или из URL-шаблона (ПараметрыURL).

ПараметрТипОписание
codestringФильтр по номеру документа. Поиск ПОДОБНО — подстрока в номере
fromstringНачало периода по дате документа. Работает только вместе с to
tostringКонец периода по дате документа. Работает только вместе с from
warehousestringФильтр по наименованию склада. Поиск ПОДОБНО
responsiblestringФильтр по наименованию ответственного. Поиск ПОДОБНО
fullbooleanРасширенный ответ: табличная часть Материалы. Истина: 1, true, yes, да

Форматы дат (from, to)

  • ДД.ММ.ГГГГ — например 01.01.2024
  • ГГГГ-ММ-ДД — например 2024-01-01
  • ДД-ММ-ГГГГ — если первый сегмент не год из 4 цифр

При некорректном формате даты ошибка попадает в массив errors, HTTP-код остаётся 200.

Примеры запросов

GET /main/hs/demands/get
GET /main/hs/demands/get?from=01.01.2025&to=31.01.2025
GET /main/hs/demands/get?code=ДК-00001008
GET /main/hs/demands/get?warehouse=Северный&responsible=Сидоров
GET /main/hs/demands/get?code=ДК-00001008&full=true
GET /main/hs/demands/get?from=01.03.2025&to=31.03.2025&full=true

Формат ответа

Базовый ответ

{
  "data": [
    {
      "Номер": "ДК-00001008",
      "Дата": "15.03.2025",
      "Склад": "Склад «Северный»",
      "Ответственный": "Сидоров С.С.",
      "Комментарий": "Выдача на демо-объект",
      "Материалы": "8 позиций"
    }
  ],
  "errors": []
}

Поле Материалы — текстовая сводка по количеству строк ТЧ Материалы (N позиция, N позиции, N позиций).

Расширенный ответ (full=true)

Вместо сводки Материалы возвращается массив строк табличной части:

{
  "data": [
    {
      "Номер": "ДК-00001008",
      "Дата": "15.03.2025",
      "Склад": "Склад «Северный»",
      "Ответственный": "Сидоров С.С.",
      "Комментарий": "Выдача на демо-объект",
      "Материалы": [
        {
          "НомерСтроки": "1",
          "Номенклатура": "Пример номенклатуры А",
          "Количество": 5000,
          "ЕдиницаИзмерения": "шт"
        }
      ]
    }
  ],
  "errors": []
}

Поля ответа

Шапка документа

ПолеТипИсточник в 1СОписание
dataarrayМассив требований-накладных. Сортировка: дата по возрастанию
data[].НомерstringНомерНомер документа
data[].ДатаstringДатаДата в формате ДД.ММ.ГГГГ или пустая строка
data[].СкладstringСкладСклад
data[].ОтветственныйstringОтветственныйОтветственный
data[].КомментарийstringКомментарийКомментарий
data[].Материалыstring / arrayТЧ МатериалыСводка «N позиций» или массив строк (при full=true)
errorsarrayОшибки парсинга параметров или загрузки ТЧ отдельных документов

Табличная часть Материалы (только при full=true)

ПолеТипИсточник в 1СОписание
Материалы[].НомерСтрокиstringНомерСтрокиНомер строки
Материалы[].НоменклатураstringНоменклатура.НаименованиеНаименование
Материалы[].КоличествоnumberКоличествоКоличество
Материалы[].ЕдиницаИзмеренияstringЕдиницаИзмеренияЕдиница измерения

HTTP-коды

КодКогдаТело
200Запрос обработан{ "data": [...], "errors": [...] }
500Непредвиденная ошибка на стороне 1С{ "error": "текст ошибки" }

Массив errors при 200 не означает полный провал: data может содержать найденные документы, а в errors — проблемы с отдельными требованиями (например, не удалось собрать Материалы при full=true).

Примечания

  • Фильтры from/to работают по дате документа.
  • Параметр full не требует code — полная ТЧ возвращается для всех документов в выборке.
  • При ошибке чтения ТЧ при full=true документ остаётся в data, а Материалы подставляется как сводка «N позиций».
  • Без параметров возвращаются все требования-накладные (с учётом прав публикации 1С).
  • Ответ содержит заголовок Access-Control-Allow-Origin: *.