1С:Библиотека стандартных подсистем

Версия 3.0.3

Новые возможности и изменения

Новые возможности для разработчиков

Переход на версию 3.0.3 с версии 3.0.2

Переход на версию 3.0.3 с предыдущих версий 3.0.3

Версия 3.0.2

Новые возможности и изменения

Новые возможности для разработчиков

Переход на версию 3.0.2 с версии 3.0.1

Переход на исправительные релизы 3.0.2

Особенности обновления с ранних версий

Версия 3.0.1

Новые возможности и изменения

Переход на версию 3.0.1 с версии 2.4.6

Переход на версию 3.0.1 с предыдущих версий 3.0.1

Новые возможности для разработчиков

 


Версия 3.0.3

Версия 3.0.3 является развитием редакции продукта 1С:Библиотека стандартных подсистем. Доработки включены в подсистемы Контактная информация (см. ниже) и Управление доступом: финальная версия режима повышенной производительности ограничения доступа на уровне записей (RLS).

Версия 3.0.3 предназначена для разработки на платформе 1С:Предприятие версии 8.3.12 и выше с отключенным режимом совместимости с версией 8.3.12.

Новые возможности и изменения

Контактная информация

·         Если у международного адреса включен флажок Включать страну в представление (раздел АдминистрированиеОбщие настройкиВиды контактной информации), то в международный адрес автоматически включается наименование страны на английском языке. Для этого в карточке страны (раздел СправочникиСтраны мира) предусмотрено поле для ввода международного наименования. Например, для России следует ввести Russia.

Новые возможности для разработчиков

Весь исходный код библиотеки распространяется по лицензии Attribution 4.0 International (CC BY 4.0). Текст лицензии доступен по ссылке: https://creativecommons.org/licenses/by/4.0/legalcode. Эта лицензия позволяет вам использовать, распространять, перерабатывать, исправлять и развивать библиотеку в любых, в том числе, в коммерческих целях, при обязательном условии указания авторства библиотеки в вашем программном продукте.

Базовая функциональность

·         Для упрощения локализации и наглядного создания форматированных строк в программный интерфейс общих модулей СтроковыеФункции и СтроковыеФункцииКлиент добавлена функция ФорматированнаяСтрока. Оформление текста выполняется HTML  подобным языком разметки и позволяет менять цвет, шрифт, выводить картинки и создавать гиперссылки. Например, "Цена <span style='color: ПоясняющийТекст '>некорректная</span>". Подробнее см. комментарий к функции.

Календарные графики

·        При использовании данных производственного календаря следует дополнительно учитывать периоды нерабочих дней, установленные в соответствии с законодательством. Начиная с версии 3.0.3.258 получить такие периоды можно с помощью метода ПериодыНерабочихДней общего модуля КалендарныеГрафики.

·        Начиная с версии 3.0.3.273 метод ДатыБлижайшихРабочихДней устарел, вместо него рекомендуется использовать: метод БлижайшиеРабочиеДаты для производственного календаря и метод БлижайшиеДатыВключенныеВГрафик общего модуля ГрафикиРаботы для графика работы соответственно.
Для метода БлижайшиеРабочиеДаты реализован параметр УчитыватьНерабочиеПериоды, позволяющий по-разному интерпретировать периоды нерабочих дней в календарях РФ в 2020 году.

·        Начиная с версии 3.0.3.291 для метода БлижайшиеРабочиеДаты реализован параметр НерабочиеПериоды, позволяющий уточнить, какие именно нерабочие периоды нужно учитывать.

Обмен данными

·         Начиная с версии 3.0.3.248, включена новая версия 1.8 формата EnterpriseData. В ней предусмотрены объекты для реализации обмена ЗУП 3.1 и БП 3.0, а также для обмена с сервисом 1С:Номенклатура.

Обновление конфигурации

·         Для проверки наличия устаревших исправлений без их удаления в процедуре ИсправленияИзменены общего модуля ОбновлениеКонфигурации добавлен необязательный параметр ТолькоПроверка.

Управление доступом

·         Режим повышенной производительности ограничения доступа на уровне записей не включается автоматически.
В типовом решении требуется добавить отложенный обработчик обновления с помощью процедуры ДобавитьОбработчикОбновленияДляВключенияУниверсальногоОграничения общего модуля УправлениеДоступом. См. пример в общем модуле _ДемоОбновлениеИнформационнойБазыБСП демонстрационной конфигурации.
Для сведения: после включения константы ОграничиватьДоступНаУровнеЗаписейУниверсально обработчиком обновления или вручную продолжает работать стандартное ограничение доступа до тех пор, пока обновление доступа не завершится первый раз. После этого происходит автоматическое переключение в режим повышенной производительности (в качестве признака используется константа ПервоеОбновлениеДоступаЗавершилось).

Переход на версию 3.0.3 с версии 3.0.2

В этом разделе для каждой подсистемы даны дополнительные инструкции по переходу, которые необходимо выполнить в конфигураторе. Для расстановки флажков в окне сравнения/объединения см. главу 2 документации.

Для совместимости с предыдущими версиями библиотеки во всех подсистемах предусмотрен программный интерфейс. К нему относятся те объекты метаданных библиотеки, которые предназначены для использования в прикладном коде:

·         имена и состав параметров экспортных процедур и функций общих модулей, модулей объектов, менеджеров, наборов записей и т.п., которые размещены в области ПрограммныйИнтерфейс;

·         имена и состав параметров всех экспортных процедур и функций переопределяемых общих модулей;

·         имена объектов метаданных (включая их реквизиты, табличные части и пр.), к которым допускается непосредственное обращение из прикладного кода или из запросов.

В случае использования программного интерфейса существенно снижается необходимость в переработках кода конфигурации при обновлении на новые версии библиотеки.

Далее по каждой подсистеме приведены дополнительные инструкции, когда такая совместимость в силу исключительных причин не поддерживается, и требуется адаптировать конфигурацию к новому программному интерфейсу библиотеки. При этом не документируются изменения в служебных процедурах и функциях библиотеки (даже если они являются экспортными), которые не относятся к программному интерфейсу. При непосредственном вызове их из конфигурации следует учитывать, что они могут быть изменены, перемещены или удалены в следующей версии библиотеки, поскольку являются ее внутренней реализацией.

После выполнения инструкций по переходу рекомендуется воспользоваться инструментом Проверка внедрения БСП, входящим в состав дистрибутива библиотеки в виде внешнего отчета ПроверкаВнедренияБСП.erf. В этой версии состав проверок был дополнительно расширен, чтобы выявлять больше типовых проблем внедрения.

Обязательные действия по переходу

Календарные графики

·         Регистр сведений ПериодыНерабочихДнейКалендаря рекомендуется включать в состав планов обмена распределенной информационной базы (РИБ) и автономного рабочего места (АРМ).

Управление доступом

·         Для объектов метаданных, указанных в процедуре ПриЗаполненииСписковСОграничениемДоступа общего модуля УправлениеДоступомПереопределяемый, в обработчик события ПослеЗаписиНаСервере формы объекта (все формы с основным реквизитом объекта) сделать вставку:
// СтандартныеПодсистемы.УправлениеДоступом
УправлениеДоступом.ПослеЗаписиНаСервере(ЭтотОбъект, ТекущийОбъект, ПараметрыЗаписи);
// Конец СтандартныеПодсистемы.УправлениеДоступом

·         Для автоматизированного выполнения указанного выше действия следует запустить обработку ПереходНаВерсию303.epf, входящую в состав дистрибутива (запускать только на файловой ИБ).

·         Обновить стандартные шаблоны ограничения доступа к данным ДляОбъекта и ДляРегистра во всех ролях. Стандартные шаблоны взять из роли ИзменениеУчастниковГруппДоступа и скопировать во все роли. Для массового обновления удобно использовать вкладку Шаблоны ограничений в форме Все ограничения доступа (включить отбор по наименованию шаблона, выделить все строки и использовать команду Изменить), либо использовать отчет ПроверкаВнедренияБСП.erf в режиме исправления ошибок.

·         Перенести изменения формы НастройкиПользователейИПрав обработки ПанельАдминистрированияБСП, если используется.

·         В планы обмена РИБ для создания начального узла включить константу ПервоеОбновлениеДоступаЗавершилось.

Переход на версию 3.0.3 с предыдущих версий 3.0.3

С версии 3.0.3.261 и меньше

Календарные графики

·         Регистр сведений ПериодыНерабочихДнейКалендаря рекомендуется включать в состав планов обмена распределенной информационной базы (РИБ) и автономного рабочего места (АРМ).

С версии 3.0.3.223 и меньше

Управление доступом

·         Обновить стандартные шаблоны ограничения доступа к данным ДляОбъекта и ДляРегистра во всех ролях. Стандартные шаблоны взять из роли ИзменениеУчастниковГруппДоступа и скопировать во все роли. Для массового обновления удобно использовать вкладку Шаблоны ограничений в форме Все ограничения доступа (включить отбор по наименованию шаблона, выделить все строки и использовать команду Изменить), либо использовать отчет ПроверкаВнедренияБСП.erf в режиме исправления ошибок.

С версии 3.0.3.104 и меньше

Контактная информация

·         В соответствии с приказом Федеральной налоговой службы от 14.08.2019 № СА-7-21/405@ "Об утверждении формы и формата представления налоговой декларации по налогу на имущество организаций в электронной форме и порядка её заполнения…"  в функциях СведенияОбАдресах и СведенияОбАдресе программного интерфейса общего модуля РаботаСАдресами у свойства КодМуниципальногоРайона расширен состав возвращаемого значения: код 4 для муниципального округа.

·         Для ввода адресов в заданном виде, например, по административно-территориальному делению в определенных формах регламентированной отчетности, в программном интерфейсе функции ОткрытьФормуКонтактнойИнформации общего модуля УправлениеКонтактнойИнформациейКлиент в первом параметре Параметры предусмотрено свойство ТипАдреса. Подробнее см. комментарии к этой функции.

С версии 3.0.3.43 и меньше

Управление доступом

·         Перенести изменения формы НастройкиПользователейИПрав обработки ПанельАдминистрированияБСП, если используется.

Особенности обновления с ранних версий

При обновлении с ранних версий библиотеки (до 3.0.2) следует

·         выполнить в конфигураторе сравнение/объединение с файлов поставки последней версии библиотеки (на которую выполняется переход);

·         и затем последовательно выполнить инструкции из всех разделов Переход с предыдущих версий для каждой пропущенной версии.

Версия 3.0.2

Версия 3.0.2 является развитием редакции продукта 1С:Библиотека стандартных подсистем. Новые функции и существенные доработки включены в подсистемы Варианты отчетов, Обновление версии ИБ, Работа с файлами, Управление доступом, а также ряд подсистем адаптирован к работе в мобильном клиенте. Полный перечень нововведений см. ниже в разделе Новые возможности и изменения.

Версия 3.0.2 предназначена для разработки на платформе 1С:Предприятие версии 8.3.12 и выше с отключенным режимом совместимости с версией 8.3.12.

Новые возможности и изменения

Базовая функциональность

·         С помощью параметра командной строки ПараметрыЗапускаИзВнешнейОперации можно передать дополнительные параметры командной строки во вновь запускаемый сеанс 1С:Предприятия после выполнения обновления конфигурации и резервного копирования информационной базы (при этих операциях текущий сеанс работы закрывается и затем перезапускается). Например, для подключения к сценарному тестированию запуск 1С:Предприятия с параметром
ПараметрыЗапускаИзВнешнейОперации=/TestClient -TPort 48050 /C РежимОтладки
приведет к тому, что перезапущенный сеанс стартует с параметром
/TestClient -TPort 48050 /C РежимОтладки

Бизнес-процессы и задачи

·         С целью повышения удобства работы с присоединенными файлами, в карточке бизнес-процесса Задание добавлена гиперссылка, отображающая количество присоединенных файлов, для быстрого перехода к ним, а также кнопка для присоединения новых файлов непосредственно из карточки. Кроме того, такая же гиперссылка выводится в карточке задачи для просмотра или редактирования файлов, прикрепленных к бизнес-процессу.

Варианты отчетов

·         Для вывода в отчетах сведений о количестве страниц, даты и времени формирования и другой информации добавлена возможность настройки колонтитулов. Возможна как общая, так и индивидуальная настройка. Чтобы установить общие настройки, необходимо перейти в раздел Администрирование – Печатные формы, отчеты и обработки – Настройка колонтитулов. Индивидуальные настройки колонтитулов для выбранного отчета устанавливаются в расширенном режиме настройки на закладке Оформление.

·         Теперь для быстрого расчета показателей в отчете предусмотрело поле, в котором выводится сумма выделенных ячеек. Также доступен выбор и других показателей: количество, среднее, минимум, максимум. При необходимости в нижней части экрана, возможно, вывести панель со значениями всех показателей.

·         Предусмотрено управление выводом заголовка, параметров и отборов отчета в простом и расширенном режиме настроек. Кроме того, в расширенном режиме дополнительно возможна установка текста заголовка. Тем самым стало удобнее скрывать заголовок и параметры при формировании отчета в программе (для того чтобы они не занимали места), а перед выводом отчета на печать, напротив, выводить их.

·         Если в программе предусмотрена работа на нескольких языках, то наименования и описания вариантов отчетов возможно задавать одновременно на всех этих языках. Например, в случае если в программе предусмотрен перевод интерфейса на русский и английский языки, при сохранении нового варианта отчета «Редактируемые файлы» можно ввести также его перевод на английском языке. При отображении таких отчетов в панелях, при поиске по ключевым словам или при других действиях с отчетами используется перевод, соответствующий языку текущего сеанса пользователя (если же перевод не задан, то синонимы выводятся на основном языке). Аналогичным образом осуществляется работа и с предопределенными вариантами отчетов, предусмотренными в программе.

Взаимодействия

·        При просмотре писем предусмотрена фильтрация небезопасного содержимого. Входящие письма могут содержать элементы, позволяющие отправителю скрытно отслеживать действия с письмом, в частности, время просмотра и некоторые параметры устройства, на котором письмо было прочитано. К небезопасным элементам относятся, например, загружаемые из Интернета картинки письма или встроенные скрипты.

o   В целях безопасности такие элементы безусловно отключаются при просмотре письма.

o   Возможность отображать заблокированные картинки регулируется общей настройкой Запретить отображение небезопасного содержимого в письмах (раздел АдминистрированиеОрганайзерПочта).

Контактная информация

·         Если в программе предусмотрена работа на нескольких языках, то наименования видов контактной информации возможно задавать одновременно на всех этих языках. Например, в случае если в программе предусмотрен перевод интерфейса на русский и английский языки, в карточке вида контактной информации у наименования можно ввести также его перевод на английском языке. При выводе надписей контактной информации в справочниках и документах используется перевод, соответствующий языку текущего сеанса пользователя (если же перевод не задан, то синонимы выводятся на основном языке).

Обмен данными

·         Добавлена поддержка синхронизации данных с сервисами, поставляемыми Порталом 1С:ИТС.

·         В монитор предупреждений при синхронизации через универсальный формат добавлен вывод сообщений о проблемах при отправке, связанных с незаполненными реквизитами в данных.

Оценка производительности

·         В отчете Оценка производительности (раздел Администрирование – Обслуживание – Отчеты администратора) можно анализировать время выполнения ключевых операций в разрезе признака замера Выполнен с ошибкой. Анализ корректных выполнений ключевых операций особенно актуален для операций, связанных с проведением документов. Это позволяет отделить корректные замеры проведения документов от ошибочных замеров, например, связанных с ошибками заполнения.

·         Автоматический подбор целевого времени ключевой операции по имеющимся замерам времени из списка Ключевые операции (раздел Сервисные подсистемыОценка производительностиКлючевые операции) или из карточки ключевой операции. Автоматический подбор целевого времени позволяет решить задачу определения целевого времени ключевой операции по известному значению APDEX по данным имеющихся замеров. Такая задача возникает, когда пользователь не может назвать целевое время, но может дать качественную оценку производительности ключевой операции (например, оценить от 1 до 5).

Печать

·         Для некоторых печатных форм в окне Печать документов появилась возможность выводить факсимильные подписи и печати (см. флажок Подпись и печать). Например, их можно включить перед отправкой печатной формы по почте или сохранением в файл, а затем выключить обратно при печати на принтер. Задавать факсимильные подписи и печати можно в карточке организации, загрузив их изображения со сканера согласно простой инструкции.

Работа с файлами

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

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

·         Теперь служебные файлы, не предназначенные для редактирования (файлы ЭДО, кэш данных бюджетирования и т.п.) не выводятся в списках присоединенных файлов. В редких случаях для отображения таких файлов можно выбрать пункт Показывать служебные файлы в меню Еще.

·         В том случае, если в программе разрешена работа внешних пользователей (партнеров, респондентов и др.), то они также смогут присоединять и редактировать файлы в  предусмотренных для них справочниках и документах.

Свойства

·         Если в программе предусмотрена работа на нескольких языках, то наименования дополнительных реквизитов и сведений возможно задавать одновременно на всех этих языках. Например, в случае если в программе предусмотрен перевод интерфейса на русский и английский языки, в карточке дополнительного реквизита у наименования можно ввести также его перевод на английском языке. При выводе дополнительных реквизитов в справочниках и документах используется перевод, соответствующий языку текущего сеанса пользователя (если же перевод не задан, то синонимы выводятся на основном языке).

Новые возможности для разработчиков

Весь исходный код библиотеки распространяется по лицензии Attribution 4.0 International (CC BY 4.0). Текст лицензии доступен по ссылке: https://creativecommons.org/licenses/by/4.0/legalcode. Эта лицензия позволяет вам использовать, распространять, перерабатывать, исправлять и развивать библиотеку в любых, в том числе, в коммерческих целях, при обязательном условии указания авторства библиотеки в вашем программном продукте.

Базовая функциональность

·         Для упрощения ветвления кода в зависимости от типа платформы предусмотрена функция ЭтоWindowsСервер общего модуля ОбщегоНазначения.

·         Расширена поддержка возможностей по управлению кластером серверов 1С:Предриятие: в программном интерфейсе общего модуля АдминистрированиеКластера предусмотрены функции СвойстваЛицензии, СвойстваОписанияСоединения, СвойстваРабочегоПроцесса и расширен состав возвращаемых значений функций СвойстваСеанса, СвойстваСоединения, СвойстваПрофиляБезопасности, СоздатьПрофильБезопасности, УстановитьСвойстваПрофиляБезопасности.

·         Для возможности запуска в режиме подключения  мобильный клиент предусмотрена роль ЗапускМобильногоКлиента.

·         Для определения режима мобильного клиента из серверного кода в программном интерфейсе общего модуля ОбщегоНазначения имеется функция ЭтоМобильныйКлиент.

·         Для упрощения разработки прикладных решений в функции ПоказатьФормуРедактированияКомментария общего модуля ОбщегоНазначенияКлиент у параметра ИмяРеквизита предусмотрено значение по умолчанию "Объект.Комментарий", которое является наиболее частотным.

·         Для упрощения формирования сообщений пользователю в процедуре ДобавитьОшибкуПользователю общего модуля ОбщегоНазначенияКлиентСервер параметр ГруппаОшибок стал необязательным.

·         В целях упрощения разработки клиентского кода, взаимодействующего с файловой системой с учетом различных особенностей веб-клиента и мобильного клиента, в общем модуле ФайловаяСистемаКлиент размещены специализированные процедуры для следующих сценариев:

o   ВыбратьКаталог рекомендуется использовать вместо метода Показать объекта ДиалогВыбораФайла с заданным режимом работы ВыборКаталога;

o   ЗагрузитьФайл рекомендуется использовать вместо методов глобального контекста ПоместитьФайл, НачатьПомещениеФайла, а также вместо метода Показать объекта ДиалогВыбораФайла с заданным режимом работы Открытие;

o   ЗагрузитьФайлы рекомендуется использовать вместо методов глобального контекста ПоместитьФайлы, НачатьПомещениеФайлов, а также вместо метода Показать объекта ДиалогВыбораФайла с заданным режимом работы Открытие;

o   ОткрытьФайл рекомендуется использовать вместо метода глобального контекста ЗапуститьПриложение для открытия файла, ассоциированного с некоторым приложением;

o   СохранитьФайл рекомендуется использовать вместо метода глобального контекста ПолучитьФайл или метода Показать объекта ДиалогВыбораФайла с заданным режимом работы Сохранение;

o   СохранитьФайлы рекомендуется использовать вместо методов глобального контекста ПолучитьФайлы, НачатьПолучениеФайлов, а также вместо метода Показать объекта ДиалогВыбораФайла с заданным режимом работы Сохранение.

·         Для унификации поведения в разных клиентских приложениях выбора файлов с компьютера, в общем модуле ФайловаяСистемаКлиент предусмотрена процедура ПоказатьДиалогВыбора. Эту процедуру рекомендуется использовать вместо метода Показать объекта ДиалогВыбораФайла.

·         Для удаления временных файлов на сервере без вызова исключения и остановки бизнес-логики приложения в общем модуле ФайловаяСистема размещена процедура УдалитьВременныйФайл. Эту процедуру рекомендуется использовать для удаления временных файлов, созданных в прикладном коде с помощью метода глобального контекста ПолучитьИмяВременногоФайла, вместо метода глобального контекста УдалитьФайлы.

·         Для кодирования строк, подставляемых в URL, на клиенте без обращения к серверу предусмотрена функция КодироватьСтроку общего модуля ОбщегоНазначенияКлиент.

·         Для получения списка возможных форматов сохранения табличного документа программный интерфейс общего модуля СтандартныеПодсистемыСервер расширен функцией НастройкиФорматовСохраненияТабличногоДокумента.

·         Для возможности самостоятельной обработки идентификаторов объектов метаданных, которые больше не существуют в конфигурации или недоступны в текущем сеансе, в функцию ОбъектМетаданныхПоИдентификатору общего модуля ОбщегоНазначения добавлен необязательный параметр ВызыватьИсключение (значение по умолчанию Истина).

·         Для возможности более производительного пакетного получения объектов метаданных по идентификаторам в общий модуль ОбщегоНазначения добавлена новая функция ОбъектыМетаданныхПоИдентификаторам, которая работает аналогично функции ОбъектМетаданныхПоИдентификатору.

·         Для получения идентификатора Интернет-поддержки основной конфигурации в общий модуль ОбщегоНазначения добавлена функция ИдентификаторИнтернетПоддержкиКонфигурации.

·         В связи с возможностью запуска конфигураций в режиме подключения мобильный клиент, для определения типа и параметров устройства, с которого запущена конфигурация,  в общий модуль ОбщегоНазначенияКлиентСервер добавлены новые функции ТипУстройства и ПараметрыЭкранаУстройства.

·         Добавлена процедура ПриЗаполненииПравилТранслитерации в модуль СтандартныеПодсистемыКлиентСерверЛокализация, с помощью которого можно выполнить адаптацию алгоритма транслитерации (функция СтрокаЛатиницей общего модуля СтроковыеФункцииКлиентСервер) в международной поставке. Для поставки РФ применяются правила транслитерации описанные в ПриЗаполненииПравилТранслитерации общего модуля СтроковыеФункцииКлиентСерверРФ.

Валюты

·         Для обеспечения работы конфигурации в странах с низким курсом национальной валюты, необходимо предусмотреть увеличение разрядности целой части числовых полей (реквизитов, ресурсов, измерений), содержащих денежный эквивалент – денежные поля. Примеры денежных полей: Сумма, Цена, Себестоимость.

Для этого состав объектов подсистемы расширен двумя определяемыми типами, которые надо использовать вместо явного указания типа Число в реквизитах объектов:

o   ДенежнаяСуммаЛюбогоЗнака - для денежных полей, которые могут содержать отрицательное значение;

o   ДенежнаяСуммаНеотрицательная - для денежных полей, которые могут содержать только положительные значения.

·         Для использования в конструкторе типа Число предусмотрена функция ОписаниеТипаДенежногоПоля в общем модуле РаботаСКурсамиВалют.

Варианты отчетов

·         С помощью события модуля отчета ПриОпределенииСвойствЭлементовФормыНастроек общего модуля ОтчетыСервер можно переопределить внешний вид элементов шапки отчета, связанных с пользовательскими настройками:

·         Группа элементов (обычная группа);

·         Группировка группы элементов;

·         Отображение группы элементов;

·         Положение заголовка элемента;

·         Признак РастягиватьПоГоризонтали элемента;

·         Ширина элемента.

Свойства группы по умолчанию определяются функцией СвойстваГруппыЭлементовФормы общего модуля ОтчетыСервер.

Например, чтобы разместить горизонтально поля параметров Период, Имя таблицы и скрыть их заголовки:

Процедура ПриОпределенииСвойствЭлементовФормыНастроек(ТипФормы, СвойстваЭлементов, ПользовательскиеНастройки) Экспорт

  СвойстваГруппы = ОтчетыСервер.СвойстваГруппыЭлементовФормы();
  СвойстваГруппы.Группировка = ГруппировкаПодчиненныхЭлементовФормы.ГоризонтальнаяВсегда;
  СвойстваЭлементов.Группы.Вставить("ОбщиеПараметры", СвойстваГруппы);

  ОбщиеПараметры = Новый Структура("Период, ИмяТаблицы");

  Для Каждого Элемент Из ПользовательскиеНастройки Цикл
      СвойстваПоля = СвойстваЭлементов.Поля.Найти(
      Элемент.ИдентификаторПользовательскойНастройки, "ИдентификаторНастройки");
      СвойстваПоля.ИдентификаторГруппы = "ОбщиеПараметры";      СвойстваПоля.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет;
  КонецЦикла;

КонецПроцедуры

·         Для того, чтобы определить, что изменение параметра требует переформирования схемы компоновки данных (при вызове обработчика ПередЗагрузкойВариантаНаСервере), добавлено свойство настроек отчета ЗагрузитьНастройкиПриИзмененииПараметров – массив элементов типа ЗначениеПараметраНастроекКомпоновкиДанных.

Например, в модуле объекта отчета в процедуре ОпределитьНастройкиФормы, описывается следующий код:

Процедура ОпределитьНастройкиФормы(Форма, КлючВарианта, Настройки) Экспорт

      Параметры = Новый Массив;
      Параметры.Добавить(Новый ПараметрКомпоновкиДанных("ИмяТаблицы"));

      Настройки.ЗагрузитьНастройкиПриИзмененииПараметров = Параметры;

КонецПроцедуры

·         Для улучшения диагностики предусмотрена процедура ИнициализироватьКомпоновщикНастроек общего модуля ОтчетыСервер. С ее помощью возникающие ошибки СКД при инициализации компоновщика настроек записываются в журнал регистрации с уровнем Ошибка.

Например, вместо:

КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(Схема));

Писать:

ИнициализироватьКомпоновщикНастроек(Отчет.КомпоновщикНастроек, АдресСхемы, Отчет, ВариантОтчета);

·         Процедура ОткрытьДиалогРазмещенияВариантовВРазделах общего модуля ВариантыОтчетовКлиент перенесена из программного интерфейса в служебный программный интерфейс, так как вне библиотеки не востребована.

·         Процедура ОткрытьДиалогСбросаНастроекПользователей общего модуля ВариантыОтчетовКлиент удалена из программного интерфейса, как невостребованная.

·         Процедура ОткрытьДиалогСбросаНастроекРазмещения общего модуля ВариантыОтчетовКлиент удалена из программного интерфейса, как невостребованная.

·         Процедура ПередФормированием общего модуля ОтчетыКлиентПереопределяемый удалена из программного интерфейса, как невостребованная.

Версионирование объектов

·         Для упрощения разработки собственных форм настроек подсистемы (например, в случае отсутствия в конфигурации подсистемы «Настройки программы») в общем модуле ВерсионированиеОбъектовКлиент предусмотрены процедуры и функции:

o   ОбработкаОповещенияИзмененияФлажкаХранитьИсторию

o   ПриИзмененииФлажкаХранитьИсторию

o   ПоказатьНастройку

в общем модуле ВерсионированиеОбъектов

o   ЗначениеФлажкаХранитьИсторию

См. пример вызова в форме Производительность обработки _ _ДемоПанельАдминистрирования.

Контактная информация

·         Для получения значений полей со сведениями о телефоне предусмотрена функция  СведенияОТелефоне общего модуля УправлениеКонтактнойИнформацией. Функция также может использоваться как конструктор при вызове ее без параметров.

·         Функцию СведенияОбАдресе  общего модуля РаботаСАдресами теперь можно использовать в качестве конструктора, если ее вызвать без параметров. Заполнив полученные поля адреса адресными сведениями, можно, например, преобразовать их в адрес во внутреннем формате JSON, вызвав функцию ПоляАдресаВJSON или сформировать представление адреса, используя функцию ПредставлениеКонтактнойИнформации из одноименного общего модуля.

·         Расширены возможности функции ПредставлениеКонтактнойИнформации общего модуля УправлениеКонтактнойИнформацией: теперь в качестве первого параметра может быть передана структура, полученная при вызове функций-конструкторов СведенияОТелефоне общего модуля УправлениеКонтактнойИнформацией и СведенияОбАдресе  общего модуля РаботаСАдресами.

·         Для определения того, был ли адрес введен в свободной форме, программный интерфейс общего модуля УправлениеКонтактнойИнформацией расширен функцией АдресВведенВСвободнойФорме.

·         При разработке обработчиков заполнения (обновления) видов контактной информации предусмотрена возможность простого изменения параметров у видов контактной информации: для этого в качестве первого параметра функции ПараметрыВидаКонтактнойИнформации общего модуля УправлениеКонтактнойИнформацией необходимо передать ссылку на элемент справочника изменяемого вид контактной информации у. Подробнее см. документацию к подсистеме в разделе Изменение или отключение неиспользуемых видов контактной информации.

·         Предусмотрена возможность удобного прикрепления ссылок на веб-страницы в виде гиперссылок. Для этого в модулях форм объектов-владельцев необходимо:

o   В вызове процедуры УправлениеКонтактнойИнформацией.ПриСозданииНаСервере передать признак использования обработки навигационной ссылки

ДополнительныеПараметры = Новый Структура;

ДополнительныеПараметры.Вставить("ОбработкаНавигационнойСсылки", Истина);

ДополнительныеПараметры.Вставить("ИмяЭлементаДляРазмещения", "ГруппаКонтактнаяИнформация");

УправлениеКонтактнойИнформацией.ПриСозданииНаСервере(ЭтотОбъект, Объект, ДополнительныеПараметры);

o   Вставить процедуру для обработчика события модуля формы ОбработкаНавигационнойСсылки

o   Пример см. в демонстрационной конфигурации в модуле формы элемента справочника Демо: Партнеры.

·         Для более полной поддержки контактной информации, располагающейся в табличной части объекта, возвращаемая таблица функций НоваяКонтактнаяИнформация, КонтактнаяИнформацияОбъектов и КонтактнаяИнформацияОбъектов общего модуля УправлениеКонтактнойИнформацией расширена колонкой ИдентификаторСтрокиТабличнойЧасти.

·         Для упрощения разработки и обновления конфигураций предусмотрена возможность задавать предопределенные виды контактной информации не только как предопределенные элементы в справочнике ВидыКонтактнойИнформации, но и программно.

o   Для этого следует реализовать обработчик начального заполнения, в котором программно создать требуемые группы и виды контактной информации с помощью процедур УстановитьСвойстваГруппыВидаКонтактнойИнформации и УстановитьСвойстваВидаКонтактнойИнформации общего модуля УправлениеКонтактнойИнформацией. При этом имена предопределенных видов контактной информации следует задавать уникальными. Например, для контактной информации справочника Партнеры:

СвойстваГруппы = УправлениеКонтактнойИнформацией.ПараметрыГруппыВидаКонтактнойИнформации();

СвойстваГруппы.Имя = "Справочник_ДемоПартнеры";

СвойстваГруппы.Наименование = НСтр("ru='Контактная информация справочника ""Партнеры""'");

Группа = УправлениеКонтактнойИнформацией.УстановитьСвойстваГруппыВидаКонтактнойИнформации(СвойстваГруппы);

Вид = УправлениеКонтактнойИнформацией.ПараметрыВидаКонтактнойИнформации(Перечисления.ТипыКонтактнойИнформации.Адрес);

Вид.Имя = "_ДемоАдресПартнера";

Вид.Группа = Группа;

УправлениеКонтактнойИнформацией.УстановитьСвойстваВидаКонтактнойИнформации(Вид);

o   При необходимости замены существующих предопределенных элементов справочника ВидыКонтактнойИнформации на программно задаваемые виды контактной информации следует:

·         реализовать монопольный обработчик обновления с вызовом процедуры СнятьПризнакПредопределенныйДляВидовКонтактнойИнформации общего модуля УправлениеКонтактнойИнформацией;

·         и переименовать предопределенные элементы справочника ВидыКонтактнойИнформации, задав им префикс Удалить.

·         В дальнейшем для безвозвратного удаления предопределенных элементов справочника ВидыКонтактнойИнформации рекомендуется выпустить промежуточную версию, переход через которую на более новые релизы обязателен.

o   Для получения предопределенного вида контактной информации по имени в общем модуле УправлениеКонтактнойИнформацией предусмотрена функция ВидКонтактнойИнформацииПоИмени, которая единообразно позволяет работать с обоими способами описания предопределенных видов контактной информации: если он задан программно или как предопределенный элемент справочника ВидыКонтактнойИнформации.

o   См. также примеры в демонстрационной базе в общем модуле _ДемоОбновлениеИнформационнойБазыБСП.

·         Предусмотрена возможность вывода надписей контактной информации в формах справочников и документов на разных языках, предусмотренных в конфигурации. Для этого в процедуре ПриПолученииНаименованийВидовКонтактнойИнформации  общего модуля УправлениеКонтактнойИнформациейПереопределяемый   следует описать виды контактной информации на языках конфигурации, например:

Процедура ПриПолученииНаименованийВидовКонтактнойИнформации(Наименования, КодЯзыка)

Экспорт

  Наименования["_ДемоАдресПартнера"] = НСтр("ru='Адрес'; en='Address';", КодЯзыка);

КонецПроцедуры

·         Для получения списка общепринятых сокращений наименование типов адресных объектов в программном интерфейсе общего модуля РаботаСАдресами предусмотрена функция СокращенияОбъектовАдресацииАдресаРФ. Например, для адресного объекта "дом" общепринятым сокращения является "д.".

Контроль ведения учета

·         Запросы динамических списков, в которых имеется индикация наличия проблем, теперь можно изменять «на лету», например, в зависимости от отборов, устанавливаемых пользователем. Для этого нужно в тексте запроса заранее определить поле, которое будет использоваться для индикации наличия проблем и передать его имя в третьем параметре процедуры ПриСозданииНаСервереФормыСписка общего модуля КонтрольВеденияУчета. Подробнее как это сделать см. в описании процедуры.

Обмен данными

·         Для работы с подключениями к внешними сервисам, поставляемым из Портала 1С:ИТС, программный интерфейс общего модуля ОбменДаннымиСервер расширен следующими процедурами и функциями:

o   ПриСохраненииНастроекПодключенияВнешнейСистемы

o   ПриПолученииНастроекПодключенияВнешнейСистемы

o   ВсеНастройкиТранспортаОбменаСВнешнимиСистемами

o   ВыполнитьОбменДаннымиСВнешнейСистемой

o   Подробнее см. описания к указанным процедурам и функциям.

·         Для переопределения необходимости дополнительной настройки синхронизации данных (правил отправки и получения данных) и используемых для этих целей пользовательских интерфейсов в модуле менеджера плана обмена предусмотрен новый обработчик

o   ПередНастройкойСинхронизацииДанных.

o   Подробнее см. в документации: Глава 3. Обмен данными, Модуль менеджера плана обмена.

·         В процедуру ВыполнитьЗагрузкуДанных программного интерфейса модуля обработки КонвертацияОбъектовXDTO добавлен служебный параметр ПараметрыЗагрузки. Значение по умолчанию Неопределено. Не предназначен для использования.

·         В обмен данными через универсальный формат добавлен новый режим работы механизма конвертации XDTO

o   При отправке данных в случае возникновения ошибки валидации по xsd-схеме сконвертированного объекта XDTO есть возможность пропустить такой объект, и продолжить выгрузку без него. Информация о проблемных объектах регистрируется в журнале предупреждений при синхронизации данных на вкладке Проблемы при отправке. Для новых и ранее настроенных синхронизаций поведение не меняется, и ошибки проверки объектов XDTO по xsd-схеме приводят к отмене выгрузки данных. Переключение режима выполняется программно при помощи метода программного интерфейса
ОбменДанными
XDTOСервер.ПропускатьОбъектыСОшибкамиПроверкиПоСхеме
Для предоставления пользователям возможности самостоятельного переключения режима пропуска ошибок, требуется соответствующим образом доработать интерфейс помощника настройки синхронизации и(или) формы узла плана обмена XDTO.

Обновление версии ИБ

·         Появилась возможность выполнять отложенный обработчик обновления сразу в несколько потоков. Рекомендуется использовать эту возможность для самых длительно выполняющихся обработчиков обновления, т.к. в многопоточном режиме именно они влияют на общую длительность отложенного обновления. Данная возможность доступна только для параллельного режима отложенного обновления. Пример реализации см. в процедурах ЗарегистрироватьДанныеКОбработкеДляПереходаНаНовуюВерсию и ОбработатьДанныеДляПереходаНаНовуюВерсию в модуле менеджера документа _ДемоЗаказПокупателя.

·         Для реализации многопоточных отложенных обработчиков обновления программный интерфейс общего модуля ОбновлениеИнформационнойБазы расширен следующими процедурами и функциями:

o   ДанныеДляОбновленияВМногопоточномОбработчике

o   ДополнительныеПараметрыВыборкиДанныхДляМногопоточнойОбработки

o   ИсточникиДанных

o   МаксимальноеКоличествоЗаписейВВыборке

o   СпособВыборкиИзмеренияНезависимогоРегистраСведений

o   СпособВыборкиРегистраторыРегистра

o   СпособВыборкиСсылки

o   УстановитьИсточникДанных

o   Подробнее см. описания к указанным процедурам и функциям.

·         Для определения имени конфигурации (библиотеки), по которому она идентифицируется в сервисах Интернет-поддержки, в процедуре ПриДобавленииПодсистемы общего модуля ОбновлениеИнформационнойБазы<Сокращение> добавлено новое свойство ИдентификаторИнтернетПоддержки. Рекомендуется заполнять его для конфигураций и библиотек, публикуемых на сервисе 1С:Обновление программ.

Обновление конфигурации

·         Программный интерфейс общего модуля ОбновлениеКонфигурации расширен функцией ИсправленияИзменены. Подробности см. в комментарии к ней.

Отчет о движениях документа

·         Для открытия отчета под неполноправным пользователем добавлена роль ПросмотрОтчетаДвиженияДокумента. В отчете будут отображены движения, доступные пользователю по правам.

Оценка производительности

·         Расширен программный интерфейс общего модуля ОценкаПроизводительностиКлиент. Появилась возможность разделять замеры на корректные и ошибочные с помощью функции ЗамерВремени, что особенно востребовано при замерах записи данных. С помощью нового параметра ФиксироватьСОшибкой появляется возможность определять, зафиксируется ли замер как ошибочный при автоматическом завершении. Например, при проведении документа рекомендуется выполнять замер следующим образом:

o   начинать замер времени в процедуре ПередЗаписью формы документа с помощью вызова ОценкаПроизводительностиКлиент.ЗамерВремени(ИмяКлючевойОперации, Истина);

o   Завершить замер вручную с помощью метода ЗакончитьЗамерВремени;

o   Для автоматического завершения замера снять признак ошибки в процедуре ПослеЗаписи формы документа с помощью вызова метода УстановитьПризнакОшибкиЗамера общего модуля ОценкаПроизводительностиКлиент.

Печать

·         В печатной форме имеется возможность размещения факсимильной подписи и печати. Для этого необходимо:

o   в макете печатной формы добавить рисунок шириной 40 мм и соотношением сторон 1:1 для печати, 4:1 для подписи и установить его свойства:

·         Имя: идентификатор вида «Подпись...» или «Печать...», например, «ПодписьРуководителя», «ПечатьОрганизации»,

·         Картинка: (не заполнено),

·         РазмерКартинки: Пропорционально,

·         Линия: Точечная,

o   добавить код по получению картинок для них в процедуре ПриПолученииПодписейИПечатей общего модуля УправлениеПечатьюПереопределяемый.

См. пример в макете ПФ_MXL_СчетЗаказ документа _ДемоСчетНаОплатуПокупателю.

·         Для отображения инструкции по созданию факсимильной подписи и печати в общем модуле УправлениеПечатьюКлиент предусмотрена процедура ПоказатьИнструкциюПоСозданиюФаксимильнойПодписиИПечати. См. пример ее вызова в форме ФормаЭлемента справочника _ДемоОрганизации.

·         Для расширения возможностей формы ПечатьДокументов следующие обработчики событий формы вынесены в переопределяемые модули:

o   УправлениеПечатьюПереопределяемый:

·         ПечатьДокументовПриСозданииНаСервере

·         ПечатьДокументовПриЗагрузкеДанныхИзНастроекНаСервере

·         ПечатьДокументовПриСохраненииДанныхВНастройкахНаСервере

·         ПечатьДокументовПриВыполненииКоманды

o   УправлениеПечатьюКлиентПереопределяемый

·         ПечатьДокументовПослеОткрытия

·         ПечатьДокументовОбработкаНавигационнойСсылки

·         ПечатьДокументовВыполнитьКоманду

o   С их помощью можно размещать в форме дополнительные элементы управления, баннеры, различные настройки, не снимая форму ПечатьДокументов с поддержки.

o   Также в программном интерфейсе общего модуля УправлениеПечатьюКлиент добавлена вспомогательная функция НастройкаТекущейПечатнойФормы, позволяющая получить в открытой форме ПечатьДокументов настройки отображаемой печатной формы.

·         Для оповещения пользователей о том, что в новой версии конфигурации обновился поставляемый макет печатной формы, который был ранее отредактирован в общем модуле УправлениеПечатью предусмотрены две функции:

o   ИспользуетсяПользовательскийМакет для проверки того, что вместо поставляемого макета печатной формы используется пользовательский макет.

o   ПоставляемыйМакетИзменен для проверки наличия изменений в поставляемых макетах печатных форм по сравнению с предыдущей версией конфигурации (до обновления).

·         Для программного формирования и сохранения печатной формы в файл в общем модуле УправлениеПечатью размещена функция НапечататьВФайл, а также конструктор одного из передаваемых в нее параметров – функция НастройкиСохранения.

Полнотекстовый поиск

·         Для упрощения разработки собственных форм настроек подсистемы (например, в случае отсутствия в конфигурации подсистемы «Настройки программы») в общем модуле ПолнотекстовыйПоискКлиент предусмотрены процедуры и функции:

o   ОбработкаОповещенияИзмененияФлажкаИспользоватьПоиск

o   ПриИзмененииФлажкаИспользоватьПоиск

o   ПоказатьНастройку

в общем модуле ПолнотекстовыйПоискСервер

o   ЗначениеФлажкаИспользоватьПоиск

См. пример вызова в форме Производительность обработки _ _ДемоПанельАдминистрирования.

Пользователи

·         Для упрощения первоначальной настройки информационной базы добавлен метод УстановитьПравоОткрытияВнешнихОтчетовИОбработок, который позволяет предварительно настроить безопасность открытия внешних обработок для пользователей с правами администратора.

Работа с файлами

·         Если в справочнике присоединенных файлов требуется хранить служебные файлы, не предназначенные для редактирования (файлы ЭДО, кэш данных бюджетирования и т.п.), необходимо:

o   Добавить опциональный реквизит Служебный типа Булево в справочник присоединенных файлов.

o   Для программного добавления служебных файлов воспользоваться функцией ДобавитьФайл общего модуля РаботаСФайлами, указав свойству Служебный параметра ПараметрыФайла значение Истина.

o   Для программного определения значения реквизита Служебный, воспользоваться функцией ДанныеФайла модуля РаботаСФайлами, возвращаемое значение которой расширено свойством Служебный типа Булево.

·        В том случае, если файл не был найден в информационной базе или в томе на диске, функции ДвоичныеДанныеФайла и ДанныеФайла общего модуля РаботаСФайлами вызывали исключение, которое блокировало открытие формы объекта. Для недопущения вызова исключения при ее вызове в указанных случаях, расширен программный интерфейс:

o   В функцию ДвоичныеДанныеФайла добавлен параметр ВызыватьИсключение типа Булево. Если указать этому параметру значение Ложь, функция вернет Неопределено.

o   В функцию ДанныеФайла общего модуля РаботаСФайлами добавлено свойство ВызыватьИсключение параметра ДополнительныеПараметры. Если указать этому свойству значение Ложь, функция вернет Неопределено.

o   В функцию ДанныеФайла общего модуля РаботаСФайламиСлужебныйВызовСервера добавлен параметр ВызыватьИсключение типа Булево. Если указать этому параметру значение Ложь, свойство возвращаемого значения ДвоичныеДанныеФайла примет значение Неопределено.

·        В целях упрощения разработки асинхронного клиентского кода, расширен программный интерфейс общего модуля РаботаСФайламиКлиент:

o   В процедуру ДобавитьФайлы добавлен необязательный параметр ОбработчикРезультата, содержащий описание оповещения, которое будет вызвано после добавления файлов.

o   В процедуру ОткрытьФормуВыбораФайлов добавлен необязательный параметр ОбработчикРезультата, содержащий описание оповещения, которое будет вызвано в результате закрытия формы выбора.

·         С целью повышения удобства работы с присоединенными файлами, в формах владельцев можно выводить:

o   Гиперссылку для перехода к списку присоединенных файлов, которая имеет настраиваемые заголовок и местоположение на форме, а так же позволяет присоединять файлы из формы размещения.

o   Поле реквизита формы типа присоединенный файл, предоставляющее возможность интерактивной работы с присоединенным файлом без перехода к карточке файла.

Для размещения элементов управления на форме, в общий модуль РаботаСФайлами добавлена процедура ПриСозданииНаСервере, а также вспомогательные функции-конструкторы ПолеФайла и ГиперссылкаФайлов.

Для обработки событий и команд формы, в общий модуль РаботаСФайламиКлиент добавлены процедуры:

o   ПриОткрытии;

o   ОбработкаОповещения;

o   КомандаУправленияПрисоединеннымиФайлами;

o   ПолеПредпросмотраНажатие;

o   ПолеПредпросмотраПеретаскивание;

o   ПолеПредпросмотраПроверкаПеретаскивания.

Подробнее см. документацию к подсистеме в разделе Использование при разработке конфигурации. Пример размещения см. в формах элементов справочников Демо: Номенклатура и Демо: Физические лица.

Для автоматической расстановки фрагментов кода, обеспечивающих размещение элементов на форме и последующее управление ими, рекомендуется воспользоваться внешней обработкой ВстраиваниеПодсистемыРаботаСФайлами.epf, входящей в состав дистрибутива.

·        Для определения умолчательных значений параметров внешнего вида и поведения гиперссылок для перехода к списку присоединенных файлов, размещаемых на формах владельцев, в общий модуль РаботаСФайламиПереопределяемый добавлена процедура ПриОпределенииГиперссылкиФайлов.

·        Инструмент разработчика Проверка внедрения БСП расширен  новыми проверками корректности встраивания подсистемы Работа с файлами.

·        В том случае, если в конфигурации предусмотрена работа внешних пользователей (партнеров, респондентов и др.), то для них можно обеспечить работу с присоединенными файлами и с файлами в папках (как ранее для обычных пользователей). Для этого необходимо:

o   для возможности присоединения файлов к произвольному справочнику или документу (если присоединенные файлы хранятся в справочнике Файлы), а также для работы с файлами в папках, в профиль внешнего пользователя включить роль ДобавлениеИзменениеПапокИФайловВнешнимиПользователями;

o   для присоединения файла к произвольному справочнику или документу, у которого предусмотрен собственный справочник присоединенных файлов, достаточно в ролях, предназначенных для внешних пользователей, дать соответствующие права на соответствующие справочники присоединенных файлов. Пример в демонстрационной конфигурации см. в роли _ДемоЧтениеДокументовПокупателей.

Свойства

·         Для упрощения разработки и обновления конфигураций предопределенные наборы свойств можно указывать не только как предопределенные элементы справочника НаборыДополнительныхРеквизитовИСведений, но и описывать их в процедуре ПриПолученииПредопределенныхНаборовСвойств общего модуля УправлениеСвойствамиПереопределяемый.

o   Если к объекту подключено несколько наборов свойств, то их наименования указываются в процедуре ПриПолученииНаименованийНаборовСвойств общего модуля УправлениеСвойствамиПереопределяемый.

·         Для получения ссылок на наборы, описанные в коде конфигурации, следует использовать функцию НаборСвойствПоИмени общего модуля УправлениеСвойствами.

Примеры см. в описании к указанным выше методам.

Удаление помеченных объектов

·         Для упрощения разработки собственных форм настроек подсистемы (например, в случае отсутствия в конфигурации подсистемы «Настройки программы») в общем модуле УдалениеПомеченныхОбъектовКлиент предусмотрены процедуры и функции:

o   ОбработкаОповещенияИзмененияФлажкаУдалятьПоРасписанию

o   ПриИзмененииФлажкаУдалятьПоРасписанию

o   НачатьУдалениеПомеченных

В общем модуле УдалениеПомеченныхОбъектов

o   ЗначениеФлажкаУдалятьПоРасписанию

См. пример вызова в форме Производительность обработки _ _ДемоПанельАдминистрирования.

Управление доступом

·         Теперь при отключенном режиме повышенной производительности функция ЧтениеРазрешено работает в полном объеме, а функция ИзменениеРазрешено, при наличии права Чтение «с точностью» до конкретного объекта или записи регистра, возвращают наличие права Изменение на таблицу в целом.

·         Для программного контроля наличия прав чтения или изменения «с точностью» до конкретного объекта или записи регистра предусмотрены процедуры ПроверитьЧтениеРазрешено и ПроверитьИзменениеРазрешено общего модуля УправлениеДоступом (при отключенном режиме повышенной производительности они работают с теми же ограничениями, как и функции ЧтениеРазрешено, ИзменениеРазрешено). Если прав недостаточно, тогда вызывается исключение с текстом, который выводится при недостатке прав перед записью объекта или набора записей регистра.

·         С помощью функции РазрешенныеЗначенияДляДинамическогоСписка теперь можно получить все разрешенные значения (а не только первые 100) и не только для авторизованного пользователя, но и для указанного. Для этого добавлено два новых необязательных параметра: Пользователь и ВернутьВсе.

Переход на версию 3.0.2 с версии 3.0.1

В этом разделе для каждой подсистемы даны дополнительные инструкции по переходу, которые необходимо выполнить в конфигураторе. Для расстановки флажков в окне сравнения/объединения см. главу 2 документации.

Для совместимости с предыдущими версиями библиотеки во всех подсистемах предусмотрен программный интерфейс. К нему относятся те объекты метаданных библиотеки, которые предназначены для использования в прикладном коде:

·         имена и состав параметров экспортных процедур и функций общих модулей, модулей объектов, менеджеров, наборов записей и т.п., которые размещены в области ПрограммныйИнтерфейс;

·         имена и состав параметров всех экспортных процедур и функций переопределяемых общих модулей;

·         имена объектов метаданных (включая их реквизиты, табличные части и пр.), к которым допускается непосредственное обращение из прикладного кода или из запросов.

В случае использования программного интерфейса существенно снижается необходимость в переработках кода конфигурации при обновлении на новые версии библиотеки.

Далее по каждой подсистеме приведены дополнительные инструкции, когда такая совместимость в силу исключительных причин не поддерживается, и требуется адаптировать конфигурацию к новому программному интерфейсу библиотеки. При этом не документируются изменения в служебных процедурах и функциях библиотеки (даже если они являются экспортными), которые не относятся к программному интерфейсу. При непосредственном вызове их из конфигурации следует учитывать, что они могут быть изменены, перемещены или удалены в следующей версии библиотеки, поскольку являются ее внутренней реализацией.

После выполнения инструкций по переходу рекомендуется воспользоваться инструментом Проверка внедрения БСП, входящим в состав дистрибутива библиотеки в виде внешнего отчета ПроверкаВнедренияБСП.erf. В этой версии состав проверок был дополнительно расширен, чтобы выявлять больше типовых проблем внедрения.

Обязательные действия по переходу

Варианты отчетов

·         Константу НастройкиКолонтитулов рекомендуется включить в состав планов обмена РИБ.

Управление доступом

·         Обновить стандартные шаблоны ограничения доступа к данным во всех ролях. Стандартные шаблоны взять из роли ИзменениеУчастниковГруппДоступа и скопировать во все роли. Для массового обновления удобно использовать вкладку Шаблоны ограничений в форме Все ограничения доступа (включить отбор по наименованию шаблона, выделить все строки и использовать команду Изменить).

·        Определяемый тип ЗначениеДоступаСГруппамиЗначенийДоступаОбъект переименован в ЗначениеДоступаОбъект. Рекомендуется добавить в него типы значений доступа. Если состав типов указан не верно, то при обновлении версии ИБ, как и раньше, возникнет исключение (в тексте ошибки будет указан список типов, которых не хватает и которые лишние).

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

Адресный классификатор

·        Регистры сведений ЗемельныеУчастки и СвязиАдресныхОбъектов не следует включать в любые планы обмена, так как в каждой информационной базе или узле загрузка адресных сведений ведется независимо.

Базовая функциональность

·         Для повышения надежности клиентского и серверного кода вместо следующих функций общего модуля ОбщегоНазначенияКлиентСервер рекомендуется использовать одноименные функции общих модулей ОбщегоНазначенияКлиент или ОбщегоНазначения. Прежние функции оставлены для совместимости и отмечены как устаревшие:

o   КлиентПодключенЧерезВебСервер

o   КодОсновногоЯзыка

o   ОперативнаяПамятьДоступнаяКлиентскомуПриложению

o   ПредставлениеЛокальнойДатыСоСмещением

o   ПредопределенныйЭлемент

o   РежимОтладки

o   СообщитьПользователю

o   ЭтоWindowsКлиент

o   ЭтоLinuxКлиент

o   ЭтоOSXКлиент

·         Для повышения надежности клиентского и серверного кода вместо следующих функций общего модуля ОбщегоНазначенияКлиентСервер рекомендуется использовать одноименную функцию общего модуля ОбщегоНазначения на сервере или инструкцию препроцессора в клиентском коде (см. описание к устаревшей функции).

o   ЭтоВебКлиент

o   ЭтоВебКлиентПодMacOS

o   ЭтоМобильныйКлиент

·         Следующие функции общего модуля ОбщегоНазначенияКлиентСервер устарели:

o   СкопироватьМассив

o   СкопироватьРекурсивно

o   СкопироватьСоответствие

o   СкопироватьСписокЗначений

o   СкопироватьСтруктуру

вместо них рекомендуется использовать функцию СкопироватьРекурсивно общих модулей ОбщегоНазначенияКлиент или ОбщегоНазначения.

·         Функции УстановитьВнешнееСоединение и УстановитьВнешнееСоединениеСБазой общего модуля ОбщегоНазначенияКлиентСервер устарели, вместо них рекомендуется использовать функции УстановитьВнешнееСоединениеСБазой общего модуля ОбщегоНазначенияКлиент или ОбщегоНазначения. Рекомендуется пересмотреть все места вызовов этих функций.

·         Программный интерфейс общего модуля АдминистрированиеКластераКлиентСервер устарел. Вместо него рекомендуется использовать программный интерфейс общего модуля АдминистрированиеКластера и переработать код таким образом, чтобы он работал только на сервере.

·         Функция ДиагностикаСоединения общего модуля ОбщегоНазначенияКлиентСервер устарела, вместо нее рекомендуется использовать ДиагностикаСоединения общего модуля ПолучениеФайловИзИнтернета и переработать код таким образом, чтобы он работал только на сервере.

·         Следующие функции общего модуля ДлительныеОперацииКлиент устарели:

o   ИнициализироватьПараметрыОбработчикаОжидания

o   ОбновитьПараметрыОбработчикаОжидания

o   ОткрытьФормуДлительнойОперации

o   ЗакрытьФормуДлительнойОперации

вместо них рекомендуется использовать функцию ОжидатьЗавершение с параметром ПараметрыОжидания.ВыводитьОкноОжидания = Истина общего модуля ДлительныеОперацииКлиент.

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

·         Для унификации работы с файловой системой

o   функции ЗапуститьПрограмму и ПараметрыЗапускаПрограммы общего модуля ОбщегоНазначенияКлиентСервер перенесены в общие модули ФайловаяСистемаКлиент и ФайловаяСистема. Рекомендуется пересмотреть все места вызовов этих функций.

o   функция ОткрытьФайлВПрограммеПросмотра общего модуля ОбщегоНазначенияКлиент отмечена как устаревшая. Вместо нее рекомендуется использовать функцию ОткрытьФайл общего модуля ФайловаяСистемаКлиент.

o   также перенесены в общие модули ФайловаяСистемаКлиент и ФайловаяСистема следующие процедуры и функции общих модулей ОбщегоНазначения и ОбщегоНазначенияКлиент:

·         ОткрытьПроводник

·         ОткрытьНавигационнуюСсылку

·         ПараметрыЗапускаПрограммы

·         ЗапуститьПрограмму

·         СоздатьВременныйКаталог

·         УдалитьВременныйКаталог

o   вместо процедур и функций модуля ОбщегоНазначенияКлиент:

·         ПоказатьВопросОбУстановкеРасширенияРаботыСФайлами

·         ПроверитьРасширениеРаботыСФайламиПодключено

·         ПредлагатьУстановкуРасширенияРаботыСФайлами

рекомендуется использовать процедуру ПодключитьРасширениеДляРаботыСФайлами модуля ФайловаяСистемаКлиент.

Все указанные выше прежние процедуры и функций отмечены как устаревшие для совместимости.

·         Для упрощения разработки предусмотрена функция ПустойУникальныйИдентификатор общего модуля ОбщегоНазначенияКлиентСервер

·         Для унификации вызовов внешних операций операция ЗарегистрироватьCOMСоединитель общего модуля ОбщегоНазначенияКлиент переведена в асинхронный режим, добавлен параметр Оповещение.

·         Параметр ДругиеИсключения функции ЕстьСсылкиНаОбъект общего модуля ОбщегоНазначения удален как невостребованный.

·         В рамках приведения кода к стандартам процедура ЗаполнитьКоллекциюСвойств модуля ОбщегоНазначенияКлиентСервер признана устаревшей. Вместо нее рекомендуется использовать ДополнитьТаблицу модуля ОбщегоНазначенияКлиентСервер.

·         Функция ОбъектПоПолномуИмени общего модуля ОбщегоНазначения отмечена как устаревшая как не востребованная и будет удалена в будущих релизах.

·         С целью выделения российской специфики из международной поставки функция ТолькоКириллицаВСтроке общего модуля СтроковыеФункцииКлиентСервер помечена как устаревшая и перенесена в модуль СтроковыеФункцииКлиентСерверРФ.

·         Функция ЕстьЗащитаОтОпасныхДействий общего модуля ОбщегоНазначения отмечена как устаревшая как невостребованная и будет удалена в будущих релизах.

Бизнес-процессы и задачи

·         Процедура ОбработкаПолученияПредставленияБизнесПроцесса общего модуля БизнесПроцессыИЗадачиКлиентСервер устарела и оставлена для обеспечения обратной совместимости, вместо нее рекомендуется использовать одноименные процедуры в общем модуле БизнесПроцессыИЗадачиКлиент для клиентских вызовов и в общем модуле БизнесПроцессыИЗадачиКлиентСервер для серверных.

Варианты отчетов

·         Процедура ПолучитьНастройкиОтчетаПоУмолчанию общего модуля ОтчетыКлиентСервер устарела и оставлена для обеспечения обратной совместимости. Вместо нее рекомендуется использовать процедуру НастройкиОтчетаПоУмолчанию того же модуля.

Взаимодействия

·        При просмотре писем предусмотрена фильтрация небезопасного содержимого. Входящие письма могут содержать элементы, позволяющие отправителю скрытно отслеживать действия с письмом, в частности, время просмотра и некоторые параметры устройства, на котором письмо было прочитано. К небезопасным элементам относятся, например, загружаемые из Интернета картинки письма или встроенные скрипты.

o   В целях безопасности такие элементы безусловно отключаются при просмотре письма.

o   Возможность отображать заблокированные картинки регулируется общей настройкой Запретить отображение небезопасного содержимого в письмах (раздел АдминистрированиеОрганайзерПочта).

·        Разместить константу ЗапретитьОтображениеНебезопасногоСодержимогоВПисьмах в панели администрирования Обработка.ПанельАдминистрированияБСП.Форма.Органайзер и включить ее в план обмена РИБ.

Дополнительные отчеты и обработки

·        Функция ИдентификаторРабочегоСтола общего модуля ДополнительныеОтчетыИОбработкиКлиентСервер устарела, вместо нее рекомендуется использовать ИмяНачальнойСтраницы этого же общего модуля. Рекомендуется пересмотреть места вызовов этой функции.

·        Функция НаименованиеПодсистемы общего модуля ДополнительныеОтчетыИОбработкиКлиентСервер удалена как невостребованная.

Контактная информация

·        Для автоматического отображения вариантов адреса при непосредственном клике в поле адреса предусмотрена процедура АвтоПодборАдреса общего модуля УправлениеКонтактнойИнформациейКлиент. Предыдущая процедура АвтоПодбор общего модуля УправлениеКонтактнойИнформациейКлиент отмечена как устаревшая для обратной совместимости. Рекомендуется произвести замену во всех местах использования.

·        Функция ПредставлениеКонтактнойИнформации общего модуля УправлениеКонтактнойИнформацией теперь умеет формировать представление конактной информации из структуры полученной функциями СведенияОбАдресе общего модуля РаботаСАдресами и СведенияОТелефона общего модуля УправлениеКонтактнойИнформацией. Поэтому функция СформироватьПредставлениеАдреса общего модуля УправлениеКонтактнойИнформациейКлиентСервер отмечена как устаревшая и оставлена для обеспечения обратной совместимости.

·        Упрощена установка свойства Использовать у видов контактной информации. Теперь если в процедуре УстановитьСвойстваВидаКонтактнойИнформации для вида контактной информации свойство Использовать устанавливается в Истина, то автоматически аналогичное свойство Использовать  устанавливается в Истина у родительской группы. Рекомендуется удалить места, где ранее в таких случаях требовалось принудительно для группы устанавливать свойство Использовать в Истина.

Оценка производительности

·         Устарела функция НачатьЗамерВремени общего модуля ОценкаПроизводительностиКлиент. Вместо нее рекомендуется использовать функцию ЗамерВремени.

·         Удален устаревший программный интерфейс из общего модуля ОценкаПроизводительностиКлиентСервер.

Печать

·         Процедура УправлениеПечатьюПереопределяемый общего модуля ПриЗаполненииНастроекФорматовСохраненияТабличногоДокумента удалена как невостребованная.

·         Регистр сведений ПоставляемыеМакетыПечати рекомендуется не включать в план обмена РИБ.

·         Функция ФорматнаяСтрокаУФЭБС общего модуля УправлениеПечатью отмечена как устаревшая. Вместо нее рекомендуется вызывать функцию ФорматнаяСтрокаУФЭБС в общего модуля УправлениеПечатьюРФ.

Получение файлов из интернета

·         Для повышения надежности клиентского и серверного кода функция ПолучитьПрокси общего модуля ПолучениеФайловИзИнтернетаКлиентСервер устарела, вместо нее рекомендуется использовать ПолучитьПрокси общего модуля ПолучениеФайловИзИнтернета и перенести вызывающий код на сервере. Рекомендуется пересмотреть места вызовов этих функции.

·         Для упрощения ветвления кода при разборе строк URI, функции РазделитьURL и СтруктураURI общего модуля ПолучениеФайловИзИнтернетаКлиентСервер помечены как устаревшие, вместо них рекомендуется использовать СтруктураURI общего модуля ОбщегоНазначенияКлиентСервер. Рекомендуется пересмотреть места вызовов этих функции.

Полнотекстовый поиск

·         Функция общего модуля ПолнотекстовыйПоискКлиент ПоказатьУправлениеПолнотекстовымПоискомИИзвлечениемТекстов устарела, вместо нее рекомендуется использовать ПоказатьНастройку общего модуля ПолнотекстовыйПоискКлиент. Рекомендуется пересмотреть места вызовов этих функции.

Пользователи

·         Для повышения надежности клиентского и серверного кода все функции общего модуля ПользователиКлиентСервер помечены, как устаревшие. Функции АвторизованныйПользователь, ТекущийПользователь, ЭтоСеансВнешнегоПользователя рекомендуется вызывать из общих модулей Пользователи и ПользователиКлиент. Функцию ТекущийВнешнийПользователь рекомендуется вызывать из общих модулей ВнешниеПользователи и ВнешниеПользователиКлиент. Рекомендуется пересмотреть места вызовов этих функций.

Работа с файлами

·        Изменен вызов функции ДанныеФайла модуля РаботаСФайлами: параметр ИдентификаторФормы заменен на ДополнительныеПараметры типа Структура, остальные параметры помечены устаревшими и оставлены для обратной совместимости. Рекомендуется пересмотреть места вызова этой функции. Для инициализации структуры ДополнительныеПараметры в программном интерфейсе общего модуля РаботаСФайламиКлиентСервер размещена функция ПараметрыДанныхФайла.

·        Функция СоздатьФайлНаОсновеФайлаНаДиске общего модуля РаботаСФайлами отмечена как устаревшая. Вместо нее рекомендуется использовать функцию ДобавитьФайлСДиска общего модуля РаботаСФайлами. Рекомендуется произвести замену во всех местах использования.

Электронная подпись

Переход на исправительные релизы 3.0.2

Исправительные релизы библиотеки отличаются только четвертой цифрой в полном номере версии, например: 3.0.2.1, 3.0.2.20, 3.0.2.300 и т.п. Для обновления на исправительные релизы предназначена внешняя обработка ОбновлениеНаИсправительнуюВерсиюБСП.epf из комплекта поставки, которая позволяет существенно сэкономить время при регулярных обновлениях (например, еженедельных).

Необходимо запустить обработку в информационной базе с конфигурацией, содержащей предыдущий релиз библиотеки, указать cf-файл поставки новой версии библиотек и нажать на кнопку Обновить на исправительную версию. При этом выполняется автоматическое сравнение/объединение с новой конфигурацией библиотеки согласно настройкам, которые соответствуют документации: будут перенесены все поставляемые объекты библиотеки, а переопределяемые при внедрении – объединены с приоритетом конфигурации поставщика (например, определяемые типы) или пропущены (как например, переопределяемые модули). После сравнения/объединения конфигурация базы данных не будет обновлена автоматически, что позволяет выполнить сравнение с конфигурацией базы данных и внести правки в измененные объекты: переопределяемые модули, различные локальные исправления и доработки.

Кроме того, в качестве альтернативного варианта, по кнопке Сформировать файл настроек предусмотрена возможность сформировать файл настроек сравнения/объединения, который затем можно загрузить в конфигураторе для ручного сравнения/объединения.

После завершения сравнения/объединения настоятельно рекомендуется также воспользоваться инструментом Проверка внедрения БСП, входящим в состав дистрибутива библиотеки в виде внешнего отчета ПроверкаВнедренияБСП.erf.

C версии 3.0.2.293 и меньше

Адресный классификатор

·        Регистр сведений СвязиАдресныхОбъектов не следует включать в любые планы обмена, так как в каждой информационной базе или узле загрузка адресных сведений ведется независимо.

C версии 3.0.2.269 и меньше

Настройки программы

·        Рекомендуется перенести в конфигурацию код модулей форм всех панелей администрирования, объединив его с собственными изменениями этих форм.

C версии 3.0.2.229 и меньше

Взаимодействия

·        При просмотре писем предусмотрена фильтрация небезопасного содержимого. Входящие письма могут содержать элементы, позволяющие отправителю скрытно отслеживать действия с письмом, в частности, время просмотра и некоторые параметры устройства, на котором письмо было прочитано. К небезопасным элементам относятся, например, загружаемые из Интернета картинки письма или встроенные скрипты.

o   В целях безопасности такие элементы безусловно отключаются при просмотре письма.

o   Возможность отображать заблокированные картинки регулируется общей настройкой Запретить отображение небезопасного содержимого в письмах (раздел АдминистрированиеОрганайзерПочта).

·        Разместить константу ЗапретитьОтображениеНебезопасногоСодержимогоВПисьмах в панели администрирования Обработка.ПанельАдминистрированияБСП.Форма.Органайзер и включить ее в план обмена РИБ.

C версии 3.0.2.207 и меньше

Обмен данными

·         Изменено поведение механизма конвертации данных XDTO

o   Созданные по ключевым свойствам в процессе загрузки объекты, которые не участвуют в сообщении обмена как самостоятельные сущности (выгрузка объекта «по ссылке»), больше не удаляются автоматически. Такой подход обеспечивает отсутствие на принимающей стороне битых ссылок на объекты, ранее не выгружавшиеся, или которые не могут быть выгружены из информационной базы-источника. Если прикладная логика обмена все же требует удаления таких объектов, следует переписать соответствующие правила конвертации свойств на конвертацию по алгоритму, где в инструкцию конвертации необходимо вставить новое свойство УдалятьСозданныеПоКлючевымСвойствам со значением Истина.
Инструкция = Новый Структура;
Инструкция.Вставить(
  “Значение”, Данные
XDTO.Контрагент);
Инструкция.Вставить(
  “ИмяПКО”, “Справочник_Контрагенты_Получение”);
Инструкция.Вставить(
  “УдалятьСозданныеПоКлючевымСвойствам”, Истина);
ПолученныеДанные.ДополнительныеСвойства.Вставить(
  “Контрагент”, Инструкция);

C версии 3.0.2.156 и меньше

Адресный классификатор

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

C версии 3.0.2.139 и меньше

Управление доступом

·         Обновить стандартные шаблоны ограничения доступа к данным во всех ролях. Стандартные шаблоны взять из роли ИзменениеУчастниковГруппДоступа и скопировать во все роли. Для массового обновления удобно использовать вкладку Шаблоны ограничений в форме Все ограничения доступа (включить отбор по наименованию шаблона, выделить все строки и использовать команду Изменить).

Особенности обновления с ранних версий

При обновлении с ранних версий библиотеки (до 3.0.1) следует

·         выполнить в конфигураторе сравнение/объединение с файлов поставки последней версии библиотеки (на которую выполняется переход);

·         и затем последовательно выполнить инструкции из всех разделов Переход с предыдущих версий для каждой пропущенной версии.

Например, если выполняется обновление с версии 1.0.1.1 сразу на версию 3.0.1.123, то следует последовательно выполнить инструкции всех разделов:

·        Переход на версию 1.0.1 с предыдущих версий 1.0.1;

·        Переход на версию 2.0.1 с версии 1.0.1 (также включает в себя все инструкции разделов Переход с тестовых версий 2.0.1 и Переход на версию 2.0.1 с предыдущих версий 2.0.1);

·        Переход на версию 3.0.1 с версии 2.0.1 (также включает в себя все инструкции разделов Переход с тестовых версий 3.0.1 и Переход на версию 3.0.1 с предыдущих версий 3.0.1)

Версия 3.0.1

Версия 3.0.1 является новой редакцией продукта 1С:Библиотека стандартных подсистем. В редакции 3.0 существенное развитие получили подсистемы Управление доступом, Обновление конфигурации, Печать, Контактная информация, а также включена новая подсистема Организации. Полный перечень нововведений см. ниже в разделе Новые возможности и изменения.

Версия 3.0.1 предназначена для разработки на платформе 1С:Предприятие версии 8.3.12 и выше с отключенным режимом совместимости с версией 8.3.12.

Новые возможности и изменения

Базовая функциональность

·         Ряд улучшений в списке Расширения (раздел Администрирование – Печатные формы, отчеты и обработки):

o   Для временного отключения установленного расширения флажок Подключать расширение при входе в программу. Ранее для этого приходилось удалять расширение и добавлять заново.

o   В случае если работа ведется в распределенной информационной базе (РИБ) для автоматической синхронизации расширений между узлами РИБ предусмотрен флажок Передавать в подчиненные узлы РИБ. Он позволяет изменить поведение программы одинаковым образом сразу по всех узлах. Например, его рекомендуется включать для расширений, содержащих новые справочники, документы или реквизиты.

o   При работе через Интернет (в модели сервиса) в списке расширений также видны общие расширения, подключенные для информационной базы в целом. Для администратора сервиса при подключении расширений выбирается та область, в которую он вошел; если вход в область не был выполнен, то расширение устанавливается как общее, для всей информационной базы в целом.

o   Перед отключением или удалением расширения выводятся дополнительные предупреждения. В случае если подключенное расширение хранит данные в информационной базе (например, содержит новые справочники или документы), то его отключение приведет к недоступности этих данных и более того, может привести к невозможности изменять часть данных самой программы (например, если в расширении добавлены реквизиты или табличные части к объектам программы). Соответственно, удаление такого расширения приведет к безвозвратной потере этих данных. Поэтому перед отключением или удалением расширения также рекомендуется ознакомиться с документацией, которую можно получить от поставщика расширения. Кроме того, перед удалением расширения выводится рекомендация выполнить резервное копирование.

Адресный классификатор

      Предусмотрена загрузка и хранение адресных сведений (ФИАС) по муниципальному делению согласно Приказу ФНС России от 06.07.2017 N ММВ-7-17/535@ «Об утверждении Стандарта форм документов, используемых налоговыми органами при реализации своих полномочий...» Подробнее см.: https://its.1c.ru/db/garant#content:71612934:hdoc. При этом ранее загруженные сведения классификатора стали недействительным и необходимо однократно загрузить новый адресный классификатор (ФИАС).

      Все операции по работе с адресами (автоподбор и проверка корректности) автоматически выполняются онлайн с помощью веб-сервиса фирмы «1С». Для этого потребуется авторизация в Интернет-поддержке пользователя. Этот вариант позволяет не загружать весь классификатор целиком в программу и существенно сэкономить место на диске.

      При отсутствии постоянного подключения к Интернету или для экономии трафика в разделе Администрирование – Интернет-поддержка и сервисы – Адресный классификатор можно загрузить адресный классификатор целиком или выборочно по регионам. Внимание: из-за адресных сведений (ФИАС) по муниципальному делению увеличился объем классификатора, требуется до 2 Гб места на диске. Однако для уменьшения объема загружаемых адресных сведений стало возможным отключать загрузку истории изменений адресных объектов (до 30% экономии места на диске). Кроме того, существенно ускорена сама загрузка адресного классификатора в программу.

Календарные графики

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

Контактная информация

      Предусмотрена возможность ввода адресов по муниципальному делению согласно Приказу ФНС России от 06.07.2017 N ММВ-7-17/535@ «Об утверждении Стандарта форм документов, используемых налоговыми органами при реализации своих полномочий...» Подробнее см.: https://its.1c.ru/db/garant#content:71612934:hdoc. В связи с этим проверка адресных сведений выполняется только в соответствии с данными ФИАС, а не по КЛАДР.

      По-прежнему доступен ввод в историческом формате – по административно-территориальному делению. В форме ввода адреса (меню Еще) также предусмотрен переключатель между отображением адреса по муниципальному и административно-территориальному делениям.

      В форме ввода адреса реализован ряд полезных улучшений:

o   Ввод иностранных адресов c разбивкой на полям Город и Адрес;

o   Наиболее востребованные поля Город, населенный пункт и Улица перемещены вверх;

o   Если допустим ввод только российских адресов, то поле Страна скрывается как избыточное.

o   Поле Комментарий скрывается, если не заполнено; его можно вывести на форму по кнопке Добавить (теперь расположена в командной панели формы).

      Кроме того, при наличии постоянного подключения к Интернету доступен автоподбор адресов непосредственно в поле адреса без необходимости открытия формы адреса (например, в поле Адрес в карточке организации).

Контроль ведения учета

·         Регистр сведений КлючиДоступаКРегиструРезультатыПроверкиУчета не рекомендуется включать в планы обмена распределенной ИБ (РИБ), так как в каждом узле проверка ведения учета ведется независимо.

Обмен данными

      Для унификации интерфейса работы с настройками синхронизации данных

o   убрана форма одной синхронизации. Все настроенные в программе обмены отображаются в виде списка;

o   панель работы с настройками синхронизации в приложении в Интернете и в локальной версии теперь одинаковые (Администрирование – Синхронизация данных – Настройки синхронизации данных).

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

      Анализ и сопоставление данных теперь выполняются после завершения настройки синхронизации данных.

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

      При использовании прямого подключения или подключения через Интернет, появилась возможность отправки данных во вторую программу для выполнения в ней сопоставления. Также, данная возможность доступна для обменов между программами в сервисе «1С:Предприятие через Интернет».

      Появилась возможность настройки подключения к программе через Интернет из других программ. При таком виде подключения программа только принимает запросы на отправку и загрузку данных из другой программы. Данная возможность поддерживается для обменов через универсальный формат EnterpiseData.

      Для программ в сервисе «1С:Предприятие через Интернет» добавлена возможность настройки обмена с другими программами, доступными через Интернет.

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

      С целью поддержки законодательства, обновлены существующие версии форматов 1.3, 1.4, 1.5, 1.6.

      В монитор предупреждений при синхронизации через универсальный формат добавлен вывод сообщений о проблемах при отправке, связанных с незаполненными реквизитами в данных.

Обновление конфигурации

      Для оперативного устранения различных проблем в работе программы в разделе АдминистрированиеОбслуживание предусмотрена ссылка Установка обновлений и исправлений (патчей). С ее помощью возможно установить не только обновления на новый релиз, но и локальные исправления отдельных проблем (патчи), опубликованные разработчиком программы. Патчи применяются оперативно, без необходимости обязательного завершения работы всех пользователей  с программой. Данная возможность недоступна для базовых версий.

Печать

      Существенно ускорено и повышена стабильность формирования печатных форм в формате офисных документов. Команды печати в этом формате теперь доступны во всех видах клиентов в операционных системах семейства Linux, Mac OS, а также в веб-клиенте.

      В том случае, если печатная форма в формате Microsoft Word (doc) была подменена собственным (пользовательским) макетом, рекомендуется перезаписать такой макет в формат Office Open XML (docx). Для этого необходимо:

      В разделе Администрирование – Печатные формы, отчеты и обработки – Макеты печатных форм для измененного макета нажать Изменить и сохранить открывшийся шаблон на диск

      Вернуть измененный макет к стандартному кнопкой Удалить измененный макет

      Снова открыть данный макет для изменения кнопкой Изменить

      Перенести изменения из сохраненного шаблона в открытый и завершить изменения макета

      Изменения в макетах в формате OpenDocument Text (odt) необходимо сохранить на диск до обновления на новую версию программы. После обновления все стандартные макеты odt и изменения к ним будут удалены. После обновления внести изменения в стандартный макет.

Работа в модели сервиса

·         В комплект поставки в папке ExtFiles\Поставляемые данные размещены внешние обработки, предназначенные для загрузки поставляемых данных в программу в модели сервиса (подключаются в Менеджере сервиса, см. https://its.1c.ru/db/freshpub#content:303:hdoc):

o   ПоставляемыеФайлыФИАС_3.0.epf (для подсистемы Адресный классификатор);

o   ЗагрузкаКлассификатораБанков.epf (для подсистемы Банки);

o   ЗагрузкаКурсовВалют.epf (для подсистемы Валюты).

·         Обработка ПоставляемыеФайлыФИАС_3.0.epf предназначена только для программ с поддержкой ввода адресов по муниципальному делению и может использоваться совместно с предыдущей версией обработки поставляемых файлов ФИАС.

Центр мониторинга

      В целях повышения качества выпускаемых программных продуктов встроен автоматический анализ аварийных завершений работы программы. По результатам анализа может быть сформировано предложение об отправке отчета об ошибках в фирму «1С». Отчеты об ошибках содержат информацию, автоматически собираемую программой при аварийном завершении работы. Взаимодействие ведется с администратором программы.

 

Переход на версию 3.0.1 с версии 2.4.6

В этом разделе для каждой подсистемы даны дополнительные инструкции по переходу, которые необходимо выполнить в конфигураторе. Для расстановки флажков в окне сравнения/объединения см. главу 2 документации.

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

·         имена и состав параметров экспортных процедур и функций общих модулей, модулей объектов, менеджеров, наборов записей и т.п., которые размещены в области ПрограммныйИнтерфейс;

·         имена и состав параметров всех экспортных процедур и функций переопределяемых общих модулей;

·         имена объектов метаданных (включая их реквизиты, табличные части и пр.), к которым допускается непосредственное обращение из прикладного кода или из запросов.

В этом разделе приведены дополнительные инструкции, когда обратная совместимость не поддерживается, и требуется адаптировать конфигурацию к новому программному интерфейсу библиотеки. При этом не документируются изменения в служебных процедурах и функциях библиотеки (даже если они являются экспортными), которые не относятся к программному интерфейсу. При непосредственном вызове их из прикладного кода следует учитывать, что они могут быть изменены, перемещены или удалены в следующей версии библиотеки, поскольку являются ее внутренней реализацией.

При этом при обновлении сразу «через» несколько версий библиотеки по завершению сравнения/объединения в конфигураторе необходимо также выполнить инструкции из всех разделов Переход с тестовых версий и Переход с предыдущих версий, если они есть. Например, если выполняется обновление с версии 1.0.1.1 сразу на версию 3.0.1.123, то следует последовательно выполнить инструкции всех разделов:

·        Переход на версию 1.0.1 с предыдущих версий 1.0.1;

·        Переход на версию 2.0.1 с версии 1.0.1 (также включает в себя все инструкции разделов Переход с тестовых версий 2.0.1 и Переход на версию 2.0.1 с предыдущих версий 2.0.1);

·        Переход на версию 3.0.1 с версии 2.0.1 (также включает в себя все инструкции разделов Переход с тестовых версий 3.0.1 и Переход на версию 3.0.1 с предыдущих версий 3.0.1)

В частном случае, когда при обновлении пропущены лишь некоторые исправительные релизы предыдущей версии библиотеки, например, при переходе на 3.0.1.123 с версии 2.0.1.100, «минуя» промежуточные 2.0.1.101 и 2.0.1.102, следует обратить внимание на инструкции раздела  Переход на версию 2.0.1 с предыдущих версий 2.0.1.

После выполнения инструкций по переходу, которые описаны в этом разделе, настоятельно рекомендуется также воспользоваться инструментом Проверка внедрения БСП, входящим в состав дистрибутива библиотеки в виде внешнего отчета ПроверкаВнедренияБСП.erf. В этой версии состав проверок был дополнительно расширен, чтобы выявлять больше типовых проблем внедрения.

Кроме того, в связи с переходом на версию платформы 1С:Предприятие 8.3.12 и отключением режима совместимости следует выполнить адаптацию конфигурации в соответствии с методикой, публикуемой на ИТС «Перевод конфигураций на платформу "1С:Предприятие 8.3" без режима совместимости с версией 8.2». См.: https://its.1c.ru/db/metod8dev#content:5293:hdoc. К этой методике также приложен отчет, позволяющий автоматически выявлять часть описанных в ней проблем перехода.

Адресный классификатор

·         Для хранения муниципальных адресов, ускорения работы автоподбора и проверки адресов изменена структура регистров сведений АдресныеОбъекты, ДомаЗданияСтроения, ДополнительныеАдресныеСведения, ЗагруженныеВерсииАдресныхСведений, ИсторияАдресныхОбъектов, ОриентирыАдресныхОбъектов, ПричиныИзмененияАдресныхСведений, СлужебныеАдресныеСведения, УровниСокращенийАдресныхСведений. При этом ранее загруженные записи регистров автоматически не конвертируются. Все объекты метаданных подсистемы не следует включать в планы обмена.

·         Регистр сведений УдалитьАдресныйКлассификатор удален, т.к. перенос адресных сведений из КЛАДР более не требуется.

·         Функция ИдентификаторыАдреса общего модуля АдресныйКлассификатор устарела, вместо нее следует использовать СведенияОбАдресе и СведенияОбАдресах общего модуля РаботаСАдресами подсистемы Контактная информация. Следует пересмотреть все места вызовов этой функции.

Базовая функциональность

·         Предусмотрен унифицированный конструктор объекта описания защищенного соединения OpenSSL в общем модуле ОбщегоНазначенияКлиентСервер, функция НовоеЗащищенноеСоединение. Для повышения безопасности с ее помощью следует устанавливать защищенные соединения с любыми внешними ресурсами в объектах HTTPСоединение и FTPСоединение.

·         В целях соответствия стандартам разработки роль БазовыеПрава переименована в БазовыеПраваБСП, роль БазовыеПраваВнешнегоПользователя переименована в БазовыеПраваВнешнихПользователейБСП. Необходимо произвести соответствующие замены в модулях конфигурации.

Защита персональных данных

·         Предусмотрено заполнение ФИО ответственного за обработку ПДн для вывода на печать вместо представления пользователя. Для заполнения ФИО следует реализовать метод ЗаполнитьФИОФизическогоЛица в общем модуле ЗащитаПерсональныхДанныхПереопределяемый.

·         В случае планов обмена распределенной информационной базы (РИБ) и автономной работы необходимо в обработчиках события ПередЗаписью модулей объекта плана обмена добавить вызов метода ЗащитаПерсональныхДанных.ПослеЗагрузкиДанных. Это позволит актуализировать даты регламентного скрытия персональных данных субъектов по окончании обмена. Подробнее см. в документации к подсистеме.

·         В обменах через универсальный формат EnterpiseData при выгрузке данных, зарегистрированных на узле плана обмена, выполняется принудительная выгрузка объектов по ссылкам в том случае, если ранее они не выгружались. Если выгружаемые данные не относятся к источникам персональных данных, но в реквизитах присутствует ссылка на субъект или источник персональных данных, то необходимо позаботиться о том, чтобы такой объект не был выгружен, если он содержит в себе скрытые персональные данные. Это можно сделать на уровне правил обработки данных, воспользовавшись методом ЭтоОбъектСоСкрытымиПерсональнымиДанными программного интерфейса модуля ЗащитаПерсональныхДанных. Пример см. в демонстрационной конфигурации в методе ПОД_Справочник_ФизическиеЛица_Отправка_ПриОбработке модуля _ДемоМенеджерОбменаЧерезУниверсальныйФормат.

·         Необходимо контролировать выгрузку субъекта по ссылке из не источника персональных данных и в правилах обмена. Пример отказа в выгрузке субъекта со скрытыми персональными см. в демонстрационной конфигурации в макете ПравилаОбмена плана обмена _ДемоОбменСБиблиотекойСтандартныхПодсистем в ПКС свойства ФизическоеЛицо ПКО _ДемоОтветственныеЛица.

Контактная информация

·        Изменен внутренний формат хранения адресов. Для хранения адресов в новом внутреннем формате JSON необходимо в табличных частях КонтактнаяИнформация всех объектов-владельцев контактной информации добавить реквизит Значение с типом Строка. Реквизит ЗначенияПолей оставлен для обратной совместимости (прежде всего, для обмена с другими программами) и заполняется синхронно с новым реквизитом Значение. У адресов, хранящихся в ЗначенияПолей, отсутствуют идентификаторы адресных объектов и муниципальные адресные сведения. При разработке обмена данными с конфигурацией, использующей предыдущий формат хранения адресов, следует обеспечить выгрузку и загрузку значения реквизита ЗначенияПолей, а реквизит Значение очищать при загрузке из конфигурации предыдущей версии.

·        Для автоподбора адресов непосредственно в поле адреса, без необходимости открытия формы ввода адреса, в модулях форм объектов-владельцев вставить две процедуры Подключаемый_КонтактнаяИнформацияАвтоПодбор и Подключаемый_КонтактнаяИнформацияОбработкаВыбора. Подробности см. в документации в разделе Контактная информация - Настройка объектов–владельцев контактной информации.

·        Из-за более длинных адресов по муниципальному делению (по сравнению с административно-территориальными) увеличена ширина полей ввода адреса до 70 символов. Следует изменить ширину статических элементов контактной информации на формах, соответственно.

·        Функция КонтактнаяИнформацияXMLПоПредставлению общего модуля УправлениеКонтактнойИнформацией устарела и оставлена для обеспечения обратной совместимости, вместо нее следует использовать КонтактнаяИнформацияПоПредставлению.

·        Процедура СтруктураКонтактнойИнформацииПоТипу общего модуля УправлениеКонтактнойИнформациейКлиентСервер устарела, необходимо заменить все ее вызовы на СтруктураКонтактнойИнформацииПоТипу общего модуля РаботаСАдресамиКлиентСервер.

·        Из-за отсутствия поддержки адресных сведений по муниципальному делению функции ПредыдущийФорматКонтактнойИнформацииXML, ПредыдущаяСтруктураКонтактнойИнформацииXML, АдресВФорматеКЛАДР программного интерфейса общего модуля РаботаСАдресами устарели, вместо них следует использовать функцию СведенияОбАдресе.

·        В целях улучшения производительности, когда требуется получить только поля, содержащие адресные сведения без идентификаторов и кодов адреса, у функций СведенияОбАдресе и СведенияОбАдресах программного интерфейса общего модуля РаботаСАдресами второй параметр ДополнительныеПараметры расширен свойством КодыАдреса (Булево), определяющим необходимость получения кодов. По умолчанию, свойство установлено в Ложь, поэтому следует пересмотреть все места вызовов этих функции и в случаях использования полей ИдентификаторАдресногоОбъекта и ИдентификаторДома при вызове функций передавать свойство КодыАдреса равное Истина. Например:

ДополнительныеПараметры = Новый Структура("КодыАдреса", Истина);
АдресПоПолям = РаботаСАдресами.СведенияОбАдресе(АдресВJSON, ДополнительныеПараметры);

Обмен данными

·         Изменена схема настройки данных, теперь нет необходимости разрабатывать интерфейсы настройки отправки и получения данных для программы-корреспондента при использовании обмена через COM и Интернет. Следует внести следующие изменения для исключения более не используемой функциональности.

o   Для всех планов обмена удалить формы

·         ФормаНастройкиУзлов

·         ФормаНастройкиЗначенийПоУмолчаниюБазыКорреспондента

·         ФормаНастройкиУзлаБазыКорреспондента

·         ФормаНастройкиЗначенийПоУмолчанию

o   Для всех планов обмена, кроме плана обмена АРМ, удалить форму

·         ФормаНастройкиУзла

o   Для всех планов обмена в модуле менеджера

·         В процедуре ПриПолученииНастроек исключить обращение к свойствам
ОписаниеОграниченийПередачиДанныхБазыКорреспондента
ОписаниеЗначенийПоУмолчаниюБазыКорреспондента
структуры Настройки.Алгоритмы.

o   Для всех планов обмена, кроме плана обмена АРМ, в модуле менеджера

·         В процедуре ПриПолученииНастроек исключить обращение к свойствам ОписаниеОграниченийПередачиДанных
ОписаниеЗначенийПоУмолчанию
структуры Настройки.Алгоритмы.

o   Для всех планов обмена из процедуры модуля менеджера ПриПолученииОписанияВариантаНастройки (при ее наличии) исключить обращение к свойствам
ОтборыКорреспондента
ЗначенияПоУмолчаниюКорреспондента
ИмяФормыЗначенийПоУмолчанию
ИмяФормыОтборовКорреспондента
ИмяФормыЗначенийПоУмолчаниюКорреспондента
ИмяФормыОбщиеДанныеУзлов
ПояснениеДляНастройкиПараметровУчетаБазыКорреспондента
ОтображатьНастройкуОтборовНаУзле
ОтображатьЗначенияПоУмолчаниюНаУзле
ОтображатьНастройкуОтборовНаУзлеБазыКорреспондента
ОтображатьЗначенияПоУмолчаниюНаУзлеБазыКорреспондента

структуры ОписаниеВарианта, а также удалить код, реализующий их заполнение.

o   Для всех планов обмена, кроме планов обмена АРМ, из процедуры модуля менеджера ПриПолученииОписанияВариантаНастройки (при ее наличии) исключить обращение к свойствам
ИмяФормыОтборов
Отборы
ЗначенияПоУмолчанию

структуры ОписаниеВарианта, а также удалить код, реализующий их заполнение.

o   Для всех планов обмена, кроме планов обмена АРМ, в процедуре модуля менеджера ПриПолученииОписанияВариантаНастройки (при ее наличии) установить значение свойства
ИмяКонфигурацииКорреспондента
в структуре ОписаниеВарианта. Значение данного свойства используется для группировки команд настройки новой синхронизации данных.

o   Для всех планов обмена, кроме плана обмена АРМ, логику начального заполнения значениями по умолчанию на узле плана обмена реализовать в процедуре модуля объекта ОбработкаЗаполнения по условию ДанныеЗаполнения=Неопределенно.

·         Реализована возможность использования собственных помощников настройки правил отправки и получения данных (далее, помощник настройки синхронизации) для каждого плана обмена. По умолчанию, для настройки отборов и значений по умолчанию используется основная форма узла. Если для плана обмена планируется оставить поведение по умолчанию, необходимо выполнить следующие действия.

o   Добавить основную форму узла (при ее отсутствии).

o   В форме узла в обработчике события ПриЗаписиНаСервере в самом конце добавить строку
ОбменДаннымиСервер.ФормаУзлаПриЗаписиНаСервере(ТекущийОбъект, Отказ);

·         Если планируется использовать собственные помощники настройки синхронизации, необходимо выполнить действия, описанные в разделе Новые возможности для разработчиков этого документа.

·         Если планируется использовать возможность настройки подключения к данному приложению через Интернет, необходимо выполнить публикацию веб-сервиса Exchange_3_0_1_1 на веб-сервере.

·         Изменено поведение механизма конвертации данных XDTO

o   Созданные по ключевым свойствам в процессе загрузки объекты, которые не участвуют в сообщении обмена как самостоятельные сущности (выгрузка объекта «по ссылке»), больше не удаляются автоматически. Такой подход обеспечивает отсутствие на принимающей стороне битых ссылок на объекты, ранее не выгружавшиеся, или которые не могут быть выгружены из информационной базы-источника. Если прикладная логика обмена все же требует удаления таких объектов, следует переписать соответствующие правила конвертации свойств на конвертацию по алгоритму, где в инструкцию конвертации необходимо вставить новое свойство УдалятьСозданныеПоКлючевымСвойствам со значением Истина.
Инструкция = Новый Структура;
Инструкция.Вставить(
  “Значение”, Данные
XDTO.Контрагент);
Инструкция.Вставить(
  “ИмяПКО”, “Справочник_Контрагенты_Получение”);
Инструкция.Вставить(
  “УдалятьСозданныеПоКлючевымСвойствам”, Истина);
ПолученныеДанные.ДополнительныеСвойства.Вставить(
  “Контрагент”, Инструкция);

Печать

·         Если в конфигурации есть клиентский код, формирующий печатные формы с использованием макетов офисных документов (макеты с префиксом ПФ_DOC_ и ПФ_ODT_), то рекомендуется конвертировать его в серверный. Для этого:

o   Процедуру формирования печатной формы перенести в модуль менеджера соответствующего объекта метаданных. Добавить код по ее вызову в экспортную процедуру Печать. Пример см. в модуле менеджера документа _ДемоСчетНаОплатуПокупателю демонстрационной конфигурации.

o   Вместо макетов печатных форм в формате Microsoft Word (doc) и OpenDocument Text (odt) необходимо использовать макеты печатных форм в формате Office Open XML (docx). Существующие макеты в форматах doc и odt необходимо переконвертировать в формат docx.

o   Следующие функции и процедуры перенесены из общего модуля УправлениеПечатьюКлиент в общий модуль УправлениеПечатью:

o   ИнициализироватьПечатнуюФорму

o   ИнициализироватьМакетОфисногоДокумента

o   ОчиститьСсылки

o   ОбластьМакета

o   ПрисоединитьОбласть

o   ЗаполнитьПараметры

o   ПрисоединитьОбластьИЗаполнитьПараметры

o   ПрисоединитьИЗаполнитьКоллекцию

o   ВставитьРазрывНаНовуюСтроку

Предыдущие функции и процедуры отмечены как устаревшие для обратной совместимости.

o   Вместо процедуры ПоказатьДокумент общего модуля УправлениеПечатьюКлиент использовать функцию СформироватьДокумент из общего модуля УправлениеПечатью. Предыдущая процедура отмечена как устаревшая для обратной совместимости.

o   В функции ИнициализироватьПечатнуюФорму общего модуля УправлениеПечатью первый и второй параметры отмечены как устаревшие и сохранены для обратной совместимости.

o   В функции ИнициализироватьМакетОфисногоДокумента общего модуля УправлениеПечатью второй и третий параметры отмечены как устаревшие и сохранены для обратной совместимости.

o   В функции ОчиститьСсылки общего модуля УправлениеПечатью второй параметр отмечен как устаревший и сохранен для обратной совместимости.

Управление доступом

·         Обновить стандартные шаблоны ограничения доступа к данным во всех ролях. Стандартные шаблоны взять из роли ИзменениеУчастниковГруппДоступа и скопировать во все роли. Для массового обновления удобно использовать вкладку Шаблоны ограничений в форме Все ограничения доступа (включить отбор по наименованию шаблона, выделить все строки и использовать команду Изменить).

·         Для того чтобы администратор имел возможность переключить механизм ограничений доступа на уровне записей (RLS) в новый режим повышенной производительности, следует выполнить следующие действия:

o   В процедуре ПриЗаполненииСписковСОграничениемДоступа общего модуля УправлениеДоступомПереопределяемый указать объекты метаданных, для которых реализовано ограничение на уровне записей.

o   Для указанных объектов

·         в модулях менеджеров вставить процедуру ПриЗаполненииОграниченияДоступа, содержащую описание ограничения доступа, которое соответствует логике, реализованной ранее в ролях с помощью параметров стандартных шаблонов ограничения доступа. Синтаксис описания ограничений доступа см. в документации.

·         указать тип их ссылок в определяемом типе ВладелецЗначенийКлючейДоступа (для всех ссылочных типов и документов)

·         указать тип их объектов или наборов записей в одном из четырех определяемых типов ВладелецЗначенийКлючейДоступаОбъект (для всех ссылочных типов, кроме документов), ВладелецЗначенийКлючейДоступаДокумент (для документов), ВладелецЗначенийКлючейДоступаНаборЗаписей (для всех регистров, кроме регистров расчета), ВладелецЗначенийКлючейДоступаНаборЗаписейРегистраРасчета.

·         указать типы собственных полей регистров, используемых в ограничении доступа в определяемом типе ПолеРегистраКлючейДоступаКРегистрам.

·         в обработчик события ПриЧтенииНаСервере формы объекта (все формы с основным реквизитом объекта) сделать вставку:
// СтандартныеПодсистемы.УправлениеДоступом
УправлениеДоступом.ПриЧтенииНаСервере(ЭтотОбъект, ТекущийОбъект);
// Конец СтандартныеПодсистемы.УправлениеДоступом

o   Кроме того, объекты, не имеющие собственного RLS, но участвующие в расчете логики ограничения доступа к другим объектам следует также включить в определяемые типы
ВладелецЗначенийКлючейДоступа,
ВладелецЗначенийКлючейДоступаОбъект,
ВладелецЗначенийКлючейДоступаДокумент
,
ВладелецЗначенийКлючейДоступаНаборЗаписей
,
ВладелецЗначенийКлючейДоступаНаборЗаписейРегистраРасчета
.

·         Например, когда в ограничении регистра накопления ВыручкаИСебестоимостьПродаж присоединен регистр сведений АналитикаУчетаПоПартнерам, у которого отсутствует свой RLS, тогда присоединенный регистр также необходимо включить в определяемый тип ВладелецЗначенийКлючейДоступаНаборЗаписей.

·         Например, когда в ограничении доступа проверяется значение, полученное «через точку» от справочника-владельца Владелец.ЭтоГруппа, тогда все типы справочников-владельцев, у которых отсутствует свой RLS, также необходимо включить в определяемый тип ВладелецЗначенийКлючейДоступаОбъект.

·         Например, если справочник Заметки с RLS прикрепляется к справочникам-владельцам Банки и Валюты, у которых отсутствует свой RLS, то справочники Банки и Валюты также необходимо включить в определяемые типы ВладелецЗначенийКлючейДоступа и ВладелецЗначенийКлючейДоступаОбъект.

·         Если документ без RLS входит в журнал документов с RLS, то включить этот документ в ВладелецЗначенийКлючейДоступа и ВладелецЗначенийКлючейДоступаДокумент. В частном случае, если в конфигурации предусмотрен журнал всех документов, то следует включать все документы, кроме технологических.

o   Для сохранения полной обратной совместимости тексты ограничений доступа в роля, например:

#ПоЗначениям(… «Организации», «Организация», …)

заменить на составной вариант:

#Если &ОграничениеДоступаНаУровнеЗаписейУниверсально #Тогда
#ДляОбъекта(…)
#Иначе
#ПоЗначениям(… «Организации», «Организация», …)
#КонецЕсли

o   В определяемый тип ЗначениеДоступа добавить тип СправочникСсылка.КлючиДоступа и типы из определяемого типа ВладелецНастроекПрав.

o   Для всех регистров с RLS в справочник Идентификаторы объектов метаданных добавить предопределенные элементы по шаблону: полное имя регистра без точки. Например: РегистрНакопленияОстаткиТоваровНаСкладах.

Для автоматизированного выполнения указанных выше действий следует:

·         Запустить обработку ПереходНаВерсию301.epf, входящую в состав дистрибутива (запускать только на файловой ИБ).

·         Открыть конфигуратор и отработать все места с текстом «TODO» в процедурах ПриЗаполненииОграниченияДоступа модулей менеджеров, где автоматическое преобразования оказалось невозможным. Затем применить конфигурацию к базе данных.

·         Запустить отчет ПроверкаВнедренияБСП.erf, входящий в состав дистрибутива, с флажком Исправлять ошибки и с отбором по подсистеме Управление доступом для выполнения всех оставшихся действий.

·         Открыть конфигуратор, применить конфигурацию к базе данных.

Если после сравнения-объединения конфигурации возникают ошибки сохранения конфигурации базы данных Недопустимый тип или Имя события недопустимо для указанного источника события для определяемых типов или подписок на события, то следуйте инструкциям ниже:

·         Если в конфигурации не предусмотрено документов и при обновлении конфигурации базы данных возникают ошибки для подписок на события ПроверитьДоступПередЗаписьюДокумента и ПроверитьДоступПриЗаписиДокумента, то в определяемый тип ВладелецЗначенийКлючейДоступаДокумент включить тип СправочникОбъект.ИдентификаторыОбъектовМетаданных.

·         Если в конфигурации не предусмотрено регистров сведений, регистров накопления, регистров расчета и при обновлении конфигурации базы данных возникают ошибки для подписок на события ПроверитьДоступПередЗаписьюНабораЗаписей и ПроверитьДоступПриЗаписиНабораЗаписей, то в определяемый тип ВладелецЗначенийКлючейДоступаНаборЗаписей включить тип СправочникОбъект.ИдентификаторыОбъектовМетаданных.

·         Если в конфигурации не предусмотрено регистров расчета и при обновлении конфигурации базы данных возникают ошибки для подписок на события ПроверитьДоступПередЗаписьюНабораЗаписейРегистраРасчета и ПроверитьДоступПриЗаписиНабораЗаписейРегистраРасчета, то в определяемый тип ВладелецЗначенийКлючейДоступаНаборЗаписейРегистраРасчета включить тип СправочникОбъект.ИдентификаторыОбъектовМетаданных.

Центр мониторинга

·         Удалена ранее отмеченная как устаревшая функция общего модуля ЦентрМониторингаВызовСервераПовтИсп ЗаписыватьОперацииБизнесСтатистики. Вместо нее следует использовать ЗаписыватьОперацииБизнесСтатистики общего модуля ЦентрМониторинга.

Шаблоны сообщений

·         Возможность просмотра, редактирования и отправки шаблонов сообщений теперь ограничивается ролью ДобавлениеИзменениеЛичныхШаблоновСообщений. Ранее эти права входили в роль БазовыеПраваБСП. Во всех поставляемых профилях групп доступа, включающие роль БазовыеПраваБСП, данное изменение будет учтено автоматически.

Электронная подпись

·         В связи с изменением внутреннего формата хранения адресов в подсистеме «Контактная информация» в процедуре ПриЗаполненииРеквизитовОрганизацииВЗаявленииНаСертификат общего модуля ЭлектроннаяПодписьПереопределяемый в свойствах Телефон, ЮридическийАдрес, ФактическийАдрес параметра Параметры следует передавать данные в новом формате JSON (из реквизита Значение табличной части КонтактнаяИнформация объекта-владельца контактной информации).

Переход на версию 3.0.1 с предыдущих версий 3.0.1

Рекомендуется выполнять обновление на исправительные релизы библиотеки в конфигурациях с помощью внешней обработки ОбновлениеНаИсправительнуюВерсиюБСП.epf из комплекта поставки, что позволит существенно сэкономить время при регулярных (например, еженедельных) обновлениях. Исправительные релизы библиотеки отличаются только четвертой цифрой в полном номере версии, например: 3.0.1.1, 3.0.1.2, 3.0.1.3 и т.п.

Необходимо запустить обработку в информационной базе с конфигурацией, содержащей предыдущий релиз БСП, и нажать на кнопку Обновить на исправительную версию, указав cf-файл новой версии БСП из комплекта поставки. При этом выполняется автоматическое сравнение/объединение с новой конфигурацией библиотеки согласно настройкам, которые соответствуют документации: будут перенесены все поставляемые объекты библиотеки, а переопределяемые при внедрении – объединены с приоритетом конфигурации поставщика (например, определяемые типы) или пропущены (как например, переопределяемые модули). После сравнения/объединения конфигурация базы данных не будет обновлена автоматически, что позволяет выполнить сравнение с конфигурацией базы данных и внести правки в измененные объекты: переопределяемые модули, различные локальные исправления и доработки.

Кроме того, в качестве альтернативного варианта, по кнопке Сформировать файл настроек предусмотрена возможность сформировать файл настроек сравнения/объединения, который затем можно загрузить в конфигураторе для ручного сравнения/объединения.

После завершения сравнения/объединения настоятельно рекомендуется также воспользоваться инструментом Проверка внедрения БСП, входящим в состав дистрибутива библиотеки в виде внешнего отчета ПроверкаВнедренияБСП.erf.

С версии 3.0.1.393 и меньше

Обмен данными

·         Изменено поведение механизма конвертации данных XDTO

o   Созданные по ключевым свойствам в процессе загрузки объекты, которые не участвуют в сообщении обмена как самостоятельные сущности (выгрузка объекта «по ссылке»), больше не удаляются автоматически. Такой подход обеспечивает отсутствие на принимающей стороне битых ссылок на объекты, ранее не выгружавшиеся, или которые не могут быть выгружены из информационной базы-источника. Если прикладная логика обмена все же требует удаления таких объектов, следует переписать соответствующие правила конвертации свойств на конвертацию по алгоритму, где в инструкцию конвертации необходимо вставить новое свойство УдалятьСозданныеПоКлючевымСвойствам со значением Истина.
Инструкция = Новый Структура;
Инструкция.Вставить(
  “Значение”, Данные
XDTO.Контрагент);
Инструкция.Вставить(
  “ИмяПКО”, “Справочник_Контрагенты_Получение”);
Инструкция.Вставить(
  “УдалятьСозданныеПоКлючевымСвойствам”, Истина);
ПолученныеДанные.ДополнительныеСвойства.Вставить(
  “Контрагент”, Инструкция);

C версии 3.0.1.231 и меньше

Контактная информация

·         В целях улучшения производительности, когда требуется получить только поля, содержащие адресные сведения без идентификаторов и кодов адреса, у функций СведенияОбАдресе и СведенияОбАдресах программного интерфейса общего модуля РаботаСАдресами второй параметр ДополнительныеПараметры расширен свойством КодыАдреса (Булево), определяющим необходимость получения кодов. По умолчанию, свойство установлено в Ложь, поэтому следует пересмотреть все места вызовов этих функции и в случаях использования полей ИдентификаторАдресногоОбъекта и ИдентификаторДома при вызове функций передавать свойство КодыАдреса равное Истина. Например:

ДополнительныеПараметры = Новый Структура("КодыАдреса", Истина);
АдресПоПолям = РаботаСАдресами.СведенияОбАдресе(АдресВJSON, ДополнительныеПараметры);

Контроль ведения учета

·         Регистр сведений КлючиДоступаКРегиструРезультатыПроверкиУчета не рекомендуется включать в планы обмена распределенной ИБ (РИБ), так как в каждом узле проверка ведения учета ведется независимо.

Управление доступом

·         Обновить стандартные шаблоны ограничения доступа к данным во всех ролях. Стандартные шаблоны взять из роли ИзменениеУчастниковГруппДоступа и скопировать во все роли. Для массового обновления удобно использовать вкладку Шаблоны ограничений в форме Все ограничения доступа (включить отбор по наименованию шаблона, выделить все строки и использовать команду Изменить).

·         Регистры сведений КлючиДоступаПользователей и КлючиДоступаВнешнихПользователей были пересозданы, если обновление выполняется сравнением-объединением с конфигурацией из файла, их следует предварительно удалить.

·         Новый справочник НаборыГруппДоступа и регистр сведений КлючиДоступаНаборовГруппДоступа следует включить в планы обмена РИБ (только для создания начального образа, то есть в подписки на события не включать).

C версии 3.0.1.189 и меньше

Управление доступом

·         Обновить стандартные шаблоны ограничения доступа к данным во всех ролях. Стандартные шаблоны взять из роли ИзменениеУчастниковГруппДоступа и скопировать во все роли. Для массового обновления удобно использовать вкладку Шаблоны ограничений в форме Все ограничения доступа (включить отбор по наименованию шаблона, выделить все строки и использовать команду Изменить).

C версии 3.0.1.180 и меньше

Защита персональных данных

·         В случае планов обмена распределенной информационной базы (РИБ) и автономной работы необходимо в обработчиках события ПередЗаписью модулей объекта плана обмена добавить вызов метода ЗащитаПерсональныхДанных.ПослеЗагрузкиДанных. Это позволит актуализировать даты регламентного скрытия персональных данных субъектов по окончании обмена. Подробнее см. в документации к подсистеме.

·         В обменах через универсальный формат EnterpiseData при выгрузке данных, зарегистрированных на узле плана обмена, выполняется принудительная выгрузка объектов по ссылкам в том случае, если ранее они не выгружались. Если выгружаемые данные не относятся к источникам персональных данных, но в реквизитах присутствует ссылка на субъект или источник персональных данных, то необходимо позаботиться о том, чтобы такой объект не был выгружен, если он содержит в себе скрытые персональные данные. Это можно сделать на уровне правил обработки данных, воспользовавшись методом ЭтоОбъектСоСкрытымиПерсональнымиДанными программного интерфейса модуля ЗащитаПерсональныхДанных. Пример см. в демонстрационной конфигурации в методе ПОД_Справочник_ФизическиеЛица_Отправка_ПриОбработке модуля _ДемоМенеджерОбменаЧерезУниверсальныйФормат.

·         Необходимо контролировать выгрузку субъекта по ссылке из не источника персональных данных и в правилах обмена. Пример отказа в выгрузке субъекта со скрытыми персональными см. в демонстрационной конфигурации в макете ПравилаОбмена плана обмена _ДемоОбменСБиблиотекойСтандартныхПодсистем в ПКС свойства ФизическоеЛицо ПКО _ДемоОтветственныеЛица.

C версии 3.0.1.135 и меньше

Контактная информация

·         Для интеграции с информационными системами, требующими идентификаторы адресных объектов, например для взаимодействия с АИС «Меркурий» и аналогичными, в программном интерфейсе общего модуля РаботаСАдреса  предусмотрена функция АдресПоИдентификатору позволяющая получить адрес по идентификатору адресного объекта.

С версии 3.0.1.53

Обмен данными

·         Изменена схема настройки данных, теперь нет необходимости разрабатывать интерфейсы настройки отправки и получения данных для программы-корреспондента при использовании обмена через COM и Интернет. Следует внести следующие изменения для исключения более не используемой функциональности.

o   Для всех планов обмена удалить формы

·         ФормаНастройкиУзлов

·         ФормаНастройкиЗначенийПоУмолчаниюБазыКорреспондента

·         ФормаНастройкиУзлаБазыКорреспондента

·         ФормаНастройкиЗначенийПоУмолчанию

o   Для всех планов обмена, кроме плана обмена АРМ, удалить форму

·         ФормаНастройкиУзла

o   Для всех планов обмена, кроме плана обмена АРМ, в модуле менеджера

·         В процедуре ПриПолученииНастроек исключить обращение к свойствам ОписаниеОграниченийПередачиДанных
ОписаниеЗначенийПоУмолчанию
структуры Настройки.Алгоритмы.

o   Для всех планов обмена из процедуры модуля менеджера ПриПолученииОписанияВариантаНастройки (при ее наличии) исключить обращение к свойствам
ОтборыКорреспондента
ЗначенияПоУмолчаниюКорреспондента
ИмяФормыЗначенийПоУмолчанию
ИмяФормыОтборовКорреспондента
ИмяФормыЗначенийПоУмолчаниюКорреспондента
ИмяФормыОбщиеДанныеУзлов
ПояснениеДляНастройкиПараметровУчетаБазыКорреспондента
ОтображатьНастройкуОтборовНаУзле
ОтображатьЗначенияПоУмолчаниюНаУзле
ОтображатьНастройкуОтборовНаУзлеБазыКорреспондента
ОтображатьЗначенияПоУмолчаниюНаУзлеБазыКорреспондента

структуры ОписаниеВарианта, а также удалить код, реализующий их заполнение.

o   Для всех планов обмена, кроме планов обмена АРМ, из процедуры модуля менеджера ПриПолученииОписанияВариантаНастройки (при ее наличии) исключить обращение к свойствам
ИмяФормыОтборов
Отборы
ЗначенияПоУмолчанию

структуры ОписаниеВарианта, а также удалить код, реализующий их заполнение.

o   Для всех планов обмена, кроме планов обмена АРМ, в процедуре модуля менеджера ПриПолученииОписанияВариантаНастройки (при ее наличии) установить значение свойства
ИмяКонфигурацииКорреспондента
в структуре ОписаниеВарианта. Значение данного свойства используется для группировки команд настройки новой синхронизации данных.

o   Для всех планов обмена, кроме плана обмена АРМ, логику начального заполнения значениями по умолчанию на узле плана обмена реализовать в процедуре модуля объекта ОбработкаЗаполнения по условию ДанныеЗаполнения=Неопределенно.

·         Реализована возможность использования собственных помощников настройки правил отправки и получения данных (далее, помощник настройки синхронизации) для каждого плана обмена. По умолчанию, для настройки отборов и значений по умолчанию используется основная форма узла. Если для плана обмена планируется оставить поведение по умолчанию, необходимо выполнить следующие действия.

o   Добавить основную форму узла (при ее отсутствии).

o   В форме узла в обработчике события ПриЗаписиНаСервере в самом конце добавить строку
ОбменДаннымиСервер.ФормаУзлаПриЗаписиНаСервере(ТекущийОбъект, Отказ);

·         Если планируется использовать собственные помощники настройки синхронизации, необходимо выполнить действия, описанные в разделе Новые возможности для разработчиков этого документа.

·         Если планируется использовать возможность настройки подключения к данному приложению через Интернет, необходимо выполнить публикацию веб-сервиса Exchange_3_0_1_1 на веб-сервере.

Контактная информация

·         В связи с проверкой адресных сведений только в соответствии с данными ФИАС, реквизит ПроверятьПоФИАС справочника ВидаКонтактнойИнформации устарел и более не используется. Необходимо удалить код, использующий это свойство во все местах использования.

·         Для программного добавления адреса к объекту, например, через процедуру ДобавитьКонтактнуюИнформацию общего модуля УправлениеКонтактнойИнформацией,  программный интерфейс общего модуля РаботаСАдресамиКлиентСервер расширен функцией ПоляАдреса, возвращающей список всех возможных полей адреса.

·         Для преобразования сведений об адресах во внутренний формат JSON, полученных функциями СведенияОбАдресе, СведенияОбАдресах общего модуля РаботаСАдресами и ПоляАдреса общего модуля РаботаСАдресамиКлиентСервер, предусмотрена функция ПоляАдресаВJSON в программном интерфейсе общего модуля РаботаСАдресами.

Новые возможности для разработчиков

Новая подсистема Организации предоставляет унифицированный программный интерфейс для получения сводной информации по организациям, если они предусмотрены в конфигурации. Сам справочник организаций, сопутствующие таблицы и пользовательский интерфейс в состав подсистемы не входят. Рекомендуется заменить все прямые обращения к справочнику организаций и сопутствующим таблицам на вызовы программного интерфейса общего модуля ОрганизацииСервер. Заполнение программного интерфейса свойствами и значениями выполняется в переопределяемом общем модуле ОрганизацииПереопределяемый.

Полное описание программного интерфейса библиотеки опубликовано в ИТС в главе «4. Программный интерфейс» документации 1С:Библиотеки стандартных подсистем.

Адресный классификатор

·         Предусмотрена загрузка и хранение адресных сведений (ФИАС) по муниципальному делению согласно Приказу ФНС России от 06.07.2017 N ММВ-7-17/535@ «Об утверждении Стандарта форм документов, используемых налоговыми органами при реализации своих полномочий...» Подробнее см.: https://its.1c.ru/db/garant#content:71612934:hdoc. При этом предоставляются также идентификаторы всех адресных объектов и глобальные идентификаторы адресных объектов и домов.

Внешние компоненты

·        Для автоматической загрузки через Интернет с Портала 1С:ИТС и подключения к программе внешних компонент сторонних разработчиков рекомендуется внедрить в конфигурацию подсистему Получение внешних компонент из состава Библиотеки интернет-поддержки (БИП) версии 2.3.1 и выше.

·         Предусмотрена возможность при загрузке внешних компонент в хранилище компонент извлечь дополнительную информацию из файла компоненты (например, сведения о том, какие типы оборудования обслуживает компонента). Для этого требуется указать имя XML файла в архиве компоненты, и XPath путь в этом файле до извлекаемой информации.

o   В общем модуле ВнешниеКомпонентыКлиент функция ВнешниеКомпонентыКлиент.ПараметрыЗагрузки теперь предусматривает параметры поиска дополнительной информаци. Для формирования параметров поиска предусмотрен конструктор ПараметрыПоискаДополнительнойИнформации в том же модуле.

o   Процедура ЗагрузитьКомпонентуИзФайла модуля ВнешниеКомпонентыКлиент теперь возвращает в результате свойство ДополнительнаяИнформация, в которое будет помещен результат извлеченной информации.

o   Например:
ПараметрыПоискаТипаДрайвера = ВнешниеКомпонентыКлиент.ПараметрыПоискаДополнительнойИнформации();
ПараметрыПоискаТипаДрайвера.ИмяФайлаXML = "INFO.XML";
ПараметрыПоискаТипаДрайвера.ВыражениеXPath = "//drivers/component/@type";

ПараметрыЗагрузки = ВнешниеКомпонентыКлиент.ПараметрыЗагрузки();
ПараметрыЗагрузки.Идентификатор = Идентификатор;
ПараметрыЗагрузки.Версия = Версия;
ПараметрыЗагрузки.ПараметрыПоискаДополнительнойИнформации.Вставить("ТипДрайвера", ПараметрыПоискаТипаДрайвера);
Оповещение = Новый ОписаниеОповещения(
     "ЗагрузитьВнешнийМодульИзФайлаПослеЗагрузки", ЭтотОбъект);

ВнешниеКомпонентыКлиент.ЗагрузитьКомпонентуИзФайла(Оповещение, ПараметрыЗагрузки);

Процедура ЗагрузитьВнешнийМодульИзФайлаПослеЗагрузки(Результат, ДополнительныеПараметры) Экспорт

Если Результат.Загружена Тогда
     Идентификатор = Результат.Идентификатор;
     Версия        = Результат.Версия;
     ТипДрайвера = Результат.ДополнительнаяИнформация.Получить("ТипДрайвера");

КонецЕсли;

КонецПроцедуры

Календарные графики

·         Для задействования новых возможностей автоматического обновления производственных календарей и их данных необходимо встраивание «Библиотеки Интернет-поддержки» версии 2.2.4.4 и выше.

·         Разместить вызовы в общем модуле РаботаСКлассификаторамиПереопределяемый

o   В процедуре ПриДобавленииКлассификаторов разместить вызов КалендарныеГрафики.ПриДобавленииКлассификаторов

o   В процедуре ПриЗагрузкеКлассификатора разместить вызов КалендарныеГрафики.ПриЗагрузкеКлассификатора

o   Если используется работа в модели сервиса, то в процедуре ПриОбработкеОбластиДанных общего модуля РаботаСКлассификаторамиВМоделиСервисаПереопределяемый разместить вызов КалендарныеГрафикиВМоделиСервиса.ПриОбработкеОбластиДанных

Контактная информация

·         Новые возможности в функциях СведенияОбАдресе и СведенияОбАдресах программного интерфейса общего модуля РаботаСАдресами

o   в состав возвращаемых данных включены поля адреса, содержащие муниципальные сведения и представление адреса по муниципальному делению;

o   предусмотрено получение идентификаторов всех адресных объектов и глобальные идентификаторы адресных объектов и домов;

o   также добавлена возможность проверки адреса на корректность.

o   подробнее см. комментарии к этим функциям.

·         В редких случаях, для преобразования входящих форматов контактной информации (XML и «ключ=значение») во внутренний формат JSON в программном интерфейсе общего модуле УправлениеКонтактнойИнформацией предусмотрена функция КонтактнаяИнформацияВJSON.

·         Для определения содержит ли переданная строка контактную информацию во внутреннем формате JSON, в программный интерфейс общего модуля УправлениеКонтактнойИнформациейКлиентСервер добавлена функция ЭтоКонтактнаяИнформацияВJSON.

Контроль ведения учета

·         Для разработки проверок ведения учета, регистрирующих проблемы сразу нескольких видов (например, проблемы по указанному контрагенту или проблемы, относящиеся к определенному периоду), в общем модуле КонтрольВеденияУчета предусмотрена процедура ОчиститьРезультатыПредыдущихПроверок.

o   С ее помощью следует предварительно очищать ранее зарегистрированные проблемы ведения учета в начале основного алгоритма проверки. В противном случае, одна и та же проблема может быть зарегистрирована многократно при нескольких последовательных запусках проверки.

o   При этом для непараметрических проверок предварительная очистка результатов предыдущих запусков выполняется автоматически, поэтому в их обработчиках вызов процедуры ОчиститьРезультатыПредыдущихПроверок не требуется.

·         В тех случаях, когда обнаруженная проблема несущественна, и ей не планируется заниматься, с помощью процедуры ИгнорироватьПроблему общего модуля КонтрольВеденияУчета такую проблему можно отметить как проигнорированную. При установке в Истина проблема перестает выводиться в формах объектов и в отчете с результатами проверки. При сбросе в значение Ложь проблема вновь становится актуальной.

·         Для возможности проверки прав на просмотр проблем ведения учета в общем модуле КонтрольВеденияУчета предусмотрена функция ПодсистемаДоступна.

·         В функции ВидПроверки общего модуля КонтрольВеденияУчета в качестве первого параметра допустимо передавать также строковый идентификатор вида проверки, как и в остальных процедурах и функциях программного интерфейса подсистемы. Например:
ВидПроверки = КонтрольВеденияУчета.ВидПроверки("СистемныеПроверки");

Обмен данными

·         Предусмотрена возможность использования для плана обмена собственных помощников настройки правил отправки и получения данных (далее, помощников). Для задействования данной возможности необходимо выполнить следующие действия.

o   Разработать собственный помощник, поставляющий в качестве интерфейса форму, которая может быть открыта платформенным методом ОткрытьФорму(). В помощнике должна быть реализована логика восстановления ранее сохраненных в программе настроек, и их записи, в контексте конкретного узла плана обмена.

o   Для упрощения разработки процедур сохранения настроек в асинхронном режиме можно воспользоваться методами общего модуля ОбменДаннымиСервер
ПриНачалеСохраненияНастроекСинхронизации
ПриОжиданииСохраненияНастроекСинхронизации
ПриЗавершенииСохраненияНастроекСинхронизации
Данный интерфейс запускает процедуру сохранение настройки синхронизации в длительной операции, и по окончании фиксирует завершение настройки. При использовании предложенного интерфейса сама логика сохранения настроек должна быть реализована в обработчике ПриСохраненииНастроекСинхронизацииДанных программного интерфейса модуля менеджера плана обмена. Признак использования данного обработчика устанавливается в настройках плана обмена:
в процедуре ПриПолученииНастроек модуля менеджера плана обмена необходимо добавить код
Настройки.Алгоритмы.ПриСохраненииНастроекСинхронизацииДанных = Истина;

o   Если указанный выше поставляемый интерфейс сохранения настроек не используется, в помощнике по завершении настройки необходимо вызвать процедуру
ОбменДаннымиСервер.ЗавершитьНастройкуСинхронизацииДанных, передав на вход ссылку на узел плана обмена.

o   В процедуре модуля менеджера плана обмена ПриПолученииНастроек установить использование алгоритма ПриПолученииОписанияВариантаНастройки.

o   В процедуре модуля менеджера плана обмена ПриПолученииОписанияВариантаНастройки в свойстве ИмяФормыПомощникаНастройкиСинхронизацииДанных указать полный путь к форме разработанного помощника.

·         Для планов обмена через универсальный формат (далее, планы обмена XDTO) доступно получение информации о поддерживаемых объектах формата для узла корреспондента (далее Настройки XDTO корреспондента), а также о поддерживаемых объектах форма в этой программе (далее, настройки XDTO). Для этого предназначены функции общего модуля ОбменДаннымиXDTO

o   ПоддерживаемыеОбъектыФормата – возвращает таблицу поддерживаемых объектов формата в текущей программе;

o   ПоддерживаемыеОбъектыФорматаКорреспондента – возвращает таблицу поддерживаемых объектов формата в программе-корреспонденте, с которой настроен обмен.

·         Для планов обмена XDTO добавлены два опциональных обработчика проверки значений заполнения на узле плана обмена

o   ОбработчикПроверкиОграниченийПередачиДанных – вызывается перед началом формирования сообщения обмена данными, содержит реализацию проверки корректности заполнения отборов и прочих настроек, связанных с выгрузкой данных. В обработчике доступна таблица поддерживаемых для получения корреспондентом объектов формата, благодаря чему можно реализовать адресные проверки в контексте отправки конкретных объектов формата.

o   ОбработчикПроверкиЗначенийПоУмолчанию – вызывается после получения и обновления настроек XDTO корреспондента, но до начала загрузки данных из сообщения обмена. Содержит реализацию проверки корректности заполнения значений по умолчанию и прочих настроек, связанных с загрузкой данных. В обработчике доступна таблица поддерживаемых к отправке корреспондентом объектов формата.

o   Для подключения данных обработчиков необходимо установить признак использования соответствующих алгоритмов в процедуре ПриПолученииНастроек модуля менеджера плана обмена
Настройки.Алгоритмы.ОбработчикПроверкиОграниченийПередачиДанных = Истина;
Настройки.Алгоритмы.ОбработчикПроверкиЗначенийПоУмолчанию = Истина;
Обработчики могут использоваться независимо друг от друга.

·         Для планов обмена XDTO добавлены два опциональных обработчика управления составом поддерживаемых объектов формата

o   ПриОпределенииПоддерживаемыхОбъектовФормата – вызывается после определения состава поддерживаемых конфигурацией объектов формата на основании правил конвертации. Позволяет дополнить или ограничить полученный набор поддерживаемых объектов.

o   ПриОпределенииПоддерживаемыхКорреспондентомОбъектовФормата – вызывается после определения состава поддерживаемых корреспондентом объектов формата. Позволяет дополнить или ограничить полученный набор поддерживаемых объектов.

o   Для подключения данных обработчиков необходимо установить признак использования соответствующих алгоритмов в процедуре ПриПолученииНастроек модуля менеджера плана обмена
Настройки.Алгоритмы.ПриОпределенииПоддерживаемыхОбъектовФормата = Истина;
Настройки.Алгоритмы.ПриОпределенииПоддерживаемыхКорреспондентомОбъектовФормата = Истина;
Обработчики могут использоваться независимо друг от друга.

·         Добавлен новый вид транспорта сообщений обмена – WSПассивныйРежим. Данный вид транспорта доступен только для планов обмена XDTO, и по умолчанию доступен.

·         В общий модуль ОбменДаннымиСервер добавлены новые функции

o   ПолучитьWSПрокси_3_0_1_1 – возвращает WS-прокси для работы с веб-сервисом Exchange_3_0_1_1;

o   НастройкаСинхронизацииЗавершена – возвращает признак, что настройка синхронизации на узле плана обмена выполнена;

·         В общий модуль ОбменДаннымиСервер добавлены новые процедуры

o   ЗавершитьНастройкуСинхронизацииДанных – устанавливает признак, что настройка на узле плана обмена завершена. Предназначена для использования в собственных помощниках настройки правил отправки и получения данных для подтверждения завершения всех необходимых действий и перехода к очередному этапу настройки синхронизации.

o   ЗавершитьСозданиеНачальногоОбраза – устанавливает признак, что начальный образ для узла плана обмена РИБ успешно создан;

o   ФормаУзлаПриЗаписиНаСервере – используется в обработчике события ПриЗаписиНаСервере узла плана обмена, для которого не используются собственные помощники настройки правил отправки и получения данных.

·         В общем модуле ОбменДаннымиСервер из программного интерфейса удалены более не используемые методы

o   ФормаНастройкиУзловПриСозданииНаСервере

o   ФормаНастройкиУзлаБазыКорреспондентаПриСозданииНаСервере

o   ФормаНастройкиЗначенийПоУмолчаниюПриСозданииНаСервере

o   ФормаНастройкиЗначенийПоУмолчаниюБазыКорреспондентаПриСозданииНаСервере

o   ОпределитьПроверяемыеРеквизитыСУчетомНастроекВидимостиПолейФормы

·         В обмен данными через универсальный формат добавлен новый режим работы механизма конвертации XDTO

o   При отправке данных в случае возникновения ошибки валидации по xsd-схеме сконвертированного объекта XDTO есть возможность пропустить такой объект, и продолжить выгрузку без него. Информация о проблемных объектах регистрируется в журнале предупреждений при синхронизации данных на вкладке Проблемы при отправке. Для новых и ранее настроенных синхронизаций поведение не меняется, и ошибки проверки объектов XDTO по xsd-схеме приводят к отмене выгрузки данных. Переключение режима выполняется программно при помощи метода программного интерфейса
ОбменДанными
XDTOСервер.ПропускатьОбъектыСОшибкамиПроверкиПоСхеме
Для предоставления пользователям возможности самостоятельного переключения режима пропуска ошибок, требуется соответствующим образом доработать интерфейс помощника настройки синхронизации и(или) формы узла плана обмена XDTO.

Обновление конфигурации

·         Для задействования в механизмах обновления версии программы: перед обновлением на новую версию рекомендуется проверять установленные расширения и предупреждать о риске их отключения после обновления на новую версию программы (это может привести к недоступности данных и невозможности изменять часть данных самой программы). Для этого в общем модуле ОбновлениеКонфигурации предусмотрена функция ПредупреждатьОНаличииРасширений.

Организации

Состав сведений об организации расширен следующими полями:

·         ПочтовыйАдресОрганизацииJSON (почтовый адрес организации в формате JSON);

·         АдресОрганизацииJSON (юридический адрес организации в формате JSON);

·         АдресОрганизацииФактJSON (фактический  адрес организации в формате JSON);

·         АдресОбособленногоПодразделенияJSON (юридический адрес  обособленного подразделения в формате JSON);

·         ОтделениеИностраннойОрганизацииАдресРФJSON (юридический  адрес иностранной организации в формате JSON);

·         АдресИностраннойОрганизацииJSON (учредительный  адрес иностранной организации в формате JSON);

·         АдресРегистрацииJSON (адрес по  прописке индивидуального предпринимателя в формате JSON);

·         АдресМестаЖительстваJSON (адрес по месту жительства индивидуального предпринимателя в формате JSON);

·         РуководительАдресМестаЖительстваJSON (адрес по месту жительства руководителя организации в формате  JSON);

·         БухгалтерАдресМестаЖительстваJSON (адрес по месту жительства главного бухгалтера  организации в формате JSON);

·         УполномоченныйПредставительАдресМестаЖительстваJSON (адрес места жительства в  РФ уполномоченного представителя организации в формате JSON).

·         ОтветственноеЛицоСтатистикаФИО (ФИО ответственного лица за статистическую отчетность);

·         ОтветственноеЛицоСтатистикаДолжность (должность ответственного лица за статистическую  отчетность);

·         ОтветственноеЛицоСтатистикаТелефон (телефон ответственного лица за  статистическую отчетность);

·         ОтветственноеЛицоСтатистикаАдресЭлектроннойПочты (адрес электронной  почты ответственного лица за статистическую отчетность);

·         БухгалтерАдресЭлектроннойПочты (адрес электронной почты бухгалтера организации);

·         РуководительАдресЭлектроннойПочты (адрес  электронной почты руководителя организации);

·         ИПАдресЭлектроннойПочты (адрес  электронной почты индивидуального предпринимателя).

Отчет о движениях документа

·         В тех случаях, когда документ записывает движения в регистрах и при этом не является для них регистратором, предусмотрены процедуры общего модуля ОтчетОДвиженияхДокументаПереопределяемый:

o   ПриОпределенииРегистровСДвижениями

o   ПриРасчетеКоличестваЗаписей

o   ПриПодготовкеНабораДанных

Печать

·         Вместо клиентского механизма формирования офисных документов, основанного на технологии COM и буфере обмена клиентского компьютера, теперь используется серверный кроссплатформенный алгоритм на базе современного формата Office Open XML (docx). В связи с этим стали доступными новые возможности по разработке печатных форм:

o   Разделения областей по разделам документа. Офисный документ docx может состоять из нескольких разделов, в каждом разделе можно задать свои колонтитулы и другие параметры, такие как ширина полей отступа от края, ориентация. Если в шаблоне документа области описаны в различных разделах, то при выводе их в исходный документ также учитываются настройки разделов для этих областей.

o   Вывод всех колонтитулов, описанных для раздела. Для раздела возможно описать 6 видов колонтитулов: колонтитулы титульной страницы, колонтитулы четных страниц, обычные колонтитулы. Для каждого раздела можно добавить свой набор колонтитулов. В связи с этим расширены типы областей: области с типом ВерхнийКолонтитул, НижнийКолонтитул считаются обычными колонтитулами, а дополнительно предусмотрены типы областей ВерхнийТитульныйКолонтитул, НижнийТитульныйКолонтитул, ВерхнийЧетныйКолонтитул, НижнийЧетныйКолонтитул. Имя области должно состоять из имени типа области, знака подчеркивания и порядкового номера раздела, к которому относится колонтитул. Например, ВерхнийТитульныйКолонтитул_2. Например:

Область = УправлениеПечатью.ОбластьМакета(Макет, Области[ИмяМакета]["ВерхнийЧетныйКолонтитул_3"]);
УправлениеПечатью.ПрисоединитьОбластьИЗаполнитьПараметры(ПечатнаяФорма, Область, ДанныеОбъекта);


o   Вывод абзаца без текста и форматирования. Для вывода абзаца следует добавить область Абзац в описание областей макетов офисных документов. В шаблон такую область добавлять не следует. Пример:

Область = УправлениеПечатью.ОбластьМакета(Макет, Области[ИмяМакета]["Абзац"]);
УправлениеПечатью.ПрисоединитьОбласть(ПечатнаяФорма, Область);

Пользователи

·         Новая процедура ПроверитьНазначениеРолей в общем модуле Пользователи позволяет выявить ошибки в назначении ролей. Процедура предназначена для инструментов проверки конфигурации. Процедура более не вызывается при обновлении информационной базы.

Профили безопасности

·         Для того чтобы дать возможность администратору интерактивно открывать внешнюю обработку или отчет с выбором безопасного режима, в программном интерфейсе общего модуля РаботаВБезопасномРежимеКлиент размещена процедура ОткрытьВнешнююОбработкуИлиОтчет.

Рассылка отчетов

·         В тех случаях, когда определенным пользователям требуется временный или постоянный доступ только на просмотр всех рассылок отчетов предусмотрена роль ЧтениеРассылокОтчетов. Например, ее можно включить в профиль для временного доступа для аудитора или постоянного – для собственника или директора организации.

Свойства

·         Программный интерфейс общего модуля УправлениеСвойствами расширен функцией СвойстваДоступны, подробности см. в комментарии к ней.

Управление доступом

      С целью существенного ускорения работы в программе с включенными ограничениями доступа на уровне записей (RLS) реализован новый режим повышенной производительности, основанный на предварительном расчете прав доступа. Ранее, при использовании стандартных шаблонов RLS расчет прав выполнялся «на лету» непосредственно при чтении или записи объекта.

      Для того чтобы администратор имел возможность переключать механизм ограничений доступа на уровне записей (RLS) в новый режим и обратно, прежний механизм и тексты RLS остаются работоспособными и поддерживается в полном объеме.

      Новый режим доступен только в ознакомительном виде для разработчиков и по умолчанию отключен. Рекомендуется включать его только в тестовых базах для синтаксического контроля сконвертированных описаний ограничения доступа, проверки их работы и предоставления обратной связи в фирму «1С». Для этого в меню Все функции включить константу Ограничивать доступ на уровне записей универсально. Если тексты ограничений содержат ошибки, то выведется соответствующее сообщение.

      После переключения потребуется некоторое время для расчета прав доступа (от одной минуты до несколько часов в зависимости от объема данных в базе). Ход обновления можно проконтролировать в форме Обновление доступа на уровне записей (раздел Администрирование - Настройки пользователей и прав).

·        При разработке и внесении изменений в логику ограничений RLS с использованием стандартных шаблонов следует синхронно вносить изменения в процедуру ПриЗаполненииОграниченияДоступа модулей менеджеров и запускать отчет ПроверкаВнедренияБСП.erf с флажком Исправлять ошибки и с отбором по подсистеме Управление доступом.

·        Для программной проверки прав чтения или изменения «с точностью» до конкретного объекта или записи регистра предусмотрены функции ЧтениеРазрешено и ИзменениеРазрешено общего модуля УправлениеДоступом (при отключенном режиме повышенной производительности они возвращают наличие права на таблицу в целом).

·        Для быстрой разработки текстов ограничений доступа рекомендуется использовать инструмент разработчика УправлениеДоступом.epf.

·        Для обеспечения производительности пакетной обработки данных (полноправный пользователь) предусмотрена процедура ОтключитьОбновлениеКлючейДоступа общего модуля УправлениеДоступом (подробнее см. в документации).

Шаблоны сообщений