Вопрос выбора стабильного релиза платформы 1С:Предприятие 8.3 всегда стоит остро, особенно когда фирма «1С» повышает минимальные требования для типовых конфигураций (например, для «Бухгалтерии предприятия 3.0»). Часто администраторы и программисты сталкиваются с тем, что версия 8.3.11 и ниже перестает поддерживаться, а новые ветки 8.3.12 и 8.3.13 несут в себе как новые возможности, так и неочевидные ошибки. Рассмотрим подробно, как выбрать оптимальную версию, какие проблемы могут возникнуть в процессе эксплуатации и на что обратить внимание при настройке серверной части.
Для начала проанализируем, как сама программа определяет, на какой платформе ей работать. В современных конфигурациях, построенных на базе БСП (Библиотека стандартных подсистем), за проверку версии отвечают программные модули. Например, в конфигурации «Бухгалтерия предприятия 3.0» в модуле ОбщегоНазначения можно найти функцию ОбщиеПараметрыБазовойФункциональности(), где жестко задаются параметры минимально и рекомендуемой версии.
Разберем пример кода, который управляет этой логикой в типовых решениях:
Функция ОбщиеПараметрыБазовойФункциональности() Экспорт
// ...
ОбщиеПараметры.Вставить("МинимальнаяВерсияПлатформы", "8.3.12.1412");
ОбщиеПараметры.Вставить("РекомендуемаяВерсияПлатформы", "8.3.12.1412");
Возврат ОбщиеПараметры;
КонецФункции
Если ваша текущая платформа ниже указанной в коде конфигурации, система выдаст предупреждение или вовсе откажется запускаться. На текущий момент ветка 8.3.12 считается «старым стандартом», а переход на 8.3.13 и выше становится обязательным для получения обновлений отчетности.
Многие специалисты долгое время считали ветку 8.3.12 наиболее стабильной для продакшн-систем. Однако и здесь есть свои «подводные камни», особенно касающиеся механизма РИБ (Распределенные информационные базы). Проанализируем опыт эксплуатации различных сборок:
Переход на ветку 8.3.13 (например, популярный релиз 8.3.13.1513) принес серьезную проблему, которую многие программисты считают критической для массовой работы пользователей. Выясним причину: при программном вызове метода Напечатать() для табличного документа, текущее окно 1С теряет фокус (активность). Пользователю приходится нажимать Alt+Tab или кликать мышкой по окну, чтобы продолжить работу с горячими клавишами.
Рассмотрим код, вызывающий эту проблему:
тд = Новый ТабличныйДокумент;
тд.Область(1, 1).Текст = "Тестовая печать";
// После выполнения следующей строки окно может "повиснуть" или потерять активность
тд.Напечатать(РежимИспользованияПечатныхФорм.ПечатьБезПросмотра);
Кроме того, на сборках 8.3.13 ниже .1644 наблюдались зависания интерфейса на 30–60 секунд после отправки документа на принтер. Если ваша организация активно использует печатные формы (склады, розница), использовать ранние релизы 13-й платформы крайне не рекомендуется. Решением в данном случае является переход на более поздние сборки 8.3.13.1644 или 8.3.14, где интерфейсные баги были минимизированы.
Важным моментом при переходе на новые версии платформы является изменение требований к системному окружению. Начиная с определенных версий 8.3.12 и 8.3.13, 1С требует обязательного наличия обновлений безопасности для Windows. Рассмотрим основные требования:
8.3.13.1513 на XP со слов пользователей работает), стабильность работы с внешними компонентами и криптографией не гарантируется.В платформе 8.3.13 появился функционал, который полезен системным администраторам — счетчики и ограничители ресурсов. Это позволяет на уровне кластера серверов ограничивать потребление оперативной памяти процессами rphost. Раньше для этого требовалось использование сторонних скриптов или частый перезапуск рабочих процессов по расписанию.
Проанализируем ситуацию с «тяжелыми» конфигурациями (УПП, ERP). При переходе на 8.3.13.1513 зафиксированы случаи аварийного завершения процессов при работе с большими объемами данных. Если ваша система потребляет значительное количество ресурсов, рекомендуется тщательно тестировать механизмы ограничения, так как некорректная настройка лимитов может привести к тому, что платформа будет «убивать» сеансы пользователей при достижении порога памяти, который раньше считался допустимым.
Стоит упомянуть, что ветка 8.3.14 и последующие ознаменовали собой переход на движок WebKit для отображения HTML-форм внутри клиента Windows. Это избавляет систему от зависимости от Internet Explorer, который годами создавал проблемы с отображением сложных интерфейсов и графиков. Если вы планируете долгосрочное обновление, имеет смысл рассмотреть переход сразу на релизы с поддержкой WebKit, чтобы избежать проблем с рендерингом страниц в будущем.
Подводя итог анализу сообщений и практическому опыту, можно составить следующий алгоритм выбора:
8.3.12.1685 или 8.3.12.1855. Они закрывают большинство «детских болезней» 12-й ветки.8.3.13, избегайте сборки 1513 из-за бага с фокусом печати. Ставьте релизы не ниже 8.3.13.1644.8.3.13.1513 на Linux показывает себя стабильнее, чем на Windows, из-за отсутствия проблем с фокусом окон).Таким образом, выбор версии — это баланс между требованиями разработчиков конфигураций и стабильностью конкретной сборки. Всегда проводите предварительное тестирование на копии базы перед обновлением серверной части предприятия.