|
Поле отбора в скд | ☑ | ||
---|---|---|---|---|
0
Mst
18.03.20
✎
19:59
|
Всем привет. Есть отчёт на скд где одна из группировок - строка. Нужно сделать ее в отборе со своим списком выбора или формой выбора. Набор возможных значений ограничен и хранится в таблице значений.Не понимаю как это сделать правильно
|
|||
1
Ns33
18.03.20
✎
20:19
|
Не в отбор а в параметры.
ВЫБРАТЬ Номенклатура.Ссылка ИЗ Справочник.Номенклатура КАК Номенклатура {ГДЕ (Номенклатура.РеквизитСтрока = (&СпСтрок))} В параметрах для СпСтрок устанавливаешь доступные значения. |
|||
2
Mst
19.03.20
✎
10:15
|
Спасибо, похоже то что надо
|
|||
3
Mst
20.03.20
✎
00:13
|
Что-то не получается заполнить возможными значениями список выбора. Делаю так при открытии формы
ПараметрСхемы = СхемаКомпоновкиДанных.Параметры.Найти("МойПараметр"); ПараметрСхемы.УстановитьДоступныеЗначения(МойСписокЗначений); поле с параметром появляется как простая строка , даже без кнопки выбора, в отладчике следов моего списка в параметре не видно |
|||
4
тарам пам пам
20.03.20
✎
09:10
|
Может, забыл у параметра СКД установить ДоступенСписокЗначений = Истина сначала?
|
|||
5
Ns33
20.03.20
✎
09:19
|
Не надо ДоступенСписокЗначений, в этом случае идет сравнение со всем списком, а нам надо единичные строки сравнивать.
|
|||
6
Ns33
20.03.20
✎
09:35
|
Попробуй так:
СхемаКомпоновкиДанных.НаборыДанных[0].Поля.Найти("Значение").УстановитьДоступныеЗначения(сп); |
|||
7
тарам пам пам
20.03.20
✎
10:19
|
А, понял, что неправильно понял задачу.
>> поле с параметром появляется как простая строка , даже без кнопки выбора, в отладчике следов моего списка в параметре не видно А ты делаешь повторную инициализацию компоновщика настроек после изменения схемы компоновки? |
|||
8
Mst
20.03.20
✎
11:15
|
Инициализацию делаю :
КомпоновщикНастроекКомпоновкиДанных = Новый КомпоновщикНастроекКомпоновкиДанных; КомпоновщикНастроекКомпоновкиДанных.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных)); Этот вариант тоже попробовал СхемаКомпоновкиДанных.НаборыДанных[0].Поля.Найти("Значение").УстановитьДоступныеЗначения(сп); Не взлетело. |
|||
9
Mst
20.03.20
✎
11:17
|
Если сделать так
Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.ДоступныеПараметры.Элементы[1].ДоступныеЗначения =МойСписокЗначений; То в отладчике список присваивается но на форме в настройках отсутствует |
|||
10
Franchiser
гуру
20.03.20
✎
14:39
|
У меня так работает, только стандартные настройки установи:
Процедура ИнициализацияОтчета() СписокВалют = Новый СписокЗначений; СписокВалют.Добавить(Справочники.Валюты.НайтиПоКоду("643")); СписокВалют.Добавить(Справочники.Валюты.НайтиПоКоду("840")); ПараметрыСхемы = СхемаКомпоновкиДанных.Параметры.Найти("ВалютаОтчета"); ПараметрыСхемы.УстановитьДоступныеЗначения(СписокВалют); ПараметрыСхемы1 = СхемаКомпоновкиДанных.НаборыДанных[0].Поля.Найти("Ссылка"); ПараметрыСхемы1.УстановитьДоступныеЗначения(СписокВалют); КонецПроцедуры Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты) // Вставить содержимое обработчика. СписокВалют = Новый СписокЗначений; СписокВалют.Добавить(Справочники.Валюты.НайтиПоКоду("643")); СписокВалют.Добавить(Справочники.Валюты.НайтиПоКоду("840")); ПараметрыСхемы1 = СхемаКомпоновкиДанных.НаборыДанных[0].Поля.Найти(новый ПолеКомпоновкиДанных("Ссылка")); ПараметрыСхемы1.УстановитьДоступныеЗначения(СписокВалют); КонецПроцедуры ИнициализацияОтчета(); |
|||
11
Franchiser
гуру
20.03.20
✎
14:43
|
ОбработкаПроверкиЗаполнения лишняя...
|
|||
12
Franchiser
гуру
20.03.20
✎
14:51
|
Код размещен в модуле объекта внешнего отчета
|
|||
13
Mst
20.03.20
✎
15:26
|
(10) Так тоже не заработало. Может у вас еще что то сделано , из за чего работает?
|
|||
14
Franchiser
гуру
20.03.20
✎
15:50
|
||||
15
Mst
20.03.20
✎
16:08
|
(14) Спасибо, но к сожалению в этой обработке выбор работает, потому что параметр имеет тип справочника , он и открывается, даже если код закомментарить
|
|||
16
Franchiser
гуру
20.03.20
✎
17:23
|
(15) со строками тоже работает, проверил
|
|||
17
Franchiser
гуру
20.03.20
✎
17:27
|
||||
18
Mst
20.03.20
✎
18:49
|
Да, действительно, по кнопке Настройка все работает, у меня оказывается то же, просто я смотрел в быстром доступе на форме, а там все не так радужно почему-то (
|
|||
19
Mst
20.03.20
✎
19:09
|
Выкрутился пока так - добавил в открытии формы
Элементы.КомпоновщикНастроекПользовательскиеНастройкиЭлемент0Значение.РежимВыбораИзСписка = Истина; Элементы.КомпоновщикНастроекПользовательскиеНастройкиЭлемент0Значение.СписокВыбора.ЗагрузитьЗначения( МойСписок); после этого заработало как нужно, хотя понятно, что костыль |
|||
20
Franchiser
гуру
20.03.20
✎
19:13
|
(18) в быстром доступе у меня работает, если предварительно сбросить пользовательские настройки
|
|||
21
Mst
20.03.20
✎
19:42
|
Да, верно, я ступил. Спасибо всем!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |