1с хранилищеобщихнастроек как посмотреть

Механизм настроек пользователей в 1Cv8

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

Существует два вида хранилищ настроек:

  1. Стандартное хранилище – хранилище, используемое системой по умолчанию и хранящее данные в системных таблицах информационной базы.
  2. Хранилища настроек – специальные объекты метаданных, которые описывают хранение данных в некотором объекте информационной базы.

Например, в этом объекте может быть описана работа с настройками, которые хранятся в справочнике.

Платформа использует пять хранилищ:

  1. Системное хранилище – в данное хранилище система сохраняет все возможные настройки, которые нужны для работы платформы. К данным настройкам относятся настройки размеров форм, настройки печати табличного документа и т. п. Полный перечень настроек, сохраняемых в системном хранилище, перечислен в Приложении В. В качестве системного хранилища настроек всегда используется стандартное хранилище настроек. Т. е. данные системного хранилища всегда сохраняются в системной таблице информационной базы.
  2. Хранилище общих настроек – данное хранилище предназначено для хранения различных настроек прикладного решения. Платформа самостоятельно не записывает в данное хранилище никаких настроек. Данное хранилище должен использовать разработчик из встроенного языка, для того чтобы выполнять сохранение/восстановление прикладных настроек пользователя.
  3. Хранилище пользовательских настроек отчетов – в данное хранилище помещаются пользовательские настройки отчетов.
  4. Хранилище вариантов отчетов – в данное хранилище помещаются варианты отчетов.
  5. Хранилище настроек данных форм – в это хранилище сохраняются данные форм. Этим хранилищем можно пользоваться, например, для сохранения реквизитов обработок. При этом можно выбрать индивидуальное хранилище для каждого отчета и обработки.

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

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

Объект метаданных ХранилищеНастроек

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

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

Методы и обработчики

У объекта ХранилищеНастроекМенеджер имеется ряд методов, которые вызывают соответствующие события. Таким образом, определением обработчиков событий описывается логика сохранения/загрузки настроек.

В методах хранилища и обработчиках используются следующие параметры:

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

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

Например, если настройки сохраняются в справочнике, то в качестве ключа настройки можно использовать поле Код или значение Ссылка (элемента справочника).

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

Объект ХранилищеНастроек предоставляет следующие методы:

  • Сохранить() – используется для сохранения настройки.

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

  • Загрузить() – используется для получения настройки.

Вызывает событие ОбработкаЗагрузки. Если обработчик события не реализован или пустой, то действие не будет выполнено.

  • ПолучитьОписание() – используется для получения описания настройки.

Вызывает событие ОбработкаПолученияОписания. Если обработчик события не реализован или пустой, то действие не будет выполнено.

  • УстановитьОписание() – используется для установки описания настройки.

Вызывает событие ОбработкаУстановкиОписания. Если обработчик события не реализован или пустой, то действие не будет выполнено.

Подробнее про параметры методов можно посмотреть во встроенной справке.

В модуле менеджера объекта должны находится обработчики следующих событий:

  • ОбработкаСохранения – содержит реализацию метода Сохранить(). В данном обработчике необходимо выполнить сохранение настройки в некоторый объект. Например, в элемент справочника.
  • ОбработкаЗагрузки – содержит реализацию метода Загрузить(). В данном обработчике необходимо получить настройки из некоторого объекта. Например, из элемента справочника.
  • ОбработкаПолученияОписания – содержит реализацию метода ПолучитьОписание(). В данном обработчике необходимо заполнить описание настройки на основании свойств сохраненной настройки. Например, из элемента справочника.
  • ОбработкаУстановкиОписания – содержит реализацию метода УстановитьОписание(). В данном обработчике необходимо заполнить описание сохраненной настройки из переданного объекта ОписаниеНастроек. Например, в элементе справочника.

Подробнее про параметры обработчиков можно посмотреть во встроенной справке.

Формы

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

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

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

  • КлючОбъекта – идентификатор объекта, для которого нужно отображать список настроек. Например, для отчета это будет полным именем отчета.
  • КлючТекущихНастроек – идентификатор настройки, которая была текущей там, откуда вызывается форма сохранения или восстановления настроек. Например, это может быть идентификатором текущей настройки отчета.
  • СтандартныеНастройки – список значений, содержащий стандартные настройки. Например, для выбора варианта отчета данный список содержит список стандартных вариантов, настроек, описанных в схеме компоновки данных отчета. Данный параметр передается только в форму загрузки.

При создании формы с помощью конструктора, вышеописанные параметры будут автоматически добавлены в список параметров формы.

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

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

Стандартное хранилище настроек

Стандартное хранилище настроек представляется во встроенном языке объектом СтандартноеХранилищеНастроекМенеджер. Данный объект реализует тот же набор методов, что и объект ХранилищеНастроекМенеджер, и дополнительно реализует методы:

  • ПолучитьСписок() – метод получения списка настроек для выбранного объекта настройки,
  • Удалить() – удаление определенной настройки выбранного объекта настройки.

Стандартное хранилище сохраняет настройки в системных таблицах информационной базы.

В качестве ключа объекта настройки и в качестве ключа настройки системное хранилище настроек принимает строку.

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

Сохранение настроек форм

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

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

Если для формы установлена возможность сохранения данных, то необходимо указать, какие реквизиты формы должны сохраняться (колонка Сохранение на закладке Реквизиты редактора формы).

При сохранении настроек в качестве ключа объекта используется полное имя формы. В настройках сохраняется объект типа Соответствие, в котором в качестве ключей находятся пути к сохраняемым реквизитам, а в качестве значений – их (реквизитов) значения.

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

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

Сохранение настроек отчетов

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

Форма отчета предоставляет команды сохранения и загрузки вариантов и настроек отчетов.

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

  • ПриСохраненииВариантаНаСервере – в данный обработчик передаются настройки компоновки данных, которые будут сохраняться. В этом обработчике можно программно добавить в объект настроек дополнительную информацию.
  • ПриЗагрузкеВариантаНаСервере – в данный обработчик передается объект настроек, из которого уже загружен вариант отчета. В этом обработчике можно прочитать из объекта настроек дополнительную информацию.
  • ПриСохраненииПользовательскихНастроекНаСервере – в данный обработчик передаются пользовательские настройки отчета, которые будут сохраняться. В этом обработчике можно добавить в настройки дополнительную информацию.
  • ПриЗагрузкеПользовательскихНастроекНаСервере – в данный обработчик передается объект настроек, которые содержит уже загруженные пользовательские настройки. В этом обработчике можно прочитать из объекта настроек дополнительную информацию.

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

Порядок разработки хранилища настроек

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

  1. Определяется, какое хранилище (см. начало главы) будет использоваться. Например, будем реализовывать хранилище настроек данных форм конфигурации.
  2. Определяется перечень объектов метаданных, которые будут использовать это хранилище, и определяется перечень хранимой информации, ее структура и типы. Эта информация поможет нам правильно выбрать объект метаданных, в данных которого будут храниться наши настройки.
  3. На основании информации из п. 2 создается объект (и его структура), который будет хранить настройки. Пусть наши настройки хранятся в элементах справочника. Т. к. в нашем случае структура сохраняемых данных крайне разнородна, то нет смысла реализовывать отдельный набор реквизитов для хранения настроек каждой формы, поэтому настройки будут храниться в реквизите справочника типа ХранилищеЗначения.
  4. Создается объект типа ХранилищеНастроек и для него выполняется реализация форм сохранения и загрузки. Тем самым мы обеспечиваем интерактивность при сохранении и восстановлении настроек.
  5. Для созданного объекта ХранилищеНастроек выполняется реализация обработчиков событий, связанных с сохранением и восстановлением настроек. Если не выполнить эту операцию, то не будут происходить собственно операции чтения/записи настроек. Для решения этой задачи нужно реализовать обработчики событий ОбработкаСохранения и ОбработкаЗагрузки в модуле созданного объекта типа ХранилищеНастроек.
  6. В объектах, выделенных в п. 2 (или в свойствах конфигурации), заполняются соответствующие свойства, тем самым указывая объектам, в каких хранилищах будут храниться настройки. В нашем примере необходимо заполнить свойство конфигурации Хранилище настроек данных форм ссылкой на объект, созданный на шаге 4.
  7. При необходимости выполняется реализация обработчиков событий, связанных с сохранением и восстановлением настроек в тех прикладных объектах, где это необходимо.

Приложение В. Настройки, сохраняемые платформой в хранилищах настроек

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

Хранилище: вариантов отчета

  • Настройка: варианты отчета.
    • Ключ объекта – полное имя отчета. Например: Отчет.Продажи.
    • Ключ настройки – текстовый идентификатор варианта. Например: ПродажиПоРегионам.
    • Тип сохраняемого значения – НастройкиКомпоновкиДанных.

    Хранилище: настроек отчета

    • Настройка: настройки отчета.
      • Ключ объекта – текстовая строка, составленная из полного имени отчета, символа «/» и ключа варианта. Например: Отчет.Продажи/ПродажиПоРегионам.
      • Ключ настройки – текстовый идентификатор настройки. Пример: МоиКлиенты.
      • Тип сохраняемого значения – ПользовательскиеНастройкиКомпоновкиДанны.

      Хранилище данных форм

      • Настройка: значения полей формы.
        • Ключ объекта – полное имя формы. Например: Обработка.ВыгрузкаДанных.Форма.ОсновнаяФорма.
        • Ключ настройки – текстовый идентификатор сохраняемых значений. Пример: ВыгрузкаВСбербанк.
        • Тип сохраняемого значения – Соответствие. Ключом соответствия выступает текстовый путь к сохраняемому реквизиту данных, а значением является значение реквизита.

        Системное хранилище

        • Настройка: ключ текущего варианта отчета.
          • Ключ объекта – текстовая строка, составленная из полного имени отчета и строки «/КлючТекущегоВарианта» («/CurrentVariantKey»).
            • Например: Отчет.Продажи/КлючТекущегоВарианта.
            • Ключ объекта – является строковым значением, состоящим из полного имени отчета, ключа варианта отчета (в виде строки) и текста «КлючТекущихПользовательскихНастроек» (CurrentUserSettingsKey), разделенными символами «/».
              • Например: Отчет.Продажи/ПродажиПоРегионам/ КлючТекущихПользовательскихНастроек.
              • Ключ объекта – является строковым значением, состоящим из полного имени отчета, ключа варианта отчета (в виде строки) и текста «ТекущиеПользовательскиеНастройки» («CurrentUserSettings»), разделенными символами «/».
                • Например: Отчет.Продажи/ПродажиПоРегионам/ ТекущиеПользовательскиеНастройки.
                • Ключ объекта – является строковым значением, состоящим из полного имени формы и текста «КлючТекущихНастроекДанных» («CurrentDataSettingsKey»), разделенными символом «/».
                  • Например: Обработка.ВыгрузкаДанных.Формы.ОсновнаяФорма/КлючТекущихНастроекДанных
                  • Ключ объекта – является строковым значением, состоящим из полного имени формы и текста «ТекущиеДанные» («CurrentData»), разделенными символом «/».
                    • Например: Обработка.ВыгрузкаДанных.Формы.ОсновнаяФорма/ТекущиеДанные.
                    • Ключ объекта – является строковым значением, состоящим из полного имени формы и текста «НастройкиФормы» («FormSettings»), разделенными символом «/».
                      • Например: Обработка.ВыгрузкаДанных.Формы.ОсновнаяФорма/НастройкиФормы.
                      • Ключ объекта – является строковым значением, состоящим из полного имени формы и текста «НастройкиОкна» («WindowSettings»), разделенными символом «/».
                        • Например: Обработка.ВыгрузкаДанных.Формы.ОсновнаяФорма/ НастройкиОкна.
                        • Ключ объекта – «Общее/ИзбранноеРаботыПользователя» («Common/UserWorkFavorites»).
                        • Ключ настройки – пустая строка.
                        • Тип сохраняемого значения – ИзбранноеРаботыПользователя. Подробнее смотри раздел «Избранные ссылки пользователя» главы «Сервисные возможности навигации».
                        • Ключ объекта – строковое значение, один из вариантов:
                          • полное имя фрагмента командного интерфейса и «/ПанельДействий» («/ActionsPanel»);
                          • полное имени фрагмента командного интерфейса и «/ПанельНавигации/НастройкиКомандногоИнтерфейса» («/NavigationPanel/CommandInterfaceSettings»);
                          • «Общее/ПанельРазделов/НастройкиКоманд-ногоИнтерфейса» («Common/PartitionPanel/CommandInterfaceSettings»).
                          • Например: Подсистема.Продажи/ПанельНавигации/Нас-тройкиКомандногоИнтерфейса.
                          • Ключ объекта – «Общее/НастройкиРабочегоСтола» («Common/DesktopSettings»).
                          • Ключ настройки – пустая строка.
                          • Тип сохраняемого значения – НастройкиРабочегоСтола. Объект без свойств и методов.
                          • Ключ объекта – строковое значение, состоящее из «Общее/НастройкиПечатиТабличногоДокумента/» («Common/SpreadsheetDocumentPrintSettings/») и имени параметров печати. Например:
                            • Общее/НастройкиПечатиТабличногоДокумента/РасходнаяНакладная.

                            Объекты конфигуратора для работы с настройками

                            меню Справка/Содержание справки/1С предприятие/Встроенный язык/Глобальный контекст/Свойства/Хранилища настроек

                            меню Справка/Содержание справки/1С предприятие/Встроенный язык/Прикладные объекты/Хранилища настроек

                            Глобальный контекст

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

                            Использование: Только чтение.

                            Тип: СтандартноеХранилищеНастроекМенеджер; ХранилищеНастроекМенеджер.

                            Доступность: клиент, сервер, внешнее соединение.

                            Свойства глобального контекста:

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

                            Хранилища настроек

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

                            СтандартноеХранилищеНастроекМенеджер (StandardSettingsStorageManager)
                            • Загрузить (Load)
                            • ПолучитьОписание (GetDescription)
                            • ПолучитьСписок (GetList)
                            • Сохранить (Save)
                            • Удалить (Delete)
                            • УстановитьОписание (SetDescription)

                            Описание: Хранилище настроек, хранящее настройки в системных таблицах.

                            Доступность: клиент, сервер, внешнее соединение.

                            См. также: Глобальный контекст, свойство ХранилищеСистемныхНастроек

                            ХранилищаНастроекМенеджер (SettingsStoragesManager)

                            Элементы коллекции: ХранилищеНастроекМенеджер

                            Для объекта доступен обход коллекции посредством оператора Для каждого … Из … Цикл. При обходе выбираются хранилища настроек.

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

                            • <Имя хранилища> (<Имя хранилища>)

                            Описание: Коллекция хранилищ настроек, определенных в конфигурации.

                            Доступность: клиент, сервер, внешнее соединение.

                            См. также: Глобальный контекст, свойство ХранилищаНастроек

                            ХранилищеНастроекМенеджер.<Имя хранилища> (SettingsStorageManager.<Имя хранилища>)
                            • Загрузить (Load)
                            • ПолучитьМакет (GetTemplate)
                            • ПолучитьОписание (GetDescription)
                            • ПолучитьФорму (GetForm)
                            • ПолучитьФормуЗагрузки (GetLoadForm)
                            • ПолучитьФормуСохранения (GetSaveForm)
                            • Сохранить (Save)
                            • УстановитьОписание (SetDescription)
                            • ОбработкаЗагрузки (LoadProcessing)
                            • ОбработкаПолученияОписания (GetDescriptionProcessing)
                            • ОбработкаСохранения (SaveProcessing)
                            • ОбработкаУстановкиОписания (SetDescriptionProcessing)

                            Описание: Объект, предоставляющий доступ к хранилищу настроек определенного типа.

                            Доступность: клиент, сервер, внешнее соединение.

                            См. также: ХранилищаНастроекМенеджер, свойство <Имя хранилища>

                            ВыборНастроек (SettingsChoice)
                            • ДополнительныеСвойства (AdditionalProperties)
                            • КлючНастроек (SettingsKey)
                            • На основании ключа

                            Описание: Содержит информацию о выбранной пользователем настройке.

                            Доступность: клиент, сервер, внешнее соединение, тонкий клиент, веб-клиент.

                            ОписаниеНастроек (SettingsDescription)
                            • ДополнительныеСвойства (AdditionalProperties)
                            • КлючНастроек (SettingsKey)
                            • КлючОбъекта (ObjectKey)
                            • Пользователь (User)
                            • Представление (Presentation)

                            Описание: Содержит информацию об описании настройки.

                            Доступность: клиент, сервер, внешнее соединение.

                            • ХранилищеНастроекМенеджер, метод ПолучитьОписание
                            • ХранилищеНастроекМенеджер, метод УстановитьОписание
                            • ХранилищеНастроекМенеджер, событие ОбработкаПолученияОписания
                            • ХранилищеНастроекМенеджер, событие ОбработкаУстановкиОписания
                            • СтандартноеХранилищеНастроекМенеджер, метод ПолучитьОписание
                            • СтандартноеХранилищеНастроекМенеджер, метод Сохранить
                            • СтандартноеХранилищеНастроекМенеджер, метод УстановитьОписание
                            • ХранилищеНастроекМенеджер, метод Сохранить
                            • ХранилищеНастроекМенеджер, событие ОбработкаСохранения
                            Использование форм сохранения и загрузки

                            В разделе описываются механизмы использования форм сохранения и загрузки.

                            Форма сохранения
                            • КлючОбъекта (ObjectKey)
                            • КлючТекущихНастроек (CurrentSettingsKey)

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

                            Форма загрузки
                            • КлючОбъекта (ObjectKey)
                            • КлючТекущихНастроек (CurrentSettingsKey)
                            • СтандартныеНастройки (StandardSettings)

                            Форма, используемая для загрузки настроек.

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

                            Особенности использования механизма настроек

                            Насколько можно понять из описания, можно выделить две части механизма:

                            • Использование прикладных объектов хранилища настройки для сохранения/восстановления настроек
                            • Замена встроенных объектов на определённые в конфигурации (паттерн плагин)

                            Не очень понятно зачем нужен механизм переопределения стандартных хранилищ, но, наверное, можно что-то придумать. Типа контекстной чувствительности настроек.

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

                            • ХранилищеВариантовОтчетов
                            • ХранилищеНастроекДанныхФорм
                            • ХранилищеОбщихНастроек
                            • ХранилищеПользовательскихНастроекОтчетов
                            • ХранилищеСистемныхНастроек

                            Сохранение/восстановление пользовательских настроек

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

                            1с хранилищеобщихнастроек как посмотреть

                            Настройки пользователя в 1С обычно разделены на три части.

                            Во-первых, платформа 1С позволяет каждому пользователю делать свои собственные настройки 1С для удобства. Например, настройки 1С отчетов СКД.

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

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

                            Где хранить все эти настройки в 1С?

                            Как настройки 1С сохраняли раньше

                            В толстом клиенте 1С платформа предлагала следующий стандартный вариант:

                            • Когда требуется запомнить настройку 1С, программист использует функцию
                              СохранитьЗначение(«ИмяНастройки», Значение);
                            • Чтобы прочитать настройку 1С, используется функция
                              Значение = ВосстановитьЗначение(«ИмяНастройки», Значение);

                            Соответственно программист создает кнопки сохранения и восстановления настроек 1С, а пользователь использует этот механизм (ну или программист сохраняет их автоматически).

                            В качестве значения можно использовать не только число или строку, но и например Структуру – тип, который позволяет хранить в себе множество значений с их наименованиями, например:
                            Настройки = Новый Структура();
                            Настройки.Вставить(«ИмяНастройки», Значение);
                            Значение = Настройки.ИмяНастройки;

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

                            Также программист был волен разрабатывать свои произвольные методы хранения настроек 1С с использованием обычных методов – например, с помощью работы с текстовыми и XML файлами – сохранять настройки 1С произвольным образом в файл.

                            В типовых конфигурациях настройки 1С отчетов сохранялись в регистр сведений. А настройки 1С отчетов СКД можно сохранить в файл XML.

                            Стандартное хранилище настроек 1С

                            Все эти возможности остались и в новой платформе 8.2, но появился наконец некий «стандартный метод» сохранения настроек – Хранилище настроек 1С.

                            Механизм делится на две части – стандартные и пользовательские хранилища настроек 1С. Стандартное реализовано в платформе 1С, пользовательские – это объект 1С, который создает и программирует программист.

                            Стандартное хранилище настроек 1С используется платформой по умолчанию в тонком клиенте для сохранения настроек 1С пользователя в следующих механизмах платформы:

                            • Командный управляемый интерфейс
                            • Формы
                            • Настройки и варианты отчетов.

                            Программист может использовать стандартное хранилище настроек 1С из кода программ на языке 1С способом, подобным тому, что был раньше:

                            • Когда требуется запомнить настройку
                              ХранилищеОбщихНастроек.Сохранить(«ИмяОбъекта», «ИмяНастроек», Значение);
                            • Чтобы прочитать настройку
                              Значение = ХранилищеОбщихНастроек.Загрузить(«ИмяОбъекта», «ИмяНастроек», Значение);
                            • Чтобы получить список настроек
                              Список = ХранилищеОбщихНастроек.ПолучитьСписок(«ИмяОбъекта»);

                            Настройки 1С сохраняются непосредственно в базе данных, в специальных таблицах.

                            Как видно, по сравнению со старым механизмом, добавился дополнительный разрез – имя объекта. Платформа, при автоматическом сохранении используется имя объекта 1С в метаданных с указанием вида, например:
                            Отчет.Продажи

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

                            Существуют следующие стандартные хранилища настроек 1С:

                            • ХранилищеСистемныхНастроек
                            • ХранилищеОбщихНастроек
                            • ХранилищеНастроекДанныхФорм
                            • ХранилищеПользовательскихНастроекОтчетов и ХранилищеВариантовОтчетов.

                            Хранилище настроек 1С

                            Программист может создать собственные хранилища настроек – в конфигураторе.

                            Это предполагается делать в следующих случаях:

                            • Ссылочный контроль при хранении настроек 1С
                            • Миграция настроек 1С при использовании УРБД
                            • Специальная структура настроек 1С (для автоматического ее соблюдения)
                            • Переопределение стандартных хранилищ.

                            Для создания собственного хранилища настроек 1С – необходимо добавить таковое в конфигураторе в окне конфигурации в ветке Общие/Хранилища настроек 1С.

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

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

                            В тонком управляемом клиенте 1С использование хранилища возможно автоматически:

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

                            В толстом клиенте для использования требуется в коде на языке 1С прописывать непосредственный вызов сохранения настроек 1С:
                            ХранилищаНастроек.ИмяХранилища.Сохранить();

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

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

                            Хранилище системных настроек "Внутренний кэш 1С" (обычная и управляемая форма) 8.2-8.3

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

                            Описание

                            Обработка «Хранилище системных настроек» представляет собой полностью автономное решение, с точки зрения встраивания в любую конфигурацию, как на обычных, так и на управляемых формах! А версия платформы начиная с 8.2 не играет роли! В коде не используются синхронные и модальные вызовы!

                            Обработка показывает работу с методами типа данных:

                            СтандартноеХранилищеНастроекМенеджер (StandardSettingsStorageManager)
                            Методы:
                            Выбрать (Select)
                            Загрузить (Load)
                            ПолучитьОписание (GetDescription)
                            ПолучитьСписок (GetList)
                            Сохранить (Save)
                            Удалить (Delete)
                            УстановитьОписание (SetDescription)
                            Описание:
                            Объекты этого типа предназначены для доступа к настройкам, хранящимся в стандартном хранилище.
                            Для доступа к настройкам вариантов отчетов объект этого типа должен быть получен из свойства глобального контекста ХранилищеВариантовОтчетов.
                            Для доступа к пользовательским настройкам отчетов объект этого типа должен быть получен из свойства глобального контекста ХранилищеПользовательскихНастроекОтчетов.
                            Для доступа к пользовательским настройкам данных форм объект этого типа должен быть получен из свойства глобального контекста ХранилищеНастроекДанныхФорм.
                            Для доступа к общим настройкам объект этого типа должен быть получен из свойства глобального контекста ХранилищеОбщихНастроек.
                            Для доступа к системным настройкам объект этого типа должен быть получен из свойства глобального контекста ХранилищеСистемныхНастроек.
                            Для доступа к пользовательским настройкам динамических списков объект этого типа должен быть получен из свойства глобального контекста ХранилищеПользовательскихНастроекДинамическихСписков.
                            Доступность:
                            Сервер, толстый клиент, внешнее соединение.
                            См. также:
                            Глобальный контекст, свойство ХранилищеСистемныхНастроек

                            Весь функционал проиллюстрирован в скриншотах.

                            Внимание! Имя пользователя должно совпадать с именем пользователя ИБ! Иначе кнопка "Получить настройки пользователя" будет работать не корректно и часть функционала не сработает. Но если переименовывать пользователей проблематично просто используйте только кнопку "Получить настройки всех пользователей"!

                            Обновление от 22.04.2020
                            Переработан код, чтобы избавиться от ошибки формата потока. Данная ошибка связана с тем, что платформа не может отобразить тип данных. Поэтому такие настройки будут исключены из вывода на форму обработки. Дополнительно отправлен запрос в 1С на доработку, ошибка воспроизводится на 1С:Предприятие 8.3.13.1690, 8.3.15.1830, 8.3.17.1386, 8.3.17.1549 .
                            Ответ ТП от 02.07.2020:
                            Есть предположение, что размер получаемых настроек превышает 2Gb, и в последующем платформа падает при попытке сериализовать данные (при передаче этого объема данных в качестве параметра). Вероятно объем настроек одного (или нескольких) из пользователей весьма значителен.

                            Решения проблемы нет, посоветовали не хранить такой объем данных в настройках. Продолжение следует.

                            Ошибка при вызове метода контекста (Следующий)
                            Пока Выборка.Следующий() Цикл
                            по причине:
                            Ошибка формата объекта настроек
                            по причине:
                            Ошибка формата потока

                            Где хранятся настройки формы 1с 8.3. Работа с хранилищем конфигурации удаленно. Настройка сервера хранилища конфигураций. Метод работы с хранилищем конфигурации по tcp. Сохранение настроек динамических списков

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

                            Существует два вида хранилищ настроек:

                            1. Стандартное хранилище – хранилище, используемое системой по умолчанию и хранящее данные в системных таблицах информационной базы.
                            2. Хранилища настроек – специальные объекты метаданных, которые описывают хранение данных в некотором объекте информационной базы.

                            Например, в этом объекте может быть описана работа с настройками, которые хранятся в справочнике.

                            Платформа использует пять хранилищ:

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

                            2. Хранилище общих настроек – данное хранилище предназначено для хранения различных настроек прикладного решения. Платформа самостоятельно не записывает в данное хранилище никаких настроек. Данное хранилище должен использовать разработчик из встроенного языка, для того чтобы выполнять сохранение/восстановление прикладных настроек пользователя.

                            3. Хранилище пользовательских настроек отчетов – в данное хранилище помещаются пользовательские настройки отчетов.

                            4. Хранилище вариантов отчетов – в данное хранилище помещаются варианты отчетов.

                            5. Хранилище настроек данных форм – в это хранилище сохраняются данные форм. Этим хранилищем можно пользоваться, например, для сохранения реквизитов обработок. При этом можно выбрать индивидуальное хранилище для каждого отчета и обработки.

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

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

                            Объект метаданных ХранилищеНастроек

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

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

                            Методы и обработчики

                            У объекта ХранилищеНастроекМенеджер имеется ряд методов, которые вызывают соответствующие события. Таким образом, определением обработчиков событий описывается логика сохранения/загрузки настроек.

                            В методах хранилища и обработчиках используются следующие параметры:

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

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

                            Например, если настройки сохраняются в справочнике, то в качестве ключа настройки можно использовать поле Код или значение Ссылка (элемента справочника).

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

                            Объект ХранилищеНастроек предоставляет следующие методы:

                            • Сохранить() – используется для сохранения настройки.

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

                            • Загрузить() – используется для получения настройки.

                            Вызывает событие ОбработкаЗагрузки. Если обработчик события не реализован или пустой, то действие не будет выполнено.

                            • ПолучитьОписание() – используется для получения описания настройки.

                            Вызывает событие ОбработкаПолученияОписания. Если обработчик события не реализован или пустой, то действие не будет выполнено.

                            • УстановитьОписание() – используется для установки описания настройки.

                            Вызывает событие ОбработкаУстановкиОписания. Если обработчик события не реализован или пустой, то действие не будет выполнено.

                            Подробнее про параметры методов можно посмотреть во встроенной справке.

                            В модуле менеджера объекта должны находится обработчики следующих событий:

                            • ОбработкаСохранения – содержит реализацию метода Сохранить(). В данном обработчике необходимо выполнить сохранение настройки в некоторый объект. Например, в элемент справочника.
                            • ОбработкаЗагрузки – содержит реализацию метода Загрузить(). В данном обработчике необходимо получить настройки из некоторого объекта. Например, из элемента справочника.
                            • ОбработкаПолученияОписания – содержит реализацию метода ПолучитьОписание(). В данном обработчике необходимо заполнить описание настройки на основании свойств сохраненной настройки. Например, из элемента справочника.
                            • ОбработкаУстановкиОписания – содержит реализацию метода УстановитьОписание(). В данном обработчике необходимо заполнить описание сохраненной настройки из переданного объекта ОписаниеНастроек. Например, в элементе справочника.

                            Подробнее про параметры обработчиков можно посмотреть во встроенной справке.

                            Формы

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

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

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

                            • КлючОбъекта – идентификатор объекта, для которого нужно отображать список настроек. Например, для отчета это будет полным именем отчета.
                            • КлючТекущихНастроек – идентификатор настройки, которая была текущей там, откуда вызывается форма сохранения или восстановления настроек. Например, это может быть идентификатором текущей настройки отчета.
                            • СтандартныеНастройки – список значений, содержащий стандартные настройки. Например, для выбора варианта отчета данный список содержит список стандартных вариантов, настроек, описанных в схеме компоновки данных отчета. Данный параметр передается только в форму загрузки.

                            При создании формы с помощью конструктора, вышеописанные параметры будут автоматически добавлены в список параметров формы.

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

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

                            Стандартное хранилище настроек

                            Стандартное хранилище настроек представляется во встроенном языке объектом СтандартноеХранилищеНастроекМенеджер. Данный объект реализует тот же набор методов, что и объект ХранилищеНастроекМенеджер, и дополнительно реализует методы:

                            • ПолучитьСписок() – метод получения списка настроек для выбранного объекта настройки,
                            • Удалить() – удаление определенной настройки выбранного объекта настройки.

                            Стандартное хранилище сохраняет настройки в системных таблицах информационной базы.

                            В качестве ключа объекта настройки и в качестве ключа настройки системное хранилище настроек принимает строку.

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

                            Сохранение настроек форм

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

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

                            Если для формы установлена возможность сохранения данных, то необходимо указать, какие реквизиты формы должны сохраняться (колонка Сохранение на закладке Реквизиты редактора формы).

                            При сохранении настроек в качестве ключа объекта используется полное имя формы. В настройках сохраняется объект типа Соответствие, в котором в качестве ключей находятся пути к сохраняемым реквизитам, а в качестве значений – их (реквизитов) значения.

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

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

                            Сохранение настроек отчетов

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

                            Форма отчета предоставляет команды сохранения и загрузки вариантов и настроек отчетов.

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

                            • ПриСохраненииВариантаНаСервере – в данный обработчик передаются настройки компоновки данных, которые будут сохраняться. В этом обработчике можно программно добавить в объект настроек дополнительную информацию.
                            • ПриЗагрузкеВариантаНаСервере – в данный обработчик передается объект настроек, из которого уже загружен вариант отчета. В этом обработчике можно прочитать из объекта настроек дополнительную информацию.
                            • ПриСохраненииПользовательскихНастроекНаСервере – в данный обработчик передаются пользовательские настройки отчета, которые будут сохраняться. В этом обработчике можно добавить в настройки дополнительную информацию.
                            • ПриЗагрузкеПользовательскихНастроекНаСервере – в данный обработчик передается объект настроек, которые содержит уже загруженные пользовательские настройки. В этом обработчике можно прочитать из объекта настроек дополнительную информацию.

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

                            Порядок разработки хранилища настроек

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

                            2. Определяется перечень объектов метаданных, которые будут использовать это хранилище, и определяется перечень хранимой информации, ее структура и типы. Эта информация поможет нам правильно выбрать объект метаданных, в данных которого будут храниться наши настройки.

                            3. На основании информации из п. 2 создается объект (и его структура), который будет хранить настройки. Пусть наши настройки хранятся в элементах справочника. Т. к. в нашем случае структура сохраняемых данных крайне разнородна, то нет смысла реализовывать отдельный набор реквизитов для хранения настроек каждой формы, поэтому настройки будут храниться в реквизите справочника типа ХранилищеЗначения.

                            4. Создается объект типа ХранилищеНастроек и для него выполняется реализация форм сохранения и загрузки. Тем самым мы обеспечиваем интерактивность при сохранении и восстановлении настроек.

                            5. Для созданного объекта ХранилищеНастроек выполняется реализация обработчиков событий, связанных с сохранением и восстановлением настроек. Если не выполнить эту операцию, то не будут происходить собственно операции чтения/записи настроек. Для решения этой задачи нужно реализовать обработчики событий ОбработкаСохранения и ОбработкаЗагрузки в модуле созданного объекта типа ХранилищеНастроек.

                            6. В объектах, выделенных в п. 2 (или в свойствах конфигурации), заполняются соответствующие свойства, тем самым указывая объектам, в каких хранилищах будут храниться настройки. В нашем примере необходимо заполнить свойство конфигурации Хранилище настроек данных форм ссылкой на объект, созданный на шаге 4.

                            7. При необходимости выполняется реализация обработчиков событий, связанных с сохранением и восстановлением настроек в тех прикладных объектах, где это необходимо.

                            Приложение В. Настройки, сохраняемые платформой в хранилищах настроек

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

                            Хранилище: вариантов отчета

                            • Настройка: варианты отчета.
                              • Ключ объекта – полное имя отчета. Например: Отчет.Продажи.
                              • Ключ настройки – текстовый идентификатор варианта. Например: ПродажиПоРегионам.
                              • Тип сохраняемого значения – НастройкиКомпоновкиДанных.

                              Хранилище: настроек отчета

                              • Настройка: настройки отчета.
                                • Ключ объекта – текстовая строка, составленная из полного имени отчета, символа «/» и ключа варианта. Например: Отчет.Продажи/ПродажиПоРегионам.
                                • Ключ настройки – текстовый идентификатор настройки. Пример: МоиКлиенты.
                                • Тип сохраняемого значения – ПользовательскиеНастройкиКомпоновкиДанны.

                                Хранилище данных форм

                                • Настройка: значения полей формы.
                                  • Ключ объекта – полное имя формы. Например: Обработка.ВыгрузкаДанных.Форма.ОсновнаяФорма.
                                  • Ключ настройки – текстовый идентификатор сохраняемых значений. Пример: ВыгрузкаВСбербанк.

                                  Системное хранилище

                                  • Настройка: ключ текущего варианта отчета.
                                    • Ключ объекта – текстовая строка, составленная из полного имени отчета и строки «/КлючТекущегоВарианта» («/CurrentVariantKey»).
                                      • Например: Отчет.Продажи/КлючТекущегоВарианта.
                                      • Ключ объекта – является строковым значением, состоящим из полного имени отчета, ключа варианта отчета (в виде строки) и текста «КлючТекущихПользовательскихНастроек» (CurrentUserSettingsKey), разделенными символами «/».
                                        • Например: Отчет.Продажи/ПродажиПоРегионам/ КлючТекущихПользовательскихНастроек.
                                        • Ключ объекта – является строковым значением, состоящим из полного имени отчета, ключа варианта отчета (в виде строки) и текста «ТекущиеПользовательскиеНастройки» («CurrentUserSettings»), разделенными символами «/».
                                          • Например: Отчет.Продажи/ПродажиПоРегионам/ ТекущиеПользовательскиеНастройки.
                                          • Ключ объекта – является строковым значением, состоящим из полного имени формы и текста «КлючТекущихНастроекДанных» («CurrentDataSettingsKey»), разделенными символом «/».
                                            • Например: Обработка.ВыгрузкаДанных.Формы.ОсновнаяФорма/КлючТекущихНастроекДанных
                                            • Ключ объекта – является строковым значением, состоящим из полного имени формы и текста «ТекущиеДанные» («CurrentData»), разделенными символом «/».
                                              • Например: Обработка.ВыгрузкаДанных.Формы.ОсновнаяФорма/ТекущиеДанные.
                                              • Ключ объекта – является строковым значением, состоящим из полного имени формы и текста «НастройкиФормы» («FormSettings»), разделенными символом «/».
                                                • Например: Обработка.ВыгрузкаДанных.Формы.ОсновнаяФорма/НастройкиФормы.
                                                • Ключ объекта – является строковым значением, состоящим из полного имени формы и текста «НастройкиОкна» («WindowSettings»), разделенными символом «/».
                                                  • Например: Обработка.ВыгрузкаДанных.Формы.ОсновнаяФорма/ НастройкиОкна.
                                                  • Ключ объекта – «Общее/ИзбранноеРаботыПользователя» («Common/UserWorkFavorites»).
                                                  • Ключ настройки – пустая строка.
                                                  • Тип сохраняемого значения – ИзбранноеРаботыПользователя. Подробнее смотри раздел «Избранные ссылки пользователя» главы «Сервисные возможности навигации».
                                                  • Ключ объекта – строковое значение, один из вариантов:
                                                    • полное имя фрагмента командного интерфейса и «/ПанельДействий» («/ActionsPanel»);
                                                    • полное имени фрагмента командного интерфейса и «/ПанельНавигации/НастройкиКомандногоИнтерфейса» («/NavigationPanel/CommandInterfaceSettings»);
                                                    • «Общее/ПанельРазделов/НастройкиКоманд-ногоИнтерфейса» («Common/PartitionPanel/CommandInterfaceSettings»).
                                                    • Например: Подсистема.Продажи/ПанельНавигации/Нас-тройкиКомандногоИнтерфейса.
                                                    • Ключ объекта – «Общее/НастройкиРабочегоСтола» («Common/DesktopSettings»).
                                                    • Ключ настройки – пустая строка.
                                                    • Тип сохраняемого значения – НастройкиРабочегоСтола. Объект без свойств и методов.
                                                    • Ключ объекта – строковое значение, состоящее из «Общее/НастройкиПечатиТабличногоДокумента/» («Common/SpreadsheetDocumentPrintSettings/») и имени параметров печати. Например:
                                                      • Общее/НастройкиПечатиТабличногоДокумента/РасходнаяНакладная.

                                                      Объекты конфигуратора для работы с настройками

                                                      меню Справка/Содержание справки/1С предприятие/Встроенный язык/Глобальный контекст/Свойства/Хранилища настроек

                                                      меню Справка/Содержание справки/1С предприятие/Встроенный язык/Прикладные объекты/Хранилища настроек

                                                      Глобальный контекст

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

                                                      Использование: Только чтение.

                                                      Тип: СтандартноеХранилищеНастроекМенеджер; ХранилищеНастроекМенеджер.

                                                      Свойства глобального контекста:

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

                                                      Хранилища настроек

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

                                                      СтандартноеХранилищеНастроекМенеджер (StandardSettingsStorageManager)
                                                      • Загрузить (Load)
                                                      • ПолучитьСписок (GetList)
                                                      • Сохранить (Save)
                                                      • Удалить (Delete)

                                                      Описание: Хранилище настроек, хранящее настройки в системных таблицах.

                                                      Доступность: клиент, сервер, внешнее соединение.

                                                      См. также: Глобальный контекст, свойство ХранилищеСистемныхНастроек

                                                      ХранилищаНастроекМенеджер (SettingsStoragesManager)

                                                      Элементы коллекции: ХранилищеНастроекМенеджер

                                                      Для объекта доступен обход коллекции посредством оператора Для каждого … Из … Цикл. При обходе выбираются хранилища настроек.

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

                                                      Описание: Коллекция хранилищ настроек, определенных в конфигурации.

                                                      Доступность: клиент, сервер, внешнее соединение.

                                                      См. также: Глобальный контекст, свойство ХранилищаНастроек

                                                      ХранилищеНастроекМенеджер. (SettingsStorageManager. )
                                                      • Загрузить (Load)
                                                      • ПолучитьМакет (GetTemplate)
                                                      • ПолучитьОписание (GetDescription)
                                                      • ПолучитьФорму (GetForm)
                                                      • ПолучитьФормуЗагрузки (GetLoadForm)
                                                      • ПолучитьФормуСохранения (GetSaveForm)
                                                      • Сохранить (Save)
                                                      • УстановитьОписание (SetDescription)
                                                      • ОбработкаЗагрузки (LoadProcessing)
                                                      • ОбработкаПолученияОписания (GetDescriptionProcessing)
                                                      • ОбработкаСохранения (SaveProcessing)
                                                      • ОбработкаУстановкиОписания (SetDescriptionProcessing)

                                                      Описание: Объект, предоставляющий доступ к хранилищу настроек определенного типа.

                                                      Доступность: клиент, сервер, внешнее соединение.

                                                      См. также: ХранилищаНастроекМенеджер, свойство

                                                      ВыборНастроек (SettingsChoice)
                                                      • КлючНастроек (SettingsKey)
                                                      • На основании ключа

                                                      Описание: Содержит информацию о выбранной пользователем настройке.

                                                      Доступность: клиент, сервер, внешнее соединение, тонкий клиент, веб-клиент.

                                                      ОписаниеНастроек (SettingsDescription)
                                                      • ДополнительныеСвойства (AdditionalProperties)
                                                      • КлючНастроек (SettingsKey)
                                                      • КлючОбъекта (ObjectKey)
                                                      • Пользователь (User)
                                                      • Представление (Presentation)

                                                      Описание: Содержит информацию об описании настройки.

                                                      Доступность: клиент, сервер, внешнее соединение.

                                                      • ХранилищеНастроекМенеджер, метод ПолучитьОписание
                                                      • ХранилищеНастроекМенеджер, метод УстановитьОписание
                                                      • ХранилищеНастроекМенеджер, событие ОбработкаПолученияОписания
                                                      • ХранилищеНастроекМенеджер, событие ОбработкаУстановкиОписания
                                                      • СтандартноеХранилищеНастроекМенеджер, метод ПолучитьОписание
                                                      • СтандартноеХранилищеНастроекМенеджер, метод Сохранить
                                                      • СтандартноеХранилищеНастроекМенеджер, метод УстановитьОписание
                                                      • ХранилищеНастроекМенеджер, метод Сохранить
                                                      • ХранилищеНастроекМенеджер, событие ОбработкаСохранения
                                                      Использование форм сохранения и загрузки

                                                      В разделе описываются механизмы использования форм сохранения и загрузки.

                                                      Форма сохранения
                                                      • КлючОбъекта (ObjectKey)

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

                                                      Форма загрузки
                                                      • КлючОбъекта (ObjectKey)
                                                      • КлючТекущихНастроек (CurrentSettingsKey)
                                                      • СтандартныеНастройки (StandardSettings)

                                                      Форма, используемая для загрузки настроек.

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

                                                      Особенности использования механизма настроек

                                                      Насколько можно понять из описания, можно выделить две части механизма:

                                                      • Использование прикладных объектов хранилища настройки для сохранения/восстановления настроек
                                                      • Замена встроенных объектов на определённые в конфигурации (паттерн плагин)

                                                      Не очень понятно зачем нужен механизм переопределения стандартных хранилищ, но, наверное, можно что-то придумать. Типа контекстной чувствительности настроек.

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

                                                      • ХранилищеВариантовОтчетов
                                                      • ХранилищеНастроекДанныхФорм
                                                      • ХранилищеОбщихНастроек
                                                      • ХранилищеПользовательскихНастроекОтчетов
                                                      • ХранилищеСистемныхНастроек

                                                      Сохранение/восстановление пользовательских настроек

                                                      Вместо СохранитьЗначение: ХранилищеСистемныхНастроек.Сохранить(«РабочаяФирма», ПараметрыСеанса.РабочаяФирма); Вместо ВосстановитьЗначение: РабочаяФирма = ХранилищеСистемныхНастроек.Загрузить(«РабочаяФирма»);

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

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

                                                      Для решения этой задачи нам понадобиться:

                                                      1. хороший интернет на всех компьютерах, где идет разработка
                                                      2. компьютер, который виден из вне по белому IP

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

                                                      После установки, сам сервер хранилища в службах не появиться. Его надо зарегистрировать. Файл службы называется crserver.exe и лежит в каталоге bin .


                                                      Перед регистрацией надо определиться, в какой папке будет лежать наше хранилище. Сервер позволяет работать с несколькими хранилищами одновременно, поэтому серверу при регистрации мы указываем каталог, в котором будут лежать уже каталоги с хранилищами. Так же сервер прекрасно работает с русскими именами папок. Для дальнейшей функциональности было бы неплохо (но не обязательно), чтобы эта папка была расшарена. Например у нас есть общая папка на диске «Обмен», создадим в ней подкаталог «Хранилища».

                                                      Теперь регистрируем службу сервера хранилищ. Для этого жмем «пуск», «выполнить», набираем «cmd», жмем Enter и в командной строке пишем:
                                                      «C:\Program Files (x86)\1cv8\8.3.4.408\bin\crserver.exe» -instsrvc -d «C:\Обмен\Хранилища»

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

                                                      Тут надо убедиться, что служба запущена и что у неё стоит автозапуск. Поскольку при регистрации мы не указали пользователя, то запускается она под системной учетной записью. Это удобно, но возможно не безопасно, при необходимости исправьте это в свойствах службы.
                                                      Теперь нам надо создать хранилище. Эта процедура долгая, поэтому рекомендую делать это в локальной сети, где находится наш сервер. Создаем, его как обычно, только в строке с путём указываем не сетевую папку, а путь в следующем формате:
                                                      tcp://Server1C/ХранилищеПроекта1\

                                                      Где Server1C – имя компьютера в локальной сети. Можно указать IP адрес этого компьютера. ХранилищеПроекта1 – имя каталога для нового хранилища. После создания на сервере хранилище будет лежать в папке C:\Обмен\Хранилища\ХранилищеПроекта1 .

                                                      Хоть мы и используем сервер хранилищ, но по своей сути это та же файловая база формата 1CD и к ней можно подключиться старым способом, указав в строке подключения сетевой каталог:
                                                      \\Server1C\Обмен\Хранилища\ХранилищеПроекта1

                                                      Тут есть несколько нюансов:
                                                      1. При работе по tcp с файлом базы работает процесс запущенный относительно файла локально, что обеспечивает некую надежность. Ранее я писал, что даже из-за использования wi-fi база хранилища может посыпаться, печальный опыт был. В этом случае система становится более устойчива к сбоям в сети.
                                                      2. При работе по tcp нужны одинаковые версии релизов платформы у всех участников, при файловом общении – нет.
                                                      3. Общая папка – папка с полным доступом для всех участников. Люди запросто могут случайно (а может и не случайно) накидать туда мусора, стереть пару «не нужных» файлов, в общем нагадить.

                                                      Исходя из этих нюансов, возможно есть смысл даже внутри локальной сети в некоторых случаях разворачивать сервер хранилища.
                                                      Теперь о доступе из вне. Сервер хранилищ работает на порту 1542. Если внешний белый IP адрес указывает непосредственно на Ваш сервер, то нужно позаботиться об открытии этого порта. Если внешний IP указывает на роутер, то надо настроить проброску. В моем случае была проброска, сисадмин выдели свободный порт для этого. У меня строка подключения выглядела так:
                                                      tcp://36.21.65.20:1501/ХранилищеПроекта1\

                                                      Комфорт работы с таким хранилищем полностью зависит от скорости интернета, поэтому всякие там usb модемы в модульных помещениях (почти всех торговых центрах) – плохая практика. Если в модеме нет стабильного 3G и он постоянно переходит на GPRS, то я бы даже не стал пытаться.

                                                      Еще, на последок, расскажу об обновлении платформы. Т.к. свежая 1С 8.3 сейчас выходит часто, то это актуально. Переустанавливать платформу надо везде сразу, это и так ясно. При переустановке на сервере служба автоматом не обновиться. Если делать все по правильному, т.е. зарегистрировать приложение crserver.exe из папки bin со свежим релизом платформы, то т.к. называется служба так же, то старая служба пометится на удаление, потребуется перезагрузка сервера. Можно поступить проще. Заходим в службы, останавливаем сервер хранилищ. Смотрим в свойствах строку запуска и копируем её в буфер обмена. Лезем в редактор реестра (regedit ) и ищем в реестре эту строку. Правим в ней номер релиза (он присутсвует в имени папки). Запускаем службу обратно. Все. Если Вы накосячили, то служба у Вас не запуститься. После запуска зайдите в свойства службы и визуально убедитесь, что она стартанула из папки с новым релизом.

                                                      На сегодня все, спасибо за внимание

                                                      Настройки пользователя в 1С обычно разделены на три части.

                                                      Во-первых, платформа 1С позволяет каждому пользователю делать свои собственные настройки 1С для удобства. Например, настройки 1С отчетов СКД.

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

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

                                                      Где хранить все эти настройки в 1С?

                                                      Как настройки 1С сохраняли раньше

                                                      В толстом клиенте 1С платформа предлагала следующий стандартный вариант:

                                                      Когда требуется запомнить настройку 1С, программист использует функцию

                                                      Значение = ВосстановитьЗначение(«ИмяНастройки», Значение);

                                                      Соответственно программист создает кнопки сохранения и восстановления настроек 1С, а пользователь использует этот механизм (ну или программист сохраняет их автоматически).

                                                      В качестве значения можно использовать не только число или строку, но и например Структуру – тип, который позволяет хранить в себе множество значений с их наименованиями, например:

                                                      Настройки = Новый Структура(); Настройки.Вставить(«ИмяНастройки», Значение); Значение = Настройки.ИмяНастройки;

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

                                                      Также программист был волен разрабатывать свои произвольные методы хранения настроек 1С с использованием обычных методов – например, с помощью работы с текстовыми и XML файлами – сохранять настройки 1С произвольным образом в файл.

                                                      В типовых конфигурациях настройки 1С отчетов сохранялись в регистр сведений. А настройки 1С отчетов СКД можно сохранить в файл XML.

                                                      Стандартное хранилище настроек 1С

                                                      Все эти возможности остались и в новой платформе 8.2, но появился наконец некий «стандартный метод» сохранения настроек – Хранилище настроек 1С.

                                                      Механизм делится на две части – стандартные и пользовательские хранилища настроек 1С. Стандартное реализовано в платформе 1С, пользовательские – это объект 1С, который создает и программирует программист.

                                                      Стандартное хранилище настроек 1С используется платформой по умолчанию в тонком клиенте для сохранения настроек 1С пользователя в следующих механизмах платформы:

                                                      Командный управляемый интерфейс
                                                      Формы
                                                      Настройки и варианты отчетов.

                                                      Программист может использовать стандартное хранилище настроек 1С из кода программ на языке 1С способом, подобным тому, что был раньше:

                                                      Когда требуется запомнить настройку

                                                      Значение = ХранилищеОбщихНастроек.Загрузить(«ИмяОбъекта», «ИмяНастроек», Значение);

                                                      Чтобы получить список настроек

                                                      Настройки 1С сохраняются непосредственно в базе данных, в специальных таблицах.

                                                      Как видно, по сравнению со старым механизмом, добавился дополнительный разрез – имя объекта. Платформа, при автоматическом сохранении используется имя объекта 1С в метаданных с указанием вида, например:
                                                      Отчет.Продажи

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

                                                      Существуют следующие стандартные хранилища настроек 1С:

                                                      • ХранилищеСистемныхНастроек
                                                      • ХранилищеОбщихНастроек
                                                      • ХранилищеНастроекДанныхФорм
                                                      • ХранилищеПользовательскихНастроекОтчетов
                                                      • и ХранилищеВариантовОтчетов.

                                                      Хранилище настроек 1С.

                                                      Программист может создать собственные хранилища настроек – в конфигураторе.

                                                      Это предполагается делать в следующих случаях:

                                                      Ссылочный контроль при хранении настроек 1С
                                                      Миграция настроек 1С при использовании УРБД
                                                      Специальная структура настроек 1С (для автоматического ее соблюдения)
                                                      Переопределение стандартных хранилищ.

                                                      Для создания собственного хранилища настроек 1С – необходимо добавить таковое в конфигураторе в окне конфигурации в ветке Общие/Хранилища настроек 1С.

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

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

                                                      В тонком управляемом клиенте 1С использование хранилища возможно автоматически:

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

                                                      В отчете (в том числе внешнем), появились параметры – Хранилище вариантов (отчетов) и Хранилище настроек 1С – в них нужно выбрать созданное хранилище 1С.

                                                      В толстом клиенте для использования требуется в коде на языке 1С прописывать непосредственный вызов сохранения настроек 1С:
                                                      ХранилищаНастроек.ИмяХранилища.Сохранить();

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

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

                                                      Отправить эту статью на мою почту

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

                                                      Для того чтобы сохранить настройку отчета в 1С в обычных формах , например, 1с торговля 8 редакции 10.3 или 1с бухгалтерия 8 редакции 2.0, нужно отрыть сам отчет, далее настроить его показатели, колонки, сортировку, так как Вам удобно. Сформируйте отчет, убедитесь, что он отображается так как вам нужно.

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

                                                      В этом же окне вы можете удалить не нужные настройки.

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

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

                                                      О там как сохранять и восстанавливать настройки отчетов в управляемых формах 1с — читайте в следующих статьях.

                                                      Не секрет, что периодически, в 1С нужно чистить настройки пользователей!

                                                      т.к. в процессе обновления программы или доработки нового функционала, форма документа, отчета меняется и старые сохраненные настройки могут неверно отображаться с новым интерфейсом. Чтобы это исправить — нужно очистить старые настройки и сохранить по новой.

                                                      Тут же хранятся настройки печатных форм документов, если документ не печатается из 1С или печатается криво, то нужно очистить настройки 1C .

                                                      Обработка очистки настроек пользователя работает в 2-х режимах:

                                                      1. Выбираете пользователя — нажимаете Очистить ВСЕ настройки пользователя — у выбранного пользователя будет очищены все старые настройки, и программу будет работать и отображаться так, как это было заложено разработчиками. Этот способ помогает избавиться от проблем кроивого отображения форм в 1С.

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *