TGViewer
Channel Public Channel
1С и AI, полезные инструменты и сервисы, стандарты и паттерны

1С и AI, полезные инструменты и сервисы, стандарты и паттерны

@usefultools1c

1С и AI - инструменты и сервисы, стандарты разработки и паттерны, нейронки, cursor, mcp, docker, шаблоны кода и т.д.
Обратная связь, публикации: @usefultools1c_bot
Subscribers
2.25K
Photos
66
Videos
11
Links
144
Recent Posts 16 shown
Post #231 385
📚 Программа A&PM EVENT 2026 готова!

Можно открывать и выбирать, на что идти 12–14 ноября.

➡️ 70% программы – практика:
Мастер-классы, тренинги, круглые столы, деловые игры и управленческие поединки.

➡️
Остальные 30%:
Доклады с реальными кейсами, рабочими инструментами и разбором ошибок.

В программе пять секций:

🟢прикладные навыки аналитика
🟢инструменты аналитика
🟢архитектура, учет и автоматизация на 1С
🟢управление проектами и продуктами
🟢soft skills и управление командой

Конечно, поговорим про тренды в ИИ, работу с требованиями и документацией, Data-Driven, Docs-as-Code, архитектуру, изменения, риски и сложные разговоры с заказчиками.


На мастер-классах и тренингах можно сразу попробовать новый подход, на деловых играх – принять решение, на круглых столах – сравнить свой опыт с опытом коллег.

➡️ СМОТРЕТЬ ПРОГРАММУ
📍12–14 ноября, Санкт-Петербург


До 1 октября действует текущая цена на билеты. Потом она вырастет.
Post #230 573

Forwarded from Стандарты 1С v8std

Самодостаточность регистров

🟡 При проектировании структуры регистров придерживайтесь правила: регистр должен быть логически независим от регистраторов.

🟡 Для работы должно быть достаточно данных самого регистра.

🟡 Любая логика по данным регистра и любые отчеты по нему не должны обращаться к полям регистратора.

🟡 Кроме того, в распределенной информационной базе регистратора может не быть: движения регистров могут мигрировать между узлами, а регистраторы - нет.

#std477
https://v8std.ru/std/477/
Стандарты разработки 1С Самодостаточность регистров #std477 При проектировании структуры регистров придерживайтесь правила: регистр должен быть логически независим от регистраторов.
  • 👍 2
Post #228 700
🍁 Программа INFOSTART TECH EVENT 2026 полностью готова!

Если вы работаете с 1С и хотите понять, какие технологии и подходы уже реально применяют другие команды, 8–10 октября в Санкт-Петербурге пройдет INFOSTART TECH EVENT 2026.

В этом году в программе:

✔️ 7 секций: разработка, DevOps, HighLoad, интеграции, QA, новые технологии и управление техническими командами

✔️ 80% программы про технологии и инженерную практику, еще 20% – про команды и личную эффективность

✔️ ИИ, MCP, 1С:Элемент, архитектура, производительность, инфраструктура, тестирование и другие задачи, с которыми специалисты сталкиваются каждый день

А вот несколько докладов, чтобы понять масштаб тем:

🔥 «AI-ассистент для 1С:Элемент: как специализированные скиллы автоматизируют создание приложений» – Павел Королев

🔥 «Повышение эффективности разработки с помощью ИИ. Хайп или реальность?» – Владимир Конырев

🔥 «Разработка на 1С без конфигуратора и EDT» – Иосиф Правец

🔥 «Чат вместо форм: бизнес-автоматизация 1С на базе ИИ и MCP-серверов» – Владимир Харин

🔥 «DWH FROM MY HEART: Почему 1С „все в одном“ не тянет ИИ и как построить Lakehouse для LLM-агентов» – Сергей Андреев

🔥 «Плагины для 1С:Элемент. Кастомизируем IDE без смс и регистрации» – Александр Волков

🔗 СМОТРЕТЬ ВСЮ ПРОГРАММУ

📆 Расписание на все три дня тоже уже опубликовано. Можно заранее выбрать обязательные доклады, посмотреть соседние потоки и собрать собственный маршрут по конференции.

🔗 СМОТРЕТЬ РАСПИСАНИЕ

А еще TECH EVENT – это возможность задать вопросы докладчикам и экспертам, сравнить свой опыт с практикой других команд и вернуться на работу с конкретными идеями, что можно улучшить или попробовать у себя.

❤️ Зовите коллег и приезжайте вместе – так не только веселее, но и выгоднее.

1. Командное участие – скидка до 20%
Отправляйте двух и более сотрудников и платите от 5 до 20% меньше.

2. Билет «2 в 1» со скидкой 10%
Сразу на TECH EVENT 2026 и A&PM EVENT 2026.

🔗 КУПИТЬ БИЛЕТ
Post #227 783

Forwarded from Жёлтым по белому

Пока искал себе стажёров-программистов 1С, вспомнил, что у меня есть 2 бесплатных курса по 1С.
Вдруг среди вас затесалась молодёжь, бывает же такое.

Один я снимал как раз для стажёров - тех, кто немного умеет программировать, и хочет въехать в 1С (синтаксис, среда, суть работы). Он прям нулевой, начинается с "что откуда скачать". Называется "Подготовишка 1С", лежит в плейлисте https://vkvideo.ru/playlist/-208482299_9

Второй я снял на грант от 1С - мы тогда победили в конкурсе "Новое поколение 1С", и вписались сделать, цитирую: "Практико-ориентированный курс для начинающих программистов 1С. Видеоуроки в открытом доступе с задачами, максимально близкими к реальной жизни, с разбором правильных и неправильных примеров.". Результаты конкурса, кстати, тут - https://1c.ru/newgen2024/winners.jsp (мотайте в самый низ, там будет Первый Бит Челябинск).

А сам курс лежит здесь - https://vkvideo.ru/playlist/-208482299_3
  • 👍 10
Post #226 782

Forwarded from Никита Арипов | 1С, DevExp (Никита Арипов)

Большой опрос сообщества 1С

Ландшафт технологий 1С - карта инструментов, которыми пользуется сообщество

Но мнения экспертов для такой карты недостаточно. Хочется понимать реальное положение дел: с чем работают каждый день, о чем только слышали, к каким инструментам готовы вернуться, а какие больше не выберут

В июле проверили идею на базовых инструментах. Предварительный этап прошли 247 человек. Настало время ежегодного большого опроса по всему ландшафту

Бот спросит вашу роль и подберет подходящие инструменты. По каждому нужно ответить на два коротких вопроса. Опрос займет от 15 минут, но его можно поставить на паузу и продолжить позже

Пройти опрос
@stateOf1c_bot

Результаты появятся на отдельной странице и прямо в карточках инструментов. Там же уже можно посмотреть итоги предварительного этапа

Если вы работаете с 1С - проходите и отправляйте коллегам

Чем больше будет ответов от разработчиков, аналитиков, тестировщиков и администраторов, тем точнее получится Ландшафт 1С

Буду благодарен за репосты и упоминания - они помогут собрать ответы от самых разных участников сообщества
  • 👍 2
Post #221 1.19K

Forwarded from Прусаков Никита | Про 1С

🚀 Как провести документ и не «повесить» интерфейс

Серфил тут по одной конфигурации и наткнулся на интересный подход, которого раньше не встречал: проведение документа из формы запускается как длительная операция.

⏱️ В чём проблема?

Полагаю, все знают, что документ, который проводится 20 секунд и дольше, — не самый удачный сценарий.
Особенно в веб-клиенте, где требования к времени отклика выше, чем в тонком клиенте. Если серверный вызов выполняется слишком долго, соединение клиента с информационной базой может быть разорвано.

В рекомендациях 1С приводятся примерно такие значения:

• около 20 секунд — для большинства браузеров и веб-серверов;

• около 8 секунд — для некоторых браузеров.

Поэтому серверные вызовы, которые могут выполняться дольше 8 секунд, рекомендуется запускать асинхронно — через фоновое задание.

А для конфигураций, работающих в модели сервиса через веб-клиент, требования ещё строже: отклик должен укладываться примерно в 2–3 секунды.

⚙️ И вот как это решили в конфигурации

В форме документа стандартное проведение заменили запуском длительной операции.

Документ проводится в фоне, а после завершения операции форма получает результат и обновляется.

🛠 Получается примерно такая схема:

1️⃣ Переопределяем стандартные команды формы: Записать, Провести и Провести и закрыть.

2️⃣ При выполнении команд Провести или Провести и закрыть сериализуем объект документа в двоичные данные и помещаем их во временное хранилище.

3️⃣ Передаём адрес временного хранилища в фоновое задание. Там восстанавливаем объект из двоичных данных и проводим его.

4️⃣ После завершения фонового задания возвращаем результат на клиент и при необходимости обновляем или закрываем форму.

✅ Что получаем в итоге?

Пользователь не смотрит на зависший экран и может заняться чем-то ещё, пока документ проводится.

⚠️ Конечно, есть нюансы: нужно обработать ошибки проведения, защититься от повторного нажатия команды и правильно обновить состояние формы после завершения операции.

Сам документ от этого быстрее проводиться не станет. Но для пользователя, особенно в веб-клиенте, работа будет выглядеть гораздо приятнее.

До этого фоновые операции я обычно встречал в обработках и отчётах, при заполнении табличных частей, а вот проведение документа в фоне из формы увидел впервые.

А вы встречали такой подход?
  • 👍 6
Post #220 694

Forwarded from Стандарты 1С v8std

Использование ключевых слов "ОБЪЕДИНИТЬ" и "ОБЪЕДИНИТЬ ВСЕ" в запросах

🟡 В общем случае при объединении результатов нескольких запросов используйте ОБЪЕДИНИТЬ ВСЕ, а не ОБЪЕДИНИТЬ.

🟡 Исключение: ситуации, когда удаление дубликатов является обязательным условием корректного результата запроса.

🟡 Причина: ОБЪЕДИНИТЬ удаляет полностью одинаковые строки, и это требует дополнительного времени даже тогда, когда одинаковых строк заведомо быть не может.

🟡 Проверяйте соблюдение стандарта при доработках и перед выпуском релиза.

#std434
https://v8std.ru/std/434/
Стандарты разработки 1С Использование ключевых слов "ОБЪЕДИНИТЬ" и "ОБЪЕДИНИТЬ ВСЕ" в запросах #std434 В общем случае при объединении результатов нескольких запросов используйте ОБЪЕДИНИТЬ ВСЕ, а не ОБЪЕДИНИТЬ.
  • 👍 1
Post #216 993

Forwarded from Коротко о Джонни

1с. Комьюнити лицензия на macOS. Столкнулся еще раз. Думаю таки актуально.
Удалить файлы предыдущих лицензий.
Удалить 1cv8/1C/1Cv8/1cv8conn.pfl

В терминале

sudo /Applications/1cv8.localized/{Ваша версия}/1cv8.app/Contents/MacOS/1cv8

Если я правильно понимаю то приложение 1с по умолчанию не имеет доступа к папке с лицензиями.
Далее получаем комьюнити как обычно.
Profit!
  • 👍 6
Post #215 852

Forwarded from Стандарты 1С v8std

Ограничения на использование вложенных запросов в условии соединения

🟡 Рекомендуемый подход - вынести вычисления во временную таблицу и затем соединять уже готовый результат.

🟡 Типовой проблемный сценарий: в условии соединения используется вложенный запрос, чтобы получить «срез последних» на конец предыдущего периода, причем для каждой номенклатуры период может отличаться.

🟡 Это может существенно замедлить запрос и в ряде случаев сделать его неработоспособным на отдельных СУБД.

🟡 Проверяйте соблюдение стандарта при доработках и перед выпуском релиза.

#std656
https://v8std.ru/std/656/
Стандарты разработки 1С Ограничения на использование вложенных запросов в условии соединения #std656 Не используйте вложенные запросы в условии соединения. Это может существенно замедлить запрос и в ряде случаев сделать его неработоспособным на отдельных СУБД.
  • 👍 3
Post #214 845

Forwarded from Bear's Rambles | МЕДВЕДЬ ГОВОРИТ...

Бил бы по рукам, да все линейки уже сломаны.

Поговорим о запросах. Точнее о том, как их надо писать, если хотите довести коллег до состояния старого чайника, который давно не мыли. С накипью.

1️⃣ Тянуть данные через весь запрос.

Если какое-то поле от ссылочного типа нужно в итоговом результате большого запроса, выберите его сразу, поместите во временную таблицу и перетаскивайте через каждое следующее использование - не дай бог к концу написания запроса забудется, какие именно поля нужны. А так - всегда перед глазами.

2️⃣Используйте для выражения замены в ЕСТЬNULL то, что может быть NULL или вообще вызвать ошибку.

К примеру, надо получить цену из какого-то регистра. Но ведь по соединению может получится так, что цена не найдена. Что тогда говорит насмотренность в таком случае: для левых соединений с негарантированным результатом, то есть вообще для всех, надо использовать функцию ЕСТЬNULL(ДанныеРегистра.Цена, ВыражениеЗамены)

Но тут пытливый мозг говорит: а почему 0? ведь если в регистре её нет, это не значит, что цены не существует, её же можно ещё рассчитать! И рождается великолепное ЕСТЬNULL(ДанныеРегистра.Цена, ДанныеДокумента.Сумма/ДанныеДокумента.Количество)

Никаких проблем, ведь пользователи же всегда стабильны в своём поведении, а значит количество чего-то всегда будет больше нуля. Мы не будем проверять это отдельно, потому что это трата ресурсов, сравнение числа с нулем съедает их просто невероятно.

3️⃣Используйте ВЫБРАТЬ РАЗЛИЧНЫЕ чтобы скрыть тот факт, что Ваше соединение - говно.

Вы же не дураки и знаете: если запрос возвращает несколько одинаковых записей, значит нужно выбрать только те, что уникальные. Не беда, что скля потратит ресурс сначала на лишнюю выборку, потом на удаление дублей. Мы ж как раз сэкономили на проверке количества.

Да и в конце концов не бывает же такого, что пользователь захочет вывести ещё какое-нибудь дополнительное поле, особенно из тех, что будут отличаться. Правда ведь?

4️⃣Для получения актуальных сведений используйте соединение с таблицей регистра сведений, а не его среза последних.

Особенно в формах списка. Нужно, чтобы пользователь сразу при открытии понимал, что у документа может быть несколько записей о статусе. Он, правда, сам этого не поймёт, но для этого есть же техподдержка, аналитики и тимлид. Они ему объяснят, что на самом деле сообщение "Обнаружено дублирование ключевых значений в колонках" - это не баг, а образовательная фича.

А если всё таки идёте против своей природы и обращаетесь к срезу последних - ни в коем случае не покрывайте поля индекса полностью, это для слабаков!

5️⃣Чтобы упростить поиск условий в запросе с большим количеством временных таблиц, накладывайте их, условия, в конце.

Нам не принципиальна выборка лишних данных. В конце концов, не мы же их тянем всё больше и больше с каждым соединением, а машина. А машина, как известно, надорваться не может. Зато все условия в одном месте и очень просто читаются. Профит!

В общем, используйте сами и другим подскажите. Только не долго, новые линейки уже заказал.

#медвежийкодстайл
  • 👍 9
Post #213 677

Forwarded from Антон Дорошкевич | маяк в мире 1С и СУБД

Настройка параметров ibcmd в режиме replicate, а так же СУБД транслятора и СУБД приёмника для оптимальной скорости

Казалось бы, миграция базы 1С с помощью ibcmd и так происходит очень быстро, гораздо быстрее чем выгрузка/загрузка dt.
Но даже эту скорость можно существенно повысить и дальше расскажу как.

Начнём с настроек параметров ibcmd в режиме replicate при сценарии миграции базы с MS SQL на PostgreSQL как самом распространённом:

▫️ Количество потоков чтения (--jobs-count) Значение по умолчанию: количество логических ядер процессора компьютера, на котором исполняется ibcmd.

Несколько моментов, которые стоит учесть при подборе начального значения --jobs-count:

1. Утилита ibcmd ограничена одной NUMA, т.е. если у вас на сервере 48 ядер и 2 NUMA, то максимально утилита сможет занять только 48/2=24 ядра.
2. Это потоки на чтение, а есть же ещё и потоки на запись, поэтому для начала нужно поделить наши 24 ядра ещё на 2 и получим уже 12.
3. Поскольку это чтение, то точно имеет смысл включить параллелизм на MS SQL увеличив параметр MAXDOP. А вот насколько его увеличивать тут надо посчитать.
Опять же, если у нас на сервере СУБД 96 ядер, а мы читаем в 12 потоков, то нужно 96/12=8.

▫️ Количество потоков записи (--target-jobs-count) Значение по умолчанию: количество логических ядер процессора компьютера, на котором исполняется ibcmd.

Что нужно учесть при подборе параметра --target-jobs-count:

1 и 2 пункты те же самые что и у --jobs-count, т.е. в итоге получим 12
3. Поскольку это запись, то она всегда однопоточная на СУБД, но после записи у нас начнут создаваться индексы, а PostgreSQL нам позволяет распараллеливать именно эту операцию указывая параметр max_parallel_maintenance_workers (максимальное число рабочих процессов, для CREATE INDEX) и при этом не забываем что «сверху» число параллельных процессов ограничено параметром max_parallel_workers.
Соответственно при 96 ядрах на СУБД PostgreSQL и 12 потоков записи у ibcmd нам можно указать 96/12= 8 у max_parallel_maintenance_workers и max_parallel_workers = 96.

Так же будет очень полезно увеличить параметры work_mem (оперативная память на сеанс для операций ORDER BY) до 2-4 ГБ и maintenance_work_mem (Лимит памяти для CREATE INDEX) до 4-8 ГБ.
Учитывая, что у нас 12 потоков, то 12*4*8 = 384ГБ и это может быть максимум 50% всей доступной оперативной памяти.

▫️ Количество строк в порции данных (--batch-size) Количество строк в порции данных, используемой при репликации таблицы. Значение по умолчанию: 10 000

Казалось бы, ну а тут то что ещё считать, 10 000 вроде должно хватить всем?
Подбор этого параметра можно осуществить только тестами миграции и чтением лога PostgreSQL, в котором фиксируем операции длительнее 0,5 сек (log_min_duration_statement = 500ms) сравниваем скорость записи при умолчательном параметре 10 000, а затем увеличивая его на те же 10 000 пока скорость не начнёт падать.
У нас на серверах этот параметр получился оптимальным по скорости при значении 50 000.

▫️ Объем пакета данных (в байтах) (--batch-data-size). Значение по умолчанию: 10 485 760.
Ну и в целом похожий по смыслу на параметр --batch-size, только теперь в объёме памяти, а не количестве строк. Тут к сожалению, только подбор замером времени полной миграции при разных параметрах.
Опять же у нас оптимальным вышло увеличение и этого параметра в 5 раз до значения 52 428 800.

❗️Напомню, что по моему убеждению большая у вас база или нет определяется не её размером, а размером тех. окна и успеваете ли вы в это тех. окно сделать нужные вам монопольные операции или нет.
Миграция с СУБД на СУБД это одна из самых "больных" операций в части тех. окна и подбор параметров как ibcmd так и обоих, участвующих в этом процессе серверов СУБД может существенно и даже на порядок сократить это самое тех. окно.

Ну и на всякий случай канал в MAX https://max.ru/explorer1c
  • 👍 2
Post #212 873

Forwarded from Стандарты 1С v8std

Автоформатирование кода 1С

Не все нарушения стандартов обязательно исправлять вручную. Обработка «Автоформатирование кода и локализация» умеет автоматически применять 34 преобразования: форматировать код, исправлять структуру модулей, комментарии, локализацию и другие элементы конфигурации.

Мы сопоставили автозамены с конкретными пунктами стандартов. Теперь возле поддерживаемых пунктов отображается тег autoformat со ссылкой на инструкцию.

В ней собраны:

— получение обработки с ИТС;
— пакетный запуск;
— работа с файловой и серверной базой;
— XML-выгрузка и проект EDT;
— получение и фиксация изменений в хранилище;
— настройка отбора стандартов и отдельных пунктов.

Подробнее: https://v8std.ru/diagnostics/autoformat/
  • 👍 4
Older posts →

About this channel

How can I read @usefultools1c without a Telegram account?
TGViewer shows the public web preview Telegram publishes for 1С и AI, полезные инструменты и сервисы, стандарты и паттерны: recent posts, photos, videos and the subscriber count, with no app, login or account.
How many subscribers does 1С и AI, полезные инструменты и сервисы, стандарты и паттерны have?
1С и AI, полезные инструменты и сервисы, стандарты и паттерны (@usefultools1c) has 2.25K subscribers on Telegram, refreshed roughly every 30 minutes.
Does 1С и AI, полезные инструменты и сервисы, стандарты и паттерны know I viewed it here?
No. Public channel previews carry no viewer identity, and TGViewer has no accounts or tracking of what you look up.
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →