Имя: Пароль:
1C
1С v8
Отбор в динамическом списке
,
0 ildary
 
17.07.19
08:27
Уважаемые специалисты, посоветуйте пожалуйста, как найти в коде место, которое устанавливает отбор в динамическом списке? Конфигурация самописная, форма списка справочника номенклатуры, в ПриСозданииНаСервере() Список.Отбор - пустой, а там же в ПриОткрытии() - уже появляется одна строка отбора. Пробовал ловить через замер производительности - никаких посторонних вызовов с участием отбора. Глобальный поиск по названию поля отбора и проверка всех возможных мест, где его можно поменять - ничего не дал.
1 Admin_Net_1C
 
17.07.19
08:36
У какого то реквизита заполнены "Связи параметров выбора" ?
2 catena
 
17.07.19
08:36
(0)А он точно программный, а не из настроек пользователя?
3 SleepyHead
 
гуру
17.07.19
08:39
(0) В форме поставь курсор на список, смотри его свойства - отбор может быть выставлен там. Или пользовательский, как указано в (2).
4 ildary
 
17.07.19
08:42
(2) точно не настройка пользователя, потому что в Настроить список этот отбор не видно.

(3) Через Все действия-Настроить список в отборах пусто (а по факту он есть - список пустой).
5 SleepyHead
 
гуру
17.07.19
08:43
(4) открой в режиме 1с-предприятие, кнопка Еще - стандартные настройки, помогает?
6 ildary
 
17.07.19
08:48
(5) Не помогло.
7 catena
 
17.07.19
08:49
(4)А в конфигураторе в настройке формы списка?
8 ildary
 
17.07.19
08:51
(7) в конфигураторе, как и в режиме предприятия - в настройке списка отбор пустой. Он также пустой в ПриСозданииНаСервере(), а вот в ПриОткрытии() там появляется одна строка, и мне надо понять - откуда вообще она? Я конечно могу её программно очищать, но перед этим я очень хочу понять - как она вообще появилась?
9 ildary
 
17.07.19
08:54
(1) Если я правильно понял - эта штука ("Связи параметров выбора") появляется у поля-справочника, а поле, по которому делается отбор - булево.
10 catena
 
17.07.19
09:01
(9)Связь параметров выбора появляется у поля выбора. Список откуда открывается?
11 ildary
 
17.07.19
09:07
(10) список открывается автоматически из отчета на СКД (в отчете можно задать отбор по номенклатуре и для этого открывается форма Номенклатура.СписокВыбора. В самом отчёте СКД поля отбора генерируются автоматически, я на всякий случай поискал там по названию поля - ничего нет.
12 catena
 
17.07.19
09:22
(11)В настройке схемы СКД у номенклатуры проверяй в полях набора данных -> Параметры редактирования и в Параметрах -> так же, Параметры редактирования.
13 ildary
 
17.07.19
09:41
Я нашёл, что где-то в отчёте на СКД происходит обращение к полю ДоступныйПараметрКомпоновкиДанных.ПолучитьПараметрыВыбора() - откуда и берётся несчастный отбор. Осталось понять, как он туда попал.
14 catena
 
17.07.19
09:51
15 ildary
 
17.07.19
10:01
(14) там пусто, проверял в первую очередь.
16 sqr4
 
17.07.19
10:04
(0) как открываешь форму списка?
17 sqr4
 
17.07.19
10:06
(11) Прям строчку открытия формы покажи
18 ildary
 
17.07.19
10:12
(17) нет такой строки, форма списка открывается из отчета на СКД, на отчёте есть поле отбора, типа Справочник.Номенклатура.

Вот код, который гадит, но я понятия не имею, как туда попали эти данные, помогите люди добрые, зря я Хрусталёву не дочитал...

ПользовательскиеНастройкиКД = Отчет.КомпоновщикНастроек.ПользовательскиеНастройки;
НастройкиКД                 = Отчет.КомпоновщикНастроек.Настройки;

ПользовательскаяНастройка = ПользовательскиеНастройкиКД.Элементы[3]; //для упрощения понимания

Идентификатор = ПользовательскаяНастройка.ИдентификаторПользовательскойНастройки;

ОбщаяНастройка = НастройкиКД.Отбор.Элементы[0];

ДоступнаяНастройка = НастройкиКД.ДоступныеПоляОтбора.Элементы[9];

ПлохойСписокСОтбором = ДоступнаяНастройка.ПолучитьПараметрыВыбора(); //как в этот список попадают данные?
19 ildary
 
17.07.19
10:14
Код выше можно сократить до:

НастройкиКД = Отчет.КомпоновщикНастроек.Настройки;
ДоступнаяНастройка = НастройкиКД.ДоступныеПоляОтбора.Элементы[9];

ПлохойСписокСОтбором = ДоступнаяНастройка.ПолучитьПараметрыВыбора();//как в этот список попадают данные?
20 catena
 
17.07.19
10:42
(19)"Описание:
Получает параметры выбора, которые используются для выбора значения поля или параметра.
"

Пусто и в полях и в параметрах?
21 ildary
 
17.07.19
10:49
(20) да. Вот скриншот: https://imgur.com/a/cHPEwOd
22 ildary
 
17.07.19
10:51
(20) а в параметрах где вообще можно поменять? Там только левое значение, правое, вид сравнения, режим отображения и представление (плюс показ в быстрых настройках)?
23 DrWatson
 
17.07.19
10:55
(19) ДоступнаяНастройка.Поле - это точно Номенклатура. Может сбилось уже и он берет параметры другого поля.
(22) В схеме закладка Параметры.
24 ildary
 
17.07.19
10:57
(23) в параметрах нет номенклатуры. Она есть в отборах.
25 DrWatson
 
17.07.19
11:01
(24) Ты зачем мне это пишешь? Спросил где посмотреть параметры выбора для параметров, я ответил.
26 ildary
 
17.07.19
11:02
(25) простите, неправильно вас понял.
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс