Project

Profile

Help

HostedRedmine.com has moved to the Planio platform. All logins and passwords remained the same. All users will be able to login and use Redmine just as before. *Read more...*

Bug #947616

open

8.3.21-22+ Неожиданное поведение КомпоновщикНастроекКомпоновкиДанных.Восстановить() и ПользовательскиеНастройки

Added by Сергей Старых 3 months ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
-
Sprint/Milestone:
-
Start date:
Due date:
% Done:

0%

Estimated time:

Description

https://partners.v8.1c.ru/forum/t/2072920/m/2072920
Конфигурация ПО

8.3.21

Проблема

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

Воспроизведение

Открыть приложенную внешнюю обработку в управляемом клиентском приложении любой базы. При этом будет выполнен код
ОбработкаОбъект = РеквизитФормыВЗначение("Объект");
Схема = ОбработкаОбъект.ПолучитьМакет("Схема");
Компоновщик.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(ПоместитьВоВременноеХранилище(Схема)));
Компоновщик.ЗагрузитьНастройки(Схема.НастройкиПоУмолчанию);
НедоступноеПоле = Новый ПолеКомпоновкиДанных("Хал");
ЭлементВыбора = Компоновщик.Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ЭлементВыбора.Поле = НедоступноеПоле;
ЭлементПорядка = Компоновщик.Настройки.Порядок.Элементы.Добавить(Тип("ЭлементПорядкаКомпоновкиДанных"));
ЭлементПорядка.Поле = НедоступноеПоле;
Для Каждого ГруппаНастроек Из Компоновщик.ПользовательскиеНастройки.Элементы Цикл
Если ТипЗнч(ГруппаНастроек) = Тип("ВыбранныеПоляКомпоновкиДанных") Тогда
ЭлементВыбора = ГруппаНастроек.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ЭлементВыбора.Поле = НедоступноеПоле;
КонецЕсли;
КонецЦикла;

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

Выбранные поля

В форме отобразятся обычные и пользовательские настройки по группам:

Выбранные поля
Порядок

При этом в каждой группе будет элемент с красным крестиком, ссылающийся на отсутствующее поле "Хал".
Нажать "Восстановить". При этом будет выполнен код
Компоновщик.Восстановить();

В обычной группе настроек "Порядок" сбросился признак использования у элемента с красным крестиком. Это ожиданное поведение.
Но из обычных и пользовательских настроек группы "Выбранные поля" удались элементы с красным крестиком. Это не соответствует описанию метода Восстановить() в синтакс-помощнике. Также не нашел описания этой особенности на its.1c.ru.


Files

ВнешняяОбработка1.epf (9.12 KB) ВнешняяОбработка1.epf Сергей Старых, 2022-07-17 11:43 AM
clipboard-202207171243-q3yhq.png (53 KB) clipboard-202207171243-q3yhq.png Сергей Старых, 2022-07-17 11:43 AM
clipboard-202207171243-a1jyq.png (30.1 KB) clipboard-202207171243-a1jyq.png Сергей Старых, 2022-07-17 11:43 AM
clipboard-202207171243-ech9n.png (29 KB) clipboard-202207171243-ech9n.png Сергей Старых, 2022-07-17 11:43 AM

Related issues

Related to Инструменты разработчика Tormozit для 1С - Bug #947614: В управляемой форме при загрузке некорректных пользовательских настроек списка они теперь автоматически удаляютсяClosed2015-01-01

Actions
Related to Инструменты разработчика Tormozit для 1С - Bug #948244: В управляемой форме при загрузке некорректных пользовательских настроек списка они теперь автоматически отключаютсяClosed2015-01-01

Actions
Actions #1

Updated by Сергей Старых 3 months ago

  • Related to Bug #947614: В управляемой форме при загрузке некорректных пользовательских настроек списка они теперь автоматически удаляются added
Actions #2

Updated by Сергей Старых 2 months ago

  • Related to Bug #948244: В управляемой форме при загрузке некорректных пользовательских настроек списка они теперь автоматически отключаются added

Also available in: Atom PDF