|
Инициализировать программно отбор в отчете на СКД |
☑ |
0
shlyahtich
05.04.16
✎
17:39
|
Создан внешний отчет на СКД
В СКД определено, что поле для отбора доступно, но не заполнено
Форма создана на основе СКД
В этой форме программно определяю значение для отбора, но оно на форме все равно пустое
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
ОтчетЗначение = РеквизитФормыВЗначение("Отчет");
СхемаКомпоновкиДанных = ОтчетЗначение.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
Отбор = СхемаКомпоновкиДанных.ВариантыНастроек.сиб_ПрибыльПоРеализациямПоМенеджерам.Настройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
Отбор.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Менеджер");
Отбор.ПравоеЗначение = Пользователи.ТекущийПользователь();
Отбор.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
Отбор.Использование = Истина;
Отбор.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.БыстрыйДоступ;
КонецПроцедуры
|
|
1
Timon1405
05.04.16
✎
17:41
|
может быть ЗначениеВРеквизитФормы добавить?
|
|
2
shlyahtich
05.04.16
✎
17:45
|
(1) ЗначениеВРеквизитФормы(ОтчетЗначение,"Отчет") ?
не помогает
|
|
3
Defender aka LINN
05.04.16
✎
17:45
|
(0) "В этой форме программно определяю" - нифига подобного
|
|
4
Defender aka LINN
05.04.16
✎
17:46
|
+(3) Ты меняешь настройки варианта отчета. Какого-то варианта.
|
|
5
shlyahtich
05.04.16
✎
17:48
|
(4) по умолчанию который
|
|
6
shlyahtich
05.04.16
✎
17:50
|
(4) в СКД один вариант с названием сиб_ПрибыльПоРеализациямПоМенеджерам
вот его и меняю
|
|
7
Defender aka LINN
05.04.16
✎
17:51
|
(5) Полагаешь, есть разница? Так я тебя расстрою.
|
|
8
shlyahtich
05.04.16
✎
17:53
|
(7) Хорошо - вариант настроек один и он выводится на форму
В нем есть Отбор
его программно пытаюсь установить
|
|
9
shlyahtich
05.04.16
✎
17:56
|
СКД = ПолучитьМакет("СКД");
ТекстЗапроса = СформироватьТекстЗапроса();
НаборДанных = СКД.НаборыДанных.Найти("ОсновнойНаборДанных");
НаборДанных.Запрос = ТекстЗапроса;
НаборДанных.ИсточникДанных ="ОсновнойИсточникДанных";
НаборДанных.АвтоЗаполнениеДоступныхПолей = Истина;
КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СКД));
|
|
10
shlyahtich
05.04.16
✎
17:57
|
|
|
11
shlyahtich
05.04.16
✎
17:58
|
Но у меня СКД не программно создана, а есть в наличие в макете
как в ней отбор добавить?
|
|
12
shlyahtich
05.04.16
✎
18:00
|
|
|
13
Zhuravlik
05.04.16
✎
18:03
|
(0) Нужно получить настройки компоновщика, затем установить настройки компоновщика. Используя одноименные методы одноименных объектов...
|
|
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший