|
Управляемая форма списка регистра накопления, как изменить отбор по Регистратору?
| ☑ |
0
pvase
28.01.19
✎
17:28
|
При открытии формы списка регистров накопления из документа открывается автоматически с отбором по регистратору. Как пользователю отключить этот отбор?
Почему возник такой вопрос, потому что в неуправляемой форме такой отбор легко отключить, после переделки формы регистра на управляемую форму не понятно как отключить этот отбор.
|
|
1
Вафель
28.01.19
✎
17:40
|
делай пользовательский отбор, а не фиксированный
|
|
2
PiotrLoginov
28.01.19
✎
17:40
|
(0) Если программист не предусмотрел в "форме списка регистров" некую "кнопку отключения отбора", то никак.
|
|
3
pvase
30.01.19
✎
10:46
|
Спасибо, переделал. Если кому интересно, вот код:
&НаКлиенте
Процедура ПриОткрытии(Отказ)
Для Каждого ЗначОтбор Из ЭтаФорма.Список.КомпоновщикНастроек.ФиксированныеНастройки.Отбор.Элементы Цикл
Если ЗначОтбор.ЛевоеЗначение = ЭтаФорма.Список.КомпоновщикНастроек.ФиксированныеНастройки.Отбор.ДоступныеПоляОтбора.Элементы.Найти("Регистратор").Поле Тогда
ФлПереопределили = Ложь;
Для Каждого ЗначОтборПольз Из ЭтаФорма.Список.КомпоновщикНастроек.ПользовательскиеНастройки.Элементы[0].Элементы Цикл
Если ЗначОтборПольз.ЛевоеЗначение = ЗначОтбор.ЛевоеЗначение Тогда
ЗначОтборПольз.Использование = Истина;
ЗначОтборПольз.ПравоеЗначение = ЗначОтбор.ПравоеЗначение;
ФлПереопределили = Истина;
//ЭтаФорма.Список.КомпоновщикНастроек.ПользовательскиеНастройки.Элементы[0].Элементы[1]
КонецЕсли;
КонецЦикла;
Если НЕ ФлПереопределили Тогда
НоваяСтр = ЭтаФорма.Список.КомпоновщикНастроек.ПользовательскиеНастройки.Элементы[0].Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЗаполнитьЗначенияСвойств(НоваяСтр,ЗначОтбор);
НоваяСтр.ИдентификаторПользовательскойНастройки = Новый УникальныйИдентификатор();
КонецЕсли;
ЗначОтбор.Использование = Ложь;
Иначе
// Другие поля просто заполним
КонецЕсли;
КонецЦикла;
КонецПроцедуры
|
|