Имя: Пароль:
1C
 
Нет нужного реквизита на форме в режиме конфигуратора
0 falselight
 
22.11.19
08:20
Из табличной части документа открывается форма обработки РаботаСФайлами. Как то через справочник.
В режиме конфигуратора, эта форма такая http://joxi.ru/LmGbQ18Cwav7Mr

В режиме предприятия форма такая http://joxi.ru/E2p654Vc73wR9r

Я хочу открыть эту форму с установленным флагом. Но не пойму от куда мне получить этот реквизит расширение.
1 vicof
 
22.11.19
08:24
А что ты сделал для того, чтобы самому разобраться в проблеме?
2 unbred
 
22.11.19
08:26
(1) это лишнее звено. гуглом только идиоты пользуются. миста forever
3 falselight
 
22.11.19
08:27
(2) Я лажу не переставая по коду перебирая объекты и код
пытаюсь разобраться, не нашел ответа, по этому спросил тут
но я сам продолжаю поиск, в надежде его найти, так как мне нужно решшить вопрос
4 unbred
 
22.11.19
08:29
(3) чувак, тебе автор вот этого: как найти реквизит на форме никого не напоминает?
5 seevkik
 
22.11.19
08:32
(4) дело ливингстара живет
6 seevkik
 
22.11.19
09:04
Ладно, даю жирнющую подскаску "Настроить список"
7 falselight
 
22.11.19
09:15
(6) что это и где?
8 hhhh
 
22.11.19
09:52
(3) ты в конфигураторе не то окошко смотришь. Надо верхнее, а ты нижнее смотришь.
9 falselight
 
22.11.19
11:08
(8) Нет ничего в верхнем.
Как мне установить значение расширения в истина, что бы галка была не понятно.
10 palsergeich
 
22.11.19
11:18
Вот почему мне кажется что это 2 разные формы?
Такое очучение что одна - это форма выбора, а вторая - списка
11 falselight
 
22.11.19
11:23
(10) там сделано так что, у справочника вообще нет формы, а у обработки их много,
вы вызывается именно эта
12 seevkik
 
22.11.19
11:31
13 hhhh
 
22.11.19
11:34
(9) скрины давай
14 falselight
 
22.11.19
11:39
15 shadow_sw
 
22.11.19
11:41
(5) скажу больше - тс он и есть ;)
16 hhhh
 
22.11.19
11:47
(14) ну ведь дохера там в верхнем окошке, что же говоришь что ничего нет. Иди методично по элементам сверху вниз, ничего не пропуская, и время от времени выкладывая скрины, и наткнешься.
17 seevkik
 
22.11.19
11:53
(16) Ты его троллишь или что?
18 hhhh
 
22.11.19
11:55
(14) скрин заканчивается на "закончить редактирование", это в верхней строчке кнопок, еще не доходя до расширения. Поэтому тебе имеет смысл листануть на страницу вниз, и опять выложить скрин.
19 falselight
 
22.11.19
11:55
(16) Я имел ввиду, что в этом окошке нет ничего что нужно, а конкретно вот этого http://joxi.ru/GrqW64zi4ZJXO2
20 seevkik
 
22.11.19
11:56
21 hhhh
 
22.11.19
11:57
(19) еще раз, листани вниз. Кнопка Page Down есть на клавиатуре? Или мышкой попробуй продвинуться вниз по списку.
22 seevkik
 
22.11.19
11:58
4 часа...
Ты на почасовке?
23 falselight
 
22.11.19
12:12
(21) Я же уже проходится там. И (19) не увидел.
24 hhhh
 
22.11.19
12:17
(23) ну и чего, нашел?
25 falselight
 
22.11.19
12:26
вроде как открывается должен вот этот справочник, его форма, и вот это расширение
но у этого справочника нет форм вообще!
26 falselight
 
22.11.19
12:26
(24) Я иду по коду пытаюсь понять что откроется с такой формой.
28 falselight
 
22.11.19
12:35
похоже это форма справочника но генерируется она автоматически
29 falselight
 
22.11.19
12:36
(28) хотя возможно и нет, так как справочник не имеет ни одной табличной части
30 hhhh
 
22.11.19
12:41
(26) не по коду иди, иди по элементам формы, читая все названия элементов.
31 maxkras26
 
22.11.19
12:44
(4) Жесть 3 года прошло.

Покажи строчку кода откуда эта форма открывается. Раз ты её нашел.
32 falselight
 
22.11.19
14:48
(31) Там она много раз переоткрывается. Пока до меня не дошло.
33 falselight
 
26.11.19
10:17
(31)

    СтандартнаяОбработка = Ложь;
    ПараметрыВыбораФормы = Новый Структура;
    ПараметрыВыбораФормы.Вставить("РежимВыбора", Истина);
    СтруктураОтбора = Новый Структура;
    СтруктураОтбора.Вставить("ВладелецФайла", Объект.Ссылка);
    ПараметрыВыбораФормы.Вставить("ВладелецФайла", Объект.Ссылка);
    ПараметрыВыбораФормы.Вставить("ПараметрыВыбора", СтруктураОтбора);
    ПараметрыВыбораФормы.Вставить("ЗначенияЗаполнения", СтруктураОтбора);
    ПараметрыВыбораФормы.Вставить("Ключ", Объект.Ссылка);
    ОткрытьФорму("Справочник.ПрисоединенныеФайлы.ФормаСписка", ПараметрыВыбораФормы, Элементы.ФайлыПоНарушениямФайлНарушения);    
    //--
КонецПроцедуры

Вот первоначальное открытие.

Потом переход вот сюда

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


после вот это в другом общем модуле

    РаботаСФайлами.ОпределитьФормуПрисоединенногоФайла(Источник,
        ВидФормы,
        Параметры,
        ВыбраннаяФорма,
        ДополнительнаяИнформация,
        СтандартнаяОбработка);
        
КонецПроцедуры

затем переходит вот сюда

            ВыбраннаяФорма = "Обработка.РаботаСФайлами.Форма.ПрисоединенныеФайлы";
34 falselight
 
26.11.19
10:20
ЗатемЮ ещё после нескольких переходов, переходит в Обработку РаботаСФайлами

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)


В форму Присоединенные файлы. Где мне нужно установить галку. Но визуально её нет на форме.
35 falselight
 
26.11.19
10:54
Найти эту форму не получается, точнее галку

http://joxi.ru/krDbeX8CKDR552
36 pechkin
 
26.11.19
11:16
а точно это одна и таже форма?
точка останова срабатывает?
37 falselight
 
26.11.19
11:22
(36) Точка останова где???? Я прохожу по коду и все. Там разные всякие алгоритмы.
Но где мне программно задавать и обрабатывать значения галки и эжтого поля на форме что около галки не понятно.
38 falselight
 
26.11.19
11:24
http://joxi.ru/J2bkE89H093zbA

открыть эту форму в режиме предприятия не получается, только из документа, табличной части
39 dmpl
 
26.11.19
11:28
Можно воспользоваться глобальным поиском.
40 Жан Пердежон
 
26.11.19
11:29
(0) На отбор похоже; если так, то в конфе смысла искать нет
41 falselight
 
26.11.19
11:29
(39) Что именно искать? Я пробовал, загшоловок формы задается программно в её же форме
42 falselight
 
26.11.19
11:30
(40) А где искать тогда нужно?
43 falselight
 
26.11.19
11:31
(40) Хотелось бы программно задавать значение галки и поля что у галки, и обрабатывать их соответствующе.
При открытии.
44 dmpl
 
26.11.19
11:33
(41) Что тебе надо - то и ищи. Все галки поставь - тогда найдет везде где есть.
45 falselight
 
26.11.19
11:35
есть старая копия конфигурации, там открывается такая форма, без галки http://joxi.ru/KAgN94ktE8opo2

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

Нужно их заполнять и обрабатывать программно при открытии.
46 falselight
 
26.11.19
11:37
(44) Я и ищу что нужно мне, галку и поле что в заголовке формы. Но найти не могу.
Можно её только ставить в режиме предприятия. Повторное открытие открывает её, установленной или снятой как это было задано в последний раз.
47 falselight
 
26.11.19
11:41
В режиме предприятия в ещё, настройки, настроить список, обнаружил это

http://joxi.ru/BA08ePMCMEgg9A

http://joxi.ru/E2p654Vc73KdLr

Как это задавать и обрабатывать программно?
48 falselight
 
26.11.19
11:44
Но 2 расширения уже не обрабатываются

http://joxi.ru/52ax078UE16GQm
49 dmpl
 
26.11.19
11:52
(48) Они обрабатываются. По условию И.
50 falselight
 
26.11.19
11:54
(49) А по или как задать?
Или как их менять программно?
Уву я понимаю в табличную часть, список выводится все вот этим запросом. Но где ему задаются эти отборы программно, что бы делать их самому программно при открытии?


&НаСервере
Процедура НастроитьДинамическийСписок(ИмяСправочникаХранилищаФайлов, Знач ЕстьРеквизитСлужебный = Ложь)
    
    СвойстваСписка = ОбщегоНазначения.СтруктураСвойствДинамическогоСписка();
    
    ТекстЗапроса =
    "ВЫБРАТЬ
    |    Файлы.Ссылка КАК Ссылка,
    |    Файлы.ПометкаУдаления,
    |    ВЫБОР
    |        КОГДА Файлы.ПометкаУдаления = ИСТИНА
    |            ТОГДА ЕСТЬNULL(Файлы.ИндексКартинки, 2) + 1
    |        ИНАЧЕ ЕСТЬNULL(Файлы.ИндексКартинки, 2)
    |    КОНЕЦ КАК ИндексКартинки,
    |    Файлы.Наименование КАК Наименование,
    |    ВЫРАЗИТЬ(Файлы.Описание КАК СТРОКА(500)) КАК Описание,
    |    Файлы.Автор,
    |    Файлы.ДатаСоздания,
    |    Файлы.Изменил КАК Отредактировал,
    |    ДОБАВИТЬКДАТЕ(Файлы.ДатаМодификацииУниверсальная, СЕКУНДА, &СекундДоМестногоВремени) КАК ДатаИзменения,
    |    ВЫРАЗИТЬ(Файлы.Размер / 1024 КАК ЧИСЛО(10, 0)) КАК Размер,
    |    Файлы.ПодписанЭП,
    |    Файлы.Зашифрован,
    |    ВЫБОР
    |        КОГДА Файлы.ПодписанЭП
    |                И Файлы.Зашифрован
    |            ТОГДА 2
    |        КОГДА Файлы.Зашифрован
    |            ТОГДА 1
    |        КОГДА Файлы.ПодписанЭП
    |            ТОГДА 0
    |        ИНАЧЕ -1
    |    КОНЕЦ КАК НомерКартинкиПодписанЗашифрован,
    |    ВЫБОР
    |        КОГДА НЕ Файлы.Редактирует В (&ПустыеПользователи)
    |            ТОГДА ИСТИНА
    |        ИНАЧЕ ЛОЖЬ
    |    КОНЕЦ КАК ФайлРедактируется,
    |    ВЫБОР
    |        КОГДА Файлы.Редактирует = &ТекущийПользователь
    |            ТОГДА ИСТИНА
    |        ИНАЧЕ ЛОЖЬ
    |    КОНЕЦ КАК ФайлРедактируетТекущийПользователь,
    |    ВЫБОР
    |        КОГДА НЕ Файлы.Редактирует В (&ПустыеПользователи)
    |                И Файлы.Редактирует <> &ТекущийПользователь
    |            ТОГДА ИСТИНА
    |        ИНАЧЕ ЛОЖЬ
    |    КОНЕЦ КАК ФайлРедактируетДругойПользователь,
    |    Файлы.Расширение КАК Расширение,
    |    ВЫБОР
    |        КОГДА СтатусыСинхронизацииФайловСОблачнымСервисом.УчетнаяЗапись <> НЕОПРЕДЕЛЕНО
    |                И Файлы.Редактирует = НЕОПРЕДЕЛЕНО
    |            ТОГДА СтатусыСинхронизацииФайловСОблачнымСервисом.УчетнаяЗапись
    |        ИНАЧЕ Файлы.Редактирует
    |    КОНЕЦ КАК Редактирует,
    |    Файлы.Редактирует КАК РедактируетПользователь,
    |    &ЭтоГруппа КАК ЭтоГруппа,
    |    &Служебный КАК Служебный,
    |    Файлы.ВладелецФайла КАК ВладелецФайла,
    |    Файлы.ХранитьВерсии КАК ХранитьВерсии
    |ИЗ
    |    &ИмяСправочника КАК Файлы
    |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СтатусыСинхронизацииФайловСОблачнымСервисом КАК СтатусыСинхронизацииФайловСОблачнымСервисом
    |        ПО Файлы.Ссылка = СтатусыСинхронизацииФайловСОблачнымСервисом.Файл
    |ГДЕ
    |    Файлы.ВладелецФайла = &ВладелецФайлов";
    
    ПолноеИмяСправочника = "Справочник." + ИмяСправочникаХранилищаФайлов;
    ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ИмяСправочника", ПолноеИмяСправочника);
    ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&Служебный", ?(ЕстьРеквизитСлужебный, "Файлы.Служебный", "ЛОЖЬ"));
    
    СвойстваСписка.ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ЭтоГруппа",
        ?(ВозможностьСоздаватьГруппыФайлов, "Файлы.ЭтоГруппа", "ЛОЖЬ"));
        
    СвойстваСписка.ОсновнаяТаблица  = ПолноеИмяСправочника;
    СвойстваСписка.ДинамическоеСчитываниеДанных = Истина;
    ОбщегоНазначения.УстановитьСвойстваДинамическогоСписка(Элементы.Список, СвойстваСписка);
    
    ПустыеПользователи = Новый Массив;
    ПустыеПользователи.Добавить(Неопределено);
    ПустыеПользователи.Добавить(Справочники.Пользователи.ПустаяСсылка());
    ПустыеПользователи.Добавить(Справочники.ВнешниеПользователи.ПустаяСсылка());
    ПустыеПользователи.Добавить(Справочники.УчетныеЗаписиСинхронизацииФайлов.ПустаяСсылка());
    
    Список.Параметры.УстановитьЗначениеПараметра("ВладелецФайлов",      Параметры.ВладелецФайла);
    Список.Параметры.УстановитьЗначениеПараметра("ТекущийПользователь", Пользователи.АвторизованныйПользователь());
    Список.Параметры.УстановитьЗначениеПараметра("ПустыеПользователи",  ПустыеПользователи);
    
    ДатаУниверсальная = ТекущаяДатаСеанса();
    Список.Параметры.УстановитьЗначениеПараметра("СекундДоМестногоВремени",
        МестноеВремя(ДатаУниверсальная, ЧасовойПоясСеанса()) - ДатаУниверсальная);
    
КонецПроцедуры
51 dmpl
 
26.11.19
11:57
(50) Ну сгруппируй элементы в группу Или.
52 dmpl
 
26.11.19
11:58
И смотри свойство Отбор у динамического списка.
53 Windyhead
 
26.11.19
12:02
(50) Гугли работу с динамическими списками
Как работать программно:  Для ленивых есть в БСП модуль "ОбщегоНазначенияКлиентСервер" в нем найдешь #Область ДинамическийСписок и изучай
54 falselight
 
26.11.19
12:17
Понял, то есть так http://joxi.ru/gmvaZ43tq4pERr

Форма это та, и все отборы создаются в режиме предприятия. В конфигураторе это не найти.

А как программно тут (50) это задать?

(53) Сейчас посмотрю. Не знаю что такое для ленивых.
55 falselight
 
26.11.19
12:21
Хотелось бы программно сделать. Учитывая что запрос для динамического списка формируется тоже программно.
56 falselight
 
26.11.19
12:30
Подскажите пожалуйста кодом, как создать имитацию вот этого http://joxi.ru/nAyO34BugEOzDm

программно, для (50) ?
57 falselight
 
26.11.19
12:32
что то типа вот этого да?

ГруппаОтбор = Список.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаОтбор.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИЛИ;

Отбор = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
Отбор.Родитель = ГруппаОтбор;
Отбор.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Наименование");
Отбор.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
Отбор.Использование = Истина;
Отбор.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
ЭлементОтбора.ПравоеЗначение = "000000001";

Отбор = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
Отбор.Родитель = ГруппаОтбор;
Отбор.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Наименование");
Отбор.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
Отбор.Использование = Истина;
Отбор.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
ЭлементОтбора.ПравоеЗначение = "000000002";
58 falselight
 
26.11.19
12:36
Это (57) пряв в процедуре (50) писать?
59 vicof
 
26.11.19
13:25
(58) Не пиши
60 pechkin
 
26.11.19
13:27
в типовых есть спец процедура общего модуля для установки отборов
61 pechkin
 
26.11.19
13:27
(57) лучше делать расширение в списке
62 falselight
 
27.11.19
05:02
(61) Понял. В списке это и будет правильно. Мне нужно создать список, со всеми необходимыми расширениями, и передать в программный отбор?
63 seevkik
 
27.11.19
05:48
(62) Ты разобрался почему "В режиме предприятия форма такая http://joxi.ru/E2p654Vc73wR9r "? Хотя бы мысли есть?
64 falselight
 
27.11.19
06:19
(63) Да. Потому что у этой формы выбора файла, в режиме предприятия, по Ещё->Настройки->Настроить список

задан пользовательский отбор.
65 falselight
 
27.11.19
06:22
(64+) Он и выводится в режиме предприятия. И этого нет в режиме конфигуратора.

В режиме конфигуратора там есть то что сам динамический список не тот что задан у списка.
А формируется в коде.

Теперь у меня задача, там ему и задать программный отбор, расширение в список необходимых расширений. Как я понимаю.
66 seevkik
 
27.11.19
11:30
О, (6) прочитал?)
По-моему в (61) имел в виду расширения конфигурации, а не расширение файла в присоединенных файлах
Если ты ничего не слышал про расширения конфигурации, то нажми на https://google.gik-team.com/?q=1с+расширения+конфигурации
Добавление расширения, по сравнению с изменением конфигурации, хорош тем, что конфигурацию не обязательно снимать с замка, и, в теории обновления легче

То, что ты описал в (57), примерно верно, копай в том направлении

"В режиме конфигуратора там есть то что сам динамический список не тот что задан у списка.
А формируется в коде. "

Тебе без разницы как там формируется динамический список, тебе просто после его формирования надо добавить отбор
67 falselight
 
27.11.19
11:42
(66) Спасибо, это все понятно как правильно сделать отбор программно?

Вот в этом примере, ЭлементОтбора это что?



ГруппаОтбор = Список.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаОтбор.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИЛИ;

Отбор = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
Отбор.Родитель = ГруппаОтбор;
Отбор.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Наименование");
Отбор.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
Отбор.Использование = Истина;
Отбор.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
ЭлементОтбора.ПравоеЗначение = "000000001";
68 pechkin
 
27.11.19
11:44
(66) нет не имел
69 hhhh
 
27.11.19
11:48
(67) реально там Наименование = "000000001"    ???
70 falselight
 
27.11.19
12:05
(69) Это я пример кода взял поиском, буду сейчас свое делать, но ругается на ЭлементОтбора, так как он по коду не определен, я и спросил
71 falselight
 
27.11.19
12:27
Так нормально?

    // расширения изображений
    СписокРасширенийИзображений = Новый СписокЗначений;
    СписокРасширенийИзображений.Добавить("png");
    СписокРасширенийИзображений.Добавить("jpg");
    СписокРасширенийИзображений.Добавить("jpeg");
    СписокРасширенийИзображений.Добавить("jpe");
    СписокРасширенийИзображений.Добавить("gif");
    СписокРасширенийИзображений.Добавить("bmp");
    СписокРасширенийИзображений.Добавить("tiff");
    СписокРасширенийИзображений.Добавить("psd");
    //
    Отбор                  = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    //Отбор.Родитель         = ГруппаОтбор;
    Отбор.ЛевоеЗначение    = Новый ПолеКомпоновкиДанных("Расширение");
    Отбор.ВидСравнения     = ВидСравненияКомпоновкиДанных.ВСписке;
    Отбор.Использование    = Истина;
    Отбор.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
    Отбор.ПравоеЗначение   = СписокРасширенийИзображений;
72 vicof
 
27.11.19
12:29
(71) Блеать, это ты не у нас должен спрашивать, а у заказчика.
73 falselight
 
27.11.19
12:32
вышло такое сообщение, нужно предыдущие отборы отменять наверное, из за этого, как это сделать?

http://joxi.ru/RmznO4eiYBGD4m
74 pechkin
 
27.11.19
12:32
нужно еще
Отбор.ИдентификаторПользовательскойнастройки = "ххх"
чтобы отбор был виден
75 falselight
 
27.11.19
12:38
(74) Я отключил отбор, но все равно идет ошибка (73)
76 falselight
 
27.11.19
12:39
(75+)

    Список.Отбор.Элементы.Очистить();
    //
    Отбор                  = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    //Отбор.Родитель         = ГруппаОтбор;
77 falselight
 
27.11.19
12:39
(76+) Почему идет конфликт с пользовательским ранее заданным отбором?
78 hhhh
 
27.11.19
12:42
(77) ну ты проверяй сначала, если уже есть такой отбор, то его и используй. Тогда не нужно Отбор.Добавить()
79 falselight
 
27.11.19
12:42
(78) Я программно задаю отбор для одного места, если что то есть отключить нужно, подскажите как ?
80 hhhh
 
27.11.19
12:44
(79) не нужно есть отключить, я такого не писал
81 pechkin
 
27.11.19
12:47
(78) пользовательский отбор по простому не проверишь
82 hhhh
 
27.11.19
12:50
(81) чегго это вдруг? ПользовательскиеНастройки доступны, там есть Элементы, можно проверить, хотя бы в цикле пройтись. Я, помню, что-то такое делал года 3 назад. Свои периоды там вставлял.
83 falselight
 
27.11.19
12:57
Вот такой код, -

    СписокРасширенийИзображений = Новый СписокЗначений;
    СписокРасширенийИзображений.Добавить("png");
    СписокРасширенийИзображений.Добавить("jpg");
    СписокРасширенийИзображений.Добавить("jpeg");
    СписокРасширенийИзображений.Добавить("jpe");
    СписокРасширенийИзображений.Добавить("gif");
    СписокРасширенийИзображений.Добавить("bmp");
    СписокРасширенийИзображений.Добавить("tiff");
    СписокРасширенийИзображений.Добавить("psd");
    //
    Список.Отбор.Элементы.Очистить();
    //
    Отбор                  = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    //Отбор.Родитель         = ГруппаОтбор;
    Отбор.ЛевоеЗначение    = Новый ПолеКомпоновкиДанных("Расширение");
    Отбор.ВидСравнения     = ВидСравненияКомпоновкиДанных.ВСписке;
    Отбор.Использование    = Истина;
    Отбор.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
    Отбор.ПравоеЗначение   = СписокРасширенийИзображений;
    Отбор.ИдентификаторПользовательскойнастройки = "Основная";    



Не знаю как вот это работает, но ошибки вроде не выдает.


Но в настройках не видно этого отбора, почему? http://joxi.ru/12MbKqBClaX3VA
84 falselight
 
27.11.19
12:59
Подскажите все ли тут нормально => (83)
85 catena
 
27.11.19
13:02
А если добавить
    Отбор.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Обычный;
?
86 falselight
 
27.11.19
13:57
(85) Понят попробую. А то блок кода примера использую.
87 falselight
 
27.11.19
14:16
(85) В настройках все равно не видно заданного списка программно.

    СписокРасширенийИзображений = Новый СписокЗначений;
    СписокРасширенийИзображений.Добавить("png");
    СписокРасширенийИзображений.Добавить("jpg");
    СписокРасширенийИзображений.Добавить("jpeg");
    СписокРасширенийИзображений.Добавить("jpe");
    СписокРасширенийИзображений.Добавить("gif");
    СписокРасширенийИзображений.Добавить("bmp");
    СписокРасширенийИзображений.Добавить("tiff");
    СписокРасширенийИзображений.Добавить("psd");
    //
    Список.Отбор.Элементы.Очистить();
    //
    Отбор                  = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    //Отбор.Родитель         = ГруппаОтбор;
    Отбор.ЛевоеЗначение    = Новый ПолеКомпоновкиДанных("Расширение");
    Отбор.ВидСравнения     = ВидСравненияКомпоновкиДанных.ВСписке;
    Отбор.Использование    = Истина;
    Отбор.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Обычный;
    Отбор.ПравоеЗначение   = СписокРасширенийИзображений;
    Отбор.ИдентификаторПользовательскойнастройки = "Основная";    



Верно ли то что я не задаю Отбор.Родитель?

И этот программный отбор работает, только не видим визуально?
88 falselight
 
27.11.19
16:02
Если я отключаю вот этот отбор, то при открытии в форме показываются все файлы.
С его включением, я вижу только файлы загруженных изображений.
То есть он все же работает? Не смотря на то что его нет визуально в настройках?

    СписокРасширенийИзображений = Новый СписокЗначений;
    СписокРасширенийИзображений.Добавить("png");
    СписокРасширенийИзображений.Добавить("jpg");
    СписокРасширенийИзображений.Добавить("jpeg");
    СписокРасширенийИзображений.Добавить("jpe");
    СписокРасширенийИзображений.Добавить("gif");
    СписокРасширенийИзображений.Добавить("bmp");
    СписокРасширенийИзображений.Добавить("tiff");
    СписокРасширенийИзображений.Добавить("psd");
    //
    Список.Отбор.Элементы.Очистить();
    //
    Отбор                  = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    //Отбор.Родитель         = ГруппаОтбор;
    Отбор.ЛевоеЗначение    = Новый ПолеКомпоновкиДанных("Расширение");
    Отбор.ВидСравнения     = ВидСравненияКомпоновкиДанных.ВСписке;
    Отбор.Использование    = Истина;
    Отбор.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Обычный;
    Отбор.ПравоеЗначение   = СписокРасширенийИзображений;
    Отбор.ИдентификаторПользовательскойнастройки = "Основная";
89 falselight
 
28.11.19
05:23
(88+) Подскажите пожалуйста, почему программно созданный отбор не отображается визуально в настройках режима предприятия?
90 falselight
 
28.11.19
05:39
Вопрос. Если на форме выбора файла установлен отбор пользователя http://joxi.ru/52ax078UEjxR1m.
То при выполнении кода (88) выходит ошибка http://joxi.ru/8AnQDeGsz3xaD2

Я же его очищаю Список.Отбор.Элементы.Очистить();

Почему это не срабатывает? Что я не так делаю?
91 falselight
 
28.11.19
05:49
Этот код показывает что отбора там нет

        Поле = Новый ПолеКомпоновкиДанных("Расширение");
        Для каждого ЭлементОтбора Из Список.Отбор.Элементы Цикл
            Если ЭлементОтбора.ЛевоеЗначение = Поле Тогда
                ЭлементДляУдаления = ЭлементОтбора;
            КонецЕсли;
        КонецЦикла;
        Список.Отбор.Элементы.Удалить(ЭлементДляУдаления);
92 falselight
 
28.11.19
05:54
93 falselight
 
28.11.19
06:51
up
94 falselight
 
28.11.19
07:11
Если делаю так, то отбор вообще не задается

ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(Список,
                                           "Расширение",
                                           СписокРасширенийИзображений,
                                           ВидСравненияКомпоновкиДанных.ВСписке,
                                           Неопределено,
                                           Истина,
                                           РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Обычный,
                                           "Основная");
95 falselight
 
28.11.19
07:16
Подскажите как мне удалить пользовательский отбор что виден на форме программно?!
96 falselight
 
28.11.19
07:33
Это тоже ничего не дало

        ОбщегоНазначенияКлиентСервер.УдалитьЭлементыГруппыОтбораДинамическогоСписка(Список, "Расширение", Неопределено);
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(Список,
                                           "Расширение",
                                           СписокРасширенийИзображений,
                                           ВидСравненияКомпоновкиДанных.ВСписке,
                                           Неопределено,
                                           Истина,
                                           РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Обычный,
                                           "Основная");
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс