Получить спецификации номенклатуры
HTTP-сервис specifications, метод GetSpecifications. Возвращает элементы справочника Спецификации номенклатуры (Справочник.СпецификацииНоменклатуры) — не группы, без пометки на удаление — с данными из ТЧ ИсходныеКомплектующие и датой поставки из ЭтапыПоставок.
Endpoint
GET /main/hs/specifications/get
Параметры запроса
Все параметры опциональны. Читаются из query string (ПараметрыЗапроса) или из URL-шаблона (ПараметрыURL).
| Параметр | Тип | Описание |
|---|---|---|
code | string | Фильтр по коду спецификации. Поиск ПОДОБНО |
name | string | Фильтр по наименованию спецификации. Поиск ПОДОБНО. Символ / передавайте как _slash_ |
material | string | Фильтр по материалу (код или наименование номенклатуры в ТЧ). Поиск ПОДОБНО. Символ / — как _slash_ |
ngroup | string | Фильтр по номенклатурной группе материала в ТЧ. Поиск ПОДОБНО |
year | string | Фильтр по году плановой даты поставки (ЭтапыПоставок.ДатаПоставкиПлан). Год из 2 цифр трактуется как 20XX |
month | string | Месяц внутри year (1–12). Требует параметр year |
full | boolean | Расширенный режим. Истина: 1, true, yes, да. Требует один из ключей: code, name, material, ngroup |
Период year / month
- Только
year— весь календарный год (1 января — 31 декабря). year+month— указанный месяц (с первого по последний день).- Спецификация попадает в выборку, если у неё есть этап поставки с
ДатаПоставкиПланв этом диапазоне.
Когда раскрывается ТЧ материалов
Полный массив Материалы (и поле СуммаМатериалов) возвращается, если выполняется любое из условий:
full=trueи заданcodeилиname;- задан
material(даже безfull); - задан
ngroup(даже безfull).
Иначе вместо массива — сводка вида "12 позиций".
При full=true без code, name, material и ngroup в errors добавляется сообщение, но HTTP-код остаётся 200.
При month без year — аналогично ошибка в errors.
Примеры запросов
GET /main/hs/specifications/get
GET /main/hs/specifications/get?name=СП-DEMO-07
GET /main/hs/specifications/get?code=ДК-00001008
GET /main/hs/specifications/get?material=бетон
GET /main/hs/specifications/get?ngroup=Строй
GET /main/hs/specifications/get?year=2025&month=3
GET /main/hs/specifications/get?name=02_slash_25%20DEMO&full=true
GET /main/hs/specifications/get?code=ДК-00001008&full=true
Формат ответа
Базовый ответ
{
"data": [
{
"Код": "ДК-00001008",
"ДатаУтверждения": "10.01.2025",
"Ответственный": "Сидоров С.С.",
"Наименование": "Комплект DEMO-K7",
"ДатаПоставки": "15.03.2025",
"СтоимостьРабот": 500000,
"СтоимостьТранспорт": 120000,
"СтоимостьНакладные": 80000,
"СтоимостьАрендаСпецТехники": 45000,
"СтоимостьТехнологическиеПрисоединения": 0,
"СтоимостьПроектныеРаботы": 150000,
"Материалы": "24 позиции"
}
],
"errors": []
}
ДатаПоставки — минимальная ДатаПоставкиПлан по этапам поставки спецификации.
Расширенный ответ (полный список материалов)
{
"data": [
{
"Код": "ДК-00001008",
"Наименование": "Комплект DEMO-K7",
"ДатаПоставки": "15.03.2025",
"СтоимостьРабот": 500000,
"Материалы": [
{
"Код": "ЗК-00002015",
"Материал": "Смесь DEMO-M300",
"Количество": 12.5,
"Единица": "м3",
"Цена": 4500,
"Сумма": 56250,
"НоменклатурнаяГруппа": "Стройматериалы"
}
],
"СуммаМатериалов": 56250
}
],
"errors": []
}
СуммаМатериалов — итог по строкам ТЧ: для каждой строки берётся Сумма, если она не ноль; иначе Количество × Цена.
Поля ответа
Шапка спецификации
| Поле | Тип | Источник в 1С | Описание |
|---|---|---|---|
data | array | — | Массив спецификаций |
data[].Код | string | Код | Код спецификации |
data[].ДатаУтверждения | string | ДатаУтверждения | Дата (ДД.ММ.ГГГГ) или пустая строка |
data[].Ответственный | string | Ответственный | Ответственный |
data[].Наименование | string | Наименование | Наименование |
data[].ДатаПоставки | string | ЭтапыПоставок | Минимальная плановая дата поставки (ДД.ММ.ГГГГ) или пустая строка |
data[].СтоимостьРабот | number | СтоимостьРабот | Стоимость работ |
data[].СтоимостьТранспорт | number | СтоимостьТранспорт | Стоимость транспорта |
data[].СтоимостьНакладные | number | СтоимостьНакладные | Накладные расходы |
data[].СтоимостьАрендаСпецТехники | number | СтоимостьАрендаСпецТехники | Аренда спецтехники |
data[].СтоимостьТехнологическиеПрисоединения | number | СтоимостьТехнологическиеПрисоединения | Технологические присоединения |
data[].СтоимостьПроектныеРаботы | number | СтоимостьПроектныеРаботы | Проектные работы |
data[].Материалы | string / array | ТЧ ИсходныеКомплектующие | Сводка «N позиций» или массив строк (см. ниже) |
data[].СуммаМатериалов | number | расчёт | Итог по материалам. Только при полном списке Материалы |
errors | array | — | Ошибки валидации параметров |
Строка ТЧ Материалы (только при полном списке)
| Поле | Тип | Источник в 1С | Описание |
|---|---|---|---|
Материалы[].Код | string | Номенклатура.Код | Код номенклатуры |
Материалы[].Материал | string | Номенклатура.Наименование | Наименование |
Материалы[].Количество | number | Количество | Количество |
Материалы[].Единица | string | ЕдиницаИзмерения | Единица измерения |
Материалы[].Цена | number | Цена | Цена |
Материалы[].Сумма | number | Сумма | Сумма строки |
Материалы[].НоменклатурнаяГруппа | string | Номенклатура.НоменклатурнаяГруппа | Номенклатурная группа |
HTTP-коды
| Код | Когда | Тело |
|---|---|---|
| 200 | Запрос обработан | { "data": [...], "errors": [...] } |
| 500 | Непредвиденная ошибка на стороне 1С | { "error": "текст ошибки" } |
Примечания
- Фильтр
materialприfull=trueищет по всей ТЧ (подзапрос); безfull— по строкам в соединении запроса. - Фильтр
ngroupведёт себя аналогичноmaterialотносительноfull. - Пустые числовые поля стоимости и сумм в ответе приходят как
0. - Ответ содержит заголовок
Access-Control-Allow-Origin: *.