|
Управляемые формы + СКД + программное формирование отчета = Трабла | ☑ | ||
---|---|---|---|---|
0
mzelensky
01.07.14
✎
14:19
|
Доброго всем.
Управляемые формы. Отчет на Скд. Хочу сформировать отчет из формы списка справочника "Контрагенты" с отбором по текущему контрагенту. Пишу: ТД = Элементы.Список.ТекущиеДанные; Если ТД <> Неопределено Тогда Если НЕ ТД.ЭтоГруппа Тогда ФиксированныеНастройки = Новый НастройкиКомпоновкиДанных; ЭлементОтбора = ФиксированныеНастройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбора.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Обычный; ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Контрагент"); ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; ЭлементОтбора.ПравоеЗначение = Элементы.Список.ТекущиеДанные.Ссылка; ЭлементОтбора.Использование = Истина; ПараметрыФормы = Новый Структура("ФиксированныеНастройки, КлючНазначенияИспользования, КлючВарианта, СформироватьПриОткрытии", ФиксированныеНастройки, "Основной", "Основной", Истина); ОткрытьФорму("Отчет.А_ВаловаяПрибыль.Форма", ПараметрыФормы); КонецЕсли; КонецЕсли; В результате отчет открывается, формируется и даже нужный мне отбор устанавливается (это видно в шапке отчета). НО этот отбор по контрагенту не видно в настройках отчета, а следовательно и изменить я его не могу. Пробовал разные варианты: ЭлементОтбора.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Обычный; Но не помогает. Как быть ? |
|||
1
Господин ПЖ
01.07.14
✎
14:28
|
так ты их в фиксированные затолкал
|
|||
2
Fragster
гуру
01.07.14
✎
14:29
|
пихай в пользовательские
|
|||
3
mzelensky
01.07.14
✎
14:39
|
(1)(2) Как? Я этот пример в типовой нашел.
Вместо "ФиксированныеНастройки" -- "ПользовательскиеНастройки" ? |
|||
4
Kyon8
01.07.14
✎
14:41
|
Вот пример http://v8.1c.ru/metod/faq2/answer.jsp?id=645
|
|||
5
Господин ПЖ
01.07.14
✎
14:41
|
>Я этот пример в типовой нашел
и что с того... фикс. настройки - это дополнение |
|||
6
mzelensky
01.07.14
✎
14:46
|
(5) Это я уже понял - нашел в СП. Но если я просто меняю "ФиксированныеНастройки" на "ПользовательскиеНастройки", то ошибок нет, но отбор вообще не устанавливает.
|
|||
7
mzelensky
01.07.14
✎
14:50
|
(4) ну так там аналогичня ситуация = фактически отбор устанавливается, а в видимых пользовательских настройках пусто.
|
|||
8
mzelensky
01.07.14
✎
14:52
|
кажется дошло, тип данных не тот
|
|||
9
mzelensky
01.07.14
✎
14:58
|
Не, все-равно что-то не то. Сейчас сделал вот так:
ПользовательскиеНастройки = Новый ПользовательскиеНастройкиКомпоновкиДанных; ЭлементОтбора = ПользовательскиеНастройки.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбора.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.БыстрыйДоступ; ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Контрагент"); ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; ЭлементОтбора.ПравоеЗначение = Элементы.Список.ТекущиеДанные.Ссылка; ЭлементОтбора.Использование = Истина; ПараметрыФормы = Новый Структура("ПользовательскиеНастройки, КлючНазначенияИспользования, КлючВарианта, СформироватьПриОткрытии", ПользовательскиеНастройки, "ВаловаяПрибыль", "Основной", Истина); |
|||
10
mzelensky
01.07.14
✎
14:58
|
Где тупанул?
|
|||
11
mzelensky
01.07.14
✎
15:17
|
Апп
|
|||
12
ИсчадиеADO
01.07.14
✎
15:29
|
пользовательские настройки вроде при открытии только могут заполняться, не при создании на сервере и не из параметров формы (ОткрытьФорму(имя, параметры)
емнип |
|||
13
ИсчадиеADO
01.07.14
✎
15:35
|
(12) а не, (12) - это про параметры СКД, а не отбор, а отбор вообще-то через параметры передаваемые в открываемую форму должно работать
|
|||
14
ИсчадиеADO
01.07.14
✎
15:36
|
А для отбора, емнип, в параметрах, нужно заполять свойство "Отбор"
|
|||
15
ИсчадиеADO
01.07.14
✎
15:38
|
||||
16
mzelensky
01.07.14
✎
16:01
|
(15) Сделал через "Отбор"...сам отбор отработал, отчет открылся и сформировался, но по прежнему этот отбор скрыт и не доступен для редактирования!!! А мне нужно.
|
|||
17
ИсчадиеADO
01.07.14
✎
16:45
|
(16) напиши плз, если решишь
А где ты пример из (0) нашел, говоришь? |
|||
18
mzelensky
01.07.14
✎
17:01
|
(17) Пример из (0) я выдернул из УТ 11...отчет ведомость по товарам на скаладх кажется.
|
|||
19
mzelensky
02.07.14
✎
07:42
|
Вопрос открыт
|
|||
20
mzelensky
02.07.14
✎
10:00
|
ну что за беда такая?
|
|||
21
mzelensky
02.07.14
✎
15:38
|
что, совсем никто не знакет?
|
|||
22
ИсчадиеADO
03.07.14
✎
14:56
|
(21) хз, при открытии пользовательские настройки точно обновляются,
глянь, на 8.2 (4) и (15) работает нормально? |
|||
23
Kalambur
03.07.14
✎
15:00
|
убери КлючНазначенияИспользования, КлючВарианта, без них как?
|
|||
24
ам794123
03.07.14
✎
15:10
|
Я обычно делаю как-то так:
&НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) СтандартнаяОбработка = Ложь; Настройки = Отчет.КомпоновщикНастроек.ПолучитьНастройки(); Для Каждого ЭлементОтбора Из Настройки.Отбор.Элементы Цикл Если ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Контрагент") Тогда ЭлементОтбора.ПравоеЗначение = Элементы.Список.ТекущиеДанные.Ссылка; ЭлементОтбора.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Обычный; КонецЕсли; КонецЦикла; Отчет.КомпоновщикНастроек.ЗагрузитьНастройки(Настройки); КонецПроцедуры |
|||
25
mzelensky
03.07.14
✎
16:44
|
(22) Сам отбор работает (я об этом уже писал), но этот отбор не отображается в настройках формы + его поменять нельзя.
|
|||
26
mzelensky
03.07.14
✎
16:45
|
(23) А они тут причем?
|
|||
27
mzelensky
03.07.14
✎
16:46
|
(24) Я так тоже умею - это ты с объектом (отчетом) работаешь, на сервере. Я же программно открывают отчет. Открываю на клиенте, так что у меня нет всего этого.
|
|||
28
ам794123
03.07.14
✎
17:10
|
Придется тебе вручную форму настроек создать и передать ей свои настройки, и сохранять их в хранилище тоже вручную
|
|||
29
vmv
03.07.14
✎
17:18
|
пара вопросов?
расширения управляемой формы отчета выучил? парметры управлямой формы выучил? стандартные отбработчики управлямой формы выучил? методы работы с пользовательскими настройками по СП выучил? Если все ответы "да", то задача в (0) решаеться мышкой и возможно чутка кода в обработчиках формы, а вариант из (28) когда хотя бы один ответ будет "нет". |
|||
30
mzelensky
04.07.14
✎
08:33
|
(29) Давай вот без пафоса и биения себя пяткой в грудь. Можешь и хочешь помочь - помоги, а нет - ... в общем идею ты понял.
|
|||
31
mzelensky
04.07.14
✎
12:47
|
Ну где шибко умные, которые все выучили?!?!?!
|
|||
32
BadSanta
28.07.14
✎
12:03
|
(9) В коллекции ПользовательскиеНастройкиКомпоновкиДанных ключевым является поле ИдентификаторПользовательскойНастройки.
Его значение подсмотри в оригинальных пользовательских настройках. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |