Элементы управления, использующие браузер
В платформе 1С:Предприятия существует несколько прикладных и системных элементов, работа которых в операционной системе Windows основывается на COM-объекте движка Internet Explorer. Это такие элементы как:
- Справочная система;
- Синтакс-помощник;
- ПолеHTMLДокумента;
- Планировщик;
- Форматированный документ;
- Редактор HTML документа.
В разных версиях Windows используются разные версии Internet Explorer, зачастую устаревшие. Это сильно усложняет разработку функциональности, основанной на браузере. Причём это справедливо как для вас, прикладных разработчиков, так и для 1С, когда разрабатывается платформа 1С:Предприятия.
Клиентские приложения, работающие под управлением операционных систем Linux и macOS, вместо COM-объекта Internet Explorer используют библиотеку WebKit. Это свободная кроссплатформенная библиотека с открытым исходным кодом. В результате DOM-модель HTML документа, полученная через свойство поля Документ (ПолеФормы.Документ), в этих клиентских приложениях может отличаться от аналогичной DOM-модели в клиентском приложении в операционной системе Windows. Это также усложняет разработку прикладной функциональности, работающей одинаково на разных операционных системах.
Преимущества перехода на WebKit
Перевод всех клиентских приложений на использование WebKit даёт следующие преимущества:
- Одинаковое поведение в различных версиях Windows;
- Максимально схожее поведение при работе в операционных системах, поддерживаемых 1С:Предприятием, так как используется одна и та же библиотека, хоть и разных версий;
- Лучшая производительность в ряде сценариев работы;
- Более стабильная и более быстрая работа форматированного документа;
- Лучшая поддержка веб-стандартов;
- При переходе на WebKit 1С исправила большое количество ошибок, которые невозможно было исправить при использовании Internet Explorer.
Реализация
Последний пункт предыдущего списка нужно пояснить подробнее. В отличие от Internet Explorer библиотека WebKit содержит открытый исходный код, поэтому 1С может самостоятельно исправлять какие-то её проблемы, если они возникают.
1С использует доработанную библиотеку WebKit, и поставляет её вместе с дистрибутивом платформы.
В первую очередь доработка потребовалась потому, что прикладные решения 1С:Предприятия могут работать под управлением операционной системы Windows XP, а стандартный WebKit её уже не поддерживает. 1С реализовала такую поддержку в нашей библиотеке WebKit.
Также открытый исходный код этой библиотеки даёт нам возможность разобраться в нюансах поведения и проблемах, а также самостоятельно поддерживать актуальность этой библиотеки в платформе 1С:Предприятия.
Влияние на существующую функциональность
В результате перехода на WebKit тип свойства Документ у поля, имеющего вид ПолеHTMLДокумента, изменится с COMОбъект на ВнешнийОбъект. Также изменится DOM модель документа, доступная через это свойство.
Если при разработке функциональности вы учитывали рекомендации для операционных систем Linux и macOS, то никаких проблем возникнуть не должно.
В противном случае вам нужно проверить, что задействованы только стандартные элементы DOM модели, которые доступны во всех вариантах работы, и не являются специфичными для конкретного веб-браузера.