Имя: Пароль:
1C
1С v8
Как убрать элементы с пометкой на удаление при открытии формы выбора групп?
,
0 kozhem1990
 
17.11.16
11:31
Имеется справочник Продукция, у него иерархия групп и элементов. Создаю новую продукцию, выбираю родителя, и при открытии формы выбора групп, в списке видны помеченные на удаление группы. Пробовал открывать программно, передавая параметр - не работает; пробовал через стандартные настройки "ПараметрыВыбора" реквизита Родитель - не работает. Помогите пожалуйста, кто сталкивался с такой проблемой. Код, которым вызывал форму:

&НаКлиенте
Процедура РодительНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
    СтандартнаяОбработка = Ложь;
    ОтборФормы = Новый Структура;
    ОтборФормы.Вставить("ПометкаУдаления", Ложь);
    ОтборФормы.Вставить("ТекущаяСтрока", Объект.Родитель);
    ПараметрыФормы = Новый Структура;
    ПараметрыФормы.Вставить("Отбор", ОтборФормы);
    ПолученнаяФорма = ПолучитьФорму("Справочник.Продукция.Форма.ФормаВыбораГруппыУправляемая", ПараметрыФормы, ЭтаФорма);
    ПолученнаяФорма.Элементы.Список.РежимВыделения = РежимВыделенияТаблицы.Одиночный;
    Результат = ПолученнаяФорма.ОткрытьМодально();
    Если Результат = Неопределено Тогда
        Возврат;
    Иначе
        ЗаполнитьРодителяНаСервере(Результат);
    КонецЕсли;
КонецПроцедуры
1 kumena
 
17.11.16
11:51
ФормаВыбора.СправочникСписок.Отбор.Установить("ПометкаУдаления", Ложь);
2 kumena
 
17.11.16
11:52
а если формы управляемые, то в модуле  менеджера справочника можно отбор прописать, он на все формы сразу работать будет.
3 kumena
 
17.11.16
11:52
+2 но это вроде бы только для 8.3
4 kozhem1990
 
17.11.16
12:36
Что-то не работает ни одно из этого:

ПолученнаяФорма.СправочникСписок.Отбор.Установить("ПометкаУдаления", Ложь);

ПолученнаяФорма.Список.Отбор.Установить("ПометкаУдаления", Ложь);

ПолученнаяФорма.Элементы.Отбор.Установить("ПометкаУдаления", Ложь);

Может в самой системе так сделано, что и не обойти никак...
5 olegves
 
17.11.16
12:41
(1) при СтандартнаяОбработка=ложь это не будет работать
6 kozhem1990
 
17.11.16
12:41
Пробовал в самой форме динамический список через произвольный запрос с условием - всеравно выводит помеченные...
7 Мимохожий Однако
 
17.11.16
12:43
проще у помеченных впереди написать яяя и они будут внизу списка болтаться. Еще лет 20 назад применял на первых 1С-ках. Дёшево и сердито.
8 kozhem1990
 
17.11.16
12:43
я понимаю, но всеравно ошибка: не находит метод установить.

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

Но  всеравно спасибо большое. Странно, что на форумах нет этой темы, что помеченные группы, в любом справочнике всеравно остаются видимыми...
9 olegves
 
17.11.16
12:45
(0) убери свою процедуру и используй Связи параметров Выбора для элемента, из которого открываешь
10 Мимохожий Однако
 
17.11.16
12:46
А ты заводи новый элемент изнутри родителя...
11 kozhem1990
 
17.11.16
12:58
9 не знаю как связи делать с чем, если можно, чуть подробнее, пожалуйста. Я делал через ПараметрыВыбора - и всеравно пропускает, а при вызове процедуры ПриСозданииНаСервере в отборе пропадает ПометкаУдаления = Ложь, остается только ЭтоГруппа = Истина.

10 не понял, что значит изнутри?

Вообще скорее всего, это механизм платформы потому, что когда отображение дерево, то группы помеченные видны, а когда списком - не видны...
12 Мимохожий Однако
 
17.11.16
13:37
(11) Открываешь папку (родителя), создать новый элемент. При открытии в нём уже есть текущий родитель.
13 kozhem1990
 
17.11.16
13:49
(12) понял, но пользователи-то не такие аккуратные, могут и с нуля создавать...
14 kozhem1990
 
17.11.16
13:51
(12) всеравно, при изменении группы у уже созданной продукции нужно открывать форму выбора групп
15 kozhem1990
 
17.11.16
13:52
Ладно, я думаю можно закрывать тему, это не решаемо, либо слишком мудрено для меня) Большое спасибо всем за помощь))