Нейросеть агент для 1С: запрос к остаткам без программиста
Нейросеть агент для 1С пишет запросы, которые не дают стандартные отчёты. Как владелица магазина получила запрос к остаткам с ценами в LibraChat и что проверила.
О
Ольга
Основатель малого бизнеса, партнёр LibraChat
7 мин чтения
За простой отчёт по остаткам с ценами я когда-то заплатила программисту 1С 4 500 рублей и ждала три дня. В этот раз запрос написала нейросеть за пару минут, а бухгалтер вставил его в консоль и получил ту же таблицу. Если ты ищешь «нейросеть агент для 1с», чтобы не звать специалиста ради каждой выборки, ниже моя история, настоящий запрос из LibraChat с объяснением каждой строки и то, что обязательно проверить перед тем, как верить цифрам.
Как я переплачивала за простые отчёты
У меня магазин товаров для дома и склад на две тысячи позиций. Учёт в 1С, бухгалтер на аутсорсе. Стандартные отчёты есть, но каждый раз чуть не то, что нужно. Мне нужна была одна таблица: что лежит на основном складе, сколько штук и по какой цене мы это продаём. Без нулевых остатков, по алфавиту.
Бухгалтер сказал, что такого отчёта «из коробки» нет, нужен запрос. Я позвала программиста. Он сделал за три дня и выставил счёт на 4 500 рублей. Через месяц мне понадобилось то же самое, но с другим складом. Ещё один счёт.
Раньше я считала это нормальной платой за учёт. Тогда я поняла, что плачу не за сложную работу. Я плачу за то, что не знаю языка, на котором 1С отвечает на вопросы.
Что я вынесла: нейросеть-агент для учёта начинается с точного вопроса
Первое желание было найти «агента», который сам залезет в мою 1С и всё сделает. Такие решения существуют, но это отдельная разработка: подключение к базе, права доступа, проверка. Для моего масштаба дорого и рискованно.
Мне хватило другого. Нейросеть не нужно пускать в базу. Ей нужно правильно описать, что я хочу увидеть. Запрос она напишет, а выполнит его бухгалтер в консоли запросов 1С, где есть все права.
Три правила, которые я теперь держу:
Описываю результат как таблицу: какие колонки, какие строки, какая сортировка.
Называю конфигурацию и версию платформы: от этого зависят имена регистров.
Прошу объяснить каждую часть запроса, чтобы бухгалтер мог проверить логику.
Нейросеть агент для 1С: какой запрос я отправила
Вот запрос в LibraChat целиком:
Напиши запрос на языке запросов 1С:Предприятие 8.3: остатки товаров на складе «Основной» на текущую дату вместе с последней ценой из регистра сведений «Цены номенклатуры», только позиции с остатком больше нуля, отсортировать по наименованию. Объясни каждую часть запроса простыми словами.
Ответ начался с оговорки, которую я сначала пропустила, а зря:
Если в вашей конфигурации регистр остатков называется иначе, замените только это имя — логика та же.
Дальше шёл сам запрос, на полтора десятка строк, и разбор по частям. Каждая конструкция объяснена одной-двумя фразами. Вот что из объяснения было самым полезным для меня, человека без технического образования.
Разбор запроса: что делает каждая часть
Часть запроса · Что делает, как это объяснил LibraChat
ВЫБРАТЬ — список колонок: товар, наименование, остаток, цена
Остатки на «ТоварыНаСкладах» — платформа сама считает остаток на момент запроса
пустая первая скобка — период не задан, значит остаток на сейчас
отбор по складу «Основной» — считаются только остатки этого склада
ЛЕВОЕ СОЕДИНЕНИЕ со срезом цен — к каждому остатку приклеивается последняя цена
ГДЕ остаток больше нуля — нулевые и отрицательные остатки отбрасываются
УПОРЯДОЧИТЬ ПО Наименование — сортировка по имени товара
Про левое соединение было сказано то, что я бы спросила у программиста последней: товар остаётся в списке, даже если цены у него ещё нет, тогда в колонке «Цена» будет пусто. Для меня это не мелочь. Пустая цена в списке — это товар, который лежит на складе и не продаётся. Я нашла таких одиннадцать.
Одиннадцать товаров без цены
Про пустые цены расскажу отдельно, потому что это оказалось самым денежным результатом всей истории. Одиннадцать позиций лежали на складе, но в регистре цен для них не было розничной цены. Значит, на кассе их нельзя было пробить без ручного ввода, а в интернет-магазин они не выгружались вовсе.
Я проверила по закупочным документам. Это была партия кухонного текстиля, которую приняли летом и забыли назначить цену. Около 38 000 рублей по закупке просто лежали на полке четыре месяца. Покупатели спрашивали, продавцы отвечали «нет в наличии», потому что не видели товар в системе.
Цены мы назначили в тот же день. Первые позиции ушли через неделю. Один этот запрос окупил всё время, которое я потратила на разговор с нейросетью и бухгалтером, примерно в десять раз.
Я не искала эти товары. Я просила таблицу остатков. Но левое соединение, о котором подробно написали в ответе, показало дыру, которую стандартный отчёт прятал.
Как я теперь описываю таблицу для запроса
Описание я пишу по одному шаблону. Это мой текст, а не ответ нейросети, но он сильно влияет на то, какой запрос придёт:
откуда данные: какой склад, какой регистр, если знаю;
просьба объяснить каждую часть, чтобы бухгалтер мог проверить.
Я попробовала однажды написать короче, просто «остатки с ценами». Бухгалтер вернулся с вопросами: какой склад, какая цена, нужны ли нули. Эти вопросы он задал бы и программисту. Лучше ответить на них заранее, в самом запросе.
Где я ошиблась бы без подсказок из ответа
В конце ответа было два предупреждения, и оба сработали на моей базе.
Первое: если в регистре цен есть вид цены, одна позиция может повториться несколько раз, по разу на каждый вид. У нас три вида: закупочная, розничная, оптовая. Без отбора каждый товар появился бы в таблице трижды, и я бы решила, что остатков втрое больше. Бухгалтер добавил условие на розничную цену, как и подсказывал ответ.
Второе: имя ресурса остатка зависит от конфигурации. У нас оно совпало, но я теперь знаю, что смотреть, если запрос вдруг вернёт ошибку.
Мой список проверки перед тем, как верить таблице:
сверить остаток по трём-четырём товарам с карточкой товара в 1С;
посмотреть, не повторяются ли позиции;
найти товары с пустой ценой и разобраться, почему её нет;
сравнить общее число строк с тем, сколько позиций на складе по ощущениям.
На всё это у бухгалтера ушло минут 20. Для запроса, по которому я буду заказывать товар, это небольшая цена. Запрос заработал со второго раза: первый раз мы забыли условие по виду цены.
Нейросеть-агент для 1С в моей работе теперь
Теперь каждый новый отчёт начинается с описания таблицы. Я пишу, что хочу увидеть, отправляю в LibraChat, отдаю бухгалтеру запрос с объяснением. Если что-то не так, бухгалтер возвращается в тот же чат и пишет, что именно выдала консоль.
Теперь о том, где проходит граница. LibraChat не подключается к моей базе и не видит моих данных. Он пишет запрос по описанию. Выполняет его человек с доступом, и он же отвечает за то, что цифры верные. Если тебе нужен агент, который сам работает внутри 1С, это разработка, и делают её программисты. Для такой разработки у LibraChat есть доступ по API с отдельным балансом, но это уже задача для команды, а не для владельца магазина.
Сколько раз за год ты звала специалиста ради одной выборки из 1С? Умножь на средний счёт. У меня выходило 5–6 раз в год по 4 500 рублей. Теперь это примерно один вызов в год, на действительно сложную задачу.
Попробуй на своём отчёте. Опиши таблицу, которую хочешь увидеть, назови версию платформы и попроси объяснить каждую часть. Отправь в чат LibraChat и отдай результат бухгалтеру вместе с моим списком проверки. Что дают тарифы, если таких задач много, видно на странице тарифов LibraChat.
нейросеть агент для 1с1Сязык запросовостатки на складемалый бизнесучёт