Latest posts

1C Portal | Программирование
22 Sept, 16:07
Заметил интересный кейс на Хабре: как обезличить базу 1С на 646 ГБ без создания промежуточной копииПри разработке и тестировании часто нужна копия рабочей базы. Но вместе с ней разработчикам или подрядчикам могут попасть реальные данные сотрудников, клиентов и коммерческая информация.Автор показывает, как решить эту задачу с помощью pg_anon — бесплатной утилиты для PostgreSQL, которая маскирует данные прямо во время создания дампа. Исходная база при этом не изменяется, а промежуточная копия с открытыми данными не создаётся.Что интересного:🟡 как настроить поиск персональных и коммерческих данных по правилам и регулярным выражениям; 🟡 почему при обезличивании 1С нельзя без разбора изменять GUID и служебные поля; 🟡 как проверить найденные поля до запуска маскирования;


1C Portal | Программирование
22 Sept, 06:07
Быстрый совет по 1СЕсли нужно выполнить несколько запросов с использованием одной временной таблицы, не обязательно каждый раз передавать её данные через параметры или создавать заново.Используйте один МенеджерВременныхТаблиц для нескольких объектов Запрос: МенеджерВТ = Новый МенеджерВременныхТаблиц;Запрос1 = Новый Запрос; Запрос1.МенеджерВременныхТаблиц = МенеджерВТ; Запрос1.Текст = "ВЫБРАТЬ | Товары.Ссылка КАК Товар |ПОМЕСТИТЬ ВТ_Товары |ИЗ | Справочник.Номенклатура КАК Товары";Запрос1.Выполнить();// Используем ту же временную таблицу в другом запросе
1C Portal | Программирование
21 Sept, 16:07
Псевдонимы источников данных в запросах🟡 Для универсальных механизмов, работающих с произвольными таблицами, допустимы универсальные псевдонимы.🟡 Закрепите ключевые правила стандарта «Псевдонимы источников данных в запросах» в code review и внутренних чек-листах.🟡 Для спорных случаев фиксируйте выбранный подход в комментариях к коду и документации.🟡 Проверяйте соблюдение стандарта при доработках и перед выпуском релиза.https://v8std.ru/std/758/@Portal_1C


1C Portal | Программирование
21 Sept, 06:07
Полезный репозиторий для 1С-разработчиков: автоматизация публикации баз на веб-сервереНаткнулся на webpub1c — утилиту, которая позволяет управлять веб-публикациями информационных баз 1С на Apache из командной строки. Пригодится, если приходится регулярно поднимать тестовые базы или автоматизировать развёртывание окружений.Что умеет: 🟡 создавать и удалять веб-публикации баз 1С; 🟡 выводить список существующих публикаций; 🟡 хранить параметры публикаций в YAML-конфигурации; 🟡 работать с конфигурацией Apache и файлами .vrd; 🟡 использоваться в скриптах автоматизации вместо ручной настройки каждой публикации.Небольшой, но практичный инструмент для тех, кто сопровождает несколько баз 1С и хочет сократить количество ручных


1C Portal | Программирование
20 Sept, 16:07
Наткнулся на интересный кейс на Хабре: как разработчик учил ИИ-агента работать с 1С и другими корпоративными системамиАвтор разбирает две реальные задачи: подключение ИИ-агента к базе 1С во внутренней сети через VPN и создание навыка, который добавляет рабочие заметки сотрудников в корпоративную систему. Оказалось, что написать инструмент недостаточно — нужно ещё добиться, чтобы агент вовремя его вызывал, а подключение переживало обрывы связи.Что интересного:🟡 как организовали доступ к 1С через VPN и OData, разделив сетевое подключение и авторизацию в базе;🟡 почему VPN мог успешно подключаться с первого раза, но не восстанавливался после обрыва;🟡 как проверяли повторную авторизацию с помощью отдельного теста;🟡 почему ИИ-агент не вызвал


1C Portal | Программирование
20 Sept, 06:07
Быстрый совет по 1СЕсли нужно проверить, изменились ли данные объекта в базе с момента его чтения, не обязательно вручную сравнивать все реквизиты.У объектов 1С есть метод ПроверитьВерсию(): Объект = СсылкаНаДокумент.ПолучитьОбъект();// Здесь выполняется длительная обработкаЕсли Не Объект.ПроверитьВерсию() Тогда ВызватьИсключение "Документ был изменён другим пользователем"; КонецЕсли;Метод сравнивает версию объекта с актуальной версией в базе. Это полезно в длительных обработках, когда между чтением и записью документа другой пользователь мог успеть его изменить.Важно: проверка не заменяет блокировку при записи — после неё объект всё ещё может измениться.@Portal_1C
1C Portal | Программирование
19 Sept, 16:07
Полезный репозиторий для тех, кто разрабатывает на 1С с использованием БСПНаткнулся на 1C:SSL support — официальное расширение для 1C:EDT, которое упрощает работу с Библиотекой стандартных подсистем. Особенно пригодится тем, кто регулярно использует методы ОбщегоНазначения и хочет получать больше подсказок прямо в редакторе кода.Что умеет:🟡 Подсказывает имена общих модулей, подсистем и реквизитов внутри строковых параметров методов БСП. 🟡 Позволяет переходить к соответствующим объектам по гиперссылке или клавише F3. 🟡 Определяет типы возвращаемых значений для ряда функций БСП в зависимости от переданных параметров. 🟡 Помогает работать с вызовами вроде ЗначениеРеквизитаОбъекта(), ОбщийМодуль() и ТаблицаЗначенийВМассив().Полезная находка для


1C Portal | Программирование
19 Sept, 06:07
@Portal_1C


1C Portal | Программирование
18 Sept, 18:02
Самодостаточность регистров🟡 При проектировании структуры регистров придерживайтесь правила: регистр должен быть логически независим от регистраторов.🟡 Для работы должно быть достаточно данных самого регистра.🟡 Любая логика по данным регистра и любые отчеты по нему не должны обращаться к полям регистратора.🟡 Кроме того, в распределенной информационной базе регистратора может не быть: движения регистров могут мигрировать между узлами, а регистраторы - нет.https://v8std.ru/std/477/@Portal_1C


1C Portal | Программирование
18 Sept, 16:03
Вайбкодим «Полный путь разработки AI-агентов: от MCP до Agentic RAG»Образовательная программа на Stepik по разработке современных AI-агентов.Начинаем с Model Context Protocol: создаём MCP-серверы, подключаем инструменты и внешние API, а затем переходим к разработке Agentic RAG-систем с памятью, рассуждением, поиском знаний и оценкой качества.• Model Context Protocol и MCP-серверы • LangChain, LangGraph, LlamaIndex • API, инструменты, ресурсы и промпты • Классический RAG → Agentic RAG • ReAct, память и планирование • Графы знаний и свои инструменты • Трассировка и подготовка к productionУспей, скидка 20% действует 48 часов↗️ Начать обучение на Stepik


1C Portal | Программирование
18 Sept, 06:07
Быстрый совет по 1СЕсли код выполняется на сервере, не используйте ТекущаяДата() для бизнес-логики, которая должна учитывать время пользователя: Дата = ТекущаяДата();Лучше: Дата = ТекущаяДатаСеанса();ТекущаяДата() на сервере возвращает время серверного компьютера, а ТекущаяДатаСеанса() приводит его к часовому поясу текущего сеанса. Это особенно важно, когда сервер и пользователи находятся в разных часовых поясах — иначе легко получить ошибки на границе дня, месяца или при расчёте периодов.И ещё небольшой бонус: если текущая дата нужна несколько раз в одной процедуре, получите её один раз и сохраните в переменную — это прямо рекомендуется стандартами 1С, чтобы значения внутри одной операции не отличались.@Portal_1C
1C Portal | Программирование
17 Sept, 16:07
Наткнулся на интересный разбор того, как 1С на самом деле работает с временными таблицами в PostgreSQLВ статье подробно разбирают механизм FASTTRUNCATE на уровне платформы и СУБД: как 1С создаёт, очищает и переиспользует временные таблицы, а также что изменилось начиная с платформы 8.3.25.Что интересного:🟡 что происходит в PostgreSQL при ПОМЕСТИТЬ и УНИЧТОЖИТЬ 🟡 зачем 1С вызывает SELECT FASTTRUNCATE 🟡 почему очистка даже пустых временных таблиц может создавать лишнюю нагрузку 🟡 на реальной ERP-базе 32% из почти 5 млн созданных временных таблиц оказались пустыми 🟡 после оптимизации среднее время FASTTRUNCATE в одном из замеров сократилось на 59% 🟡 новые возможности 8.3.25: ДОБАВИТЬ


1C Portal | Программирование
17 Sept, 06:07
onec-setup-action — автоматическая установка 1С:Предприятия и EDT в GitHub ActionsЭто GitHub Action от проекта 1CDevFlow для подготовки окружения 1С прямо внутри CI/CD. Репозиторий сравнительно нишевый, но полезный, если хочется автоматизировать сборки и проверки проекта без ручной подготовки runner'а.Что интересного:🟡 установка 1С:Предприятия в workflow 🟡 установка 1C:EDT 🟡 можно использовать как основу для CI-пайплайнов 1С 🟡 удобно для автоматических сборок, тестов и проверок 🟡 сам проект 1CDevFlow посвящён инструментам автоматизации и CI/CD для разработки на платформе 1С.Хороший репозиторий для тех, кто хочет приблизить разработку на 1С к привычному DevOps-процессу и собирать окружение автоматически.https://


1C Portal | Программирование
16 Sept, 16:07
Копирование строк между таблицами значений (табличными частями и т.п.) произвольной структуры🟡 При копировании строк между разными таблицами значений (табличными частями и т.п.) со схожим составом колонок используйте метод глобального контекста ЗаполнитьЗначенияСвойств().🟡 Такой алгоритм заметно эффективнее, чем многократный перебор колонок для определения состава таблиц.🟡 Для спорных случаев фиксируйте выбранный подход в комментариях к коду и документации.🟡 Проверяйте соблюдение стандарта при доработках и перед выпуском релиза.https://v8std.ru/std/448/@Portal_1C


1C Portal | Программирование
16 Sept, 06:07
Быстрый совет по 1СЕсли большая временная таблица больше не нужна, а МенеджерВременныхТаблиц будет использоваться дальше, её можно удалить явно:УНИЧТОЖИТЬ ВТ_ТоварыВместо того чтобы держать временную таблицу до завершения работы менеджера, освободите её сразу после последнего использования.Особенно полезно в длинных цепочках запросов с несколькими крупными временными таблицами: так ненужные данные не остаются во временном хранилище до конца всей серии запросов.@Portal_1C
1C Portal | Программирование
15 Sept, 14:41
@Portal_1C


1C Portal | Программирование
15 Sept, 06:07
Наткнулся на интересный кейс: как небольшой команде удалось построить полноценный DevOps вокруг 1СВ статье разбирают реальный проект медицинской системы: команда мигрировала с 1С 7.7 на 8.3, а по ходу работы выстроила вокруг разработки Git, код-ревью, автотесты и CI/CD. Причём всё это делалось небольшой командой для системы примерно на 80–100 активных пользователей.Что интересного:🟡 как ушли от хранилища конфигурации к GitLab и веткам 🟡 как связали GitLab, Jenkins и Redmine в единый процесс 🟡 автоматические тесты через Vanessa Automation и vanessa-runner 🟡 проверка кода через SonarQube ещё на этапе изменений 🟡 автоматическая сборка и развёртывание релизов 🟡 зачем EDT оставили


1C Portal | Программирование
14 Sept, 16:07
Настройка расписания регламентных заданий🟡 При разработке регламентных заданий выбирайте время и интервал запуска по прикладному назначению.🟡 Учитывайте, что слишком частый запуск может негативно влиять на производительность сервера 1С:Предприятие.🟡 Для спорных случаев фиксируйте выбранный подход в комментариях к коду и документации.🟡 Проверяйте соблюдение стандарта при доработках и перед выпуском релиза.https://v8std.ru/std/402/@Portal_1C


1C Portal | Программирование
14 Sept, 06:07
Набор инструментов для тестирования 1С:БухгалтерииРепозиторий от 1C-Company с готовыми обработками, расширениями и скриптами, которые помогают подготавливать окружение и данные для тестирования 1С:Бухгалтерии. Причём инструменты доступны не только в готовом виде .epf/.cfe, но и в исходниках.Что интересного:🟡 генерация данных для тестовых баз 🟡 готовые обработки и расширения для 1С:Бухгалтерии 🟡 инструменты для переключения интерфейса без встроенных проверок 🟡 batch-скрипты для пакетного запуска 1С 🟡 автоматическое развёртывание информационных баз и конфигураций 🟡 исходники инструментов можно изучать и адаптировать под свои задачи.Особенно пригодится тем, кто регулярно поднимает


1C Portal | Программирование
13 Sept, 16:07
Быстрый совет по 1СЕсли фильтруете виртуальную таблицу регистра, по возможности передавайте условие прямо в её параметры, а не отбирайте данные потом через ГДЕ.Вместо: РегистрНакопления.Остатки.Остатки(&Дата) КАК Остатки ГДЕ Остатки.Склад = &Склад используйте: РегистрНакопления.Остатки.Остатки( &Дата, Склад = &Склад ) КАК ОстаткиТак условие применяется ещё при формировании виртуальной таблицы, и 1С может передать в СУБД более эффективный запрос. Особенно полезно на больших регистрах, где без раннего отбора приходится обрабатывать заметно больше данных.@Portal_1C
Related Channels
Other channels in the same section of the catalogue.
