|
Получить ДанныеРасшифровки СКД | ☑ | ||
---|---|---|---|---|
0
geek
27.03.12
✎
17:20
|
Есть процедура:
лСхемаКомпоновкиДанных = ОтчетОбъект.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных"); ОбработкаРасшифровки = Новый ОбработкаРасшифровкиКомпоновкиДанных(ДанныеРасшифровки, Новый ИсточникДоступныхНастроекКомпоновкиДанных(лСхемаКомпоновкиДанных)); СформироватьТаблицуСотрудников(ТабличныйДокумент, ДанныеРасшифровки); Валится на первом входном параметке, не может найти ДанныеРасшифровки. Как их получить программно? Я пробовал создать новые, но они пустые, если вывести Элемент.Количество(). |
|||
1
Axel2009
27.03.12
✎
17:38
|
Перем ВыполненноеДействие;
СтандартнаяОбработка = Ложь; ОбработкаРасшифровки = Новый ОбработкаРасшифровкиКомпоновкиДанных(ДанныеРасшифровки,Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных)); Настройки = ОбработкаРасшифровки.Выполнить(Расшифровка,ВыполненноеДействие); Если Настройки <> Неопределено Тогда КомпоновщикНастроек.ЗагрузитьНастройки(Настройки); ЭлементыФормы.Результат.Очистить(); СкомпоноватьРезультат(ЭлементыФормы.Результат, ДанныеРасшифровки); КонецЕсли; |
|||
2
Axel2009
27.03.12
✎
17:39
|
Расширение формы отчета (Report form extension)
ДанныеРасшифровки (DetailsData) Использование: Чтение и запись. Описание: Тип: ДанныеРасшифровкиКомпоновкиДанных. Содержит данные расшифровки последнего выполненного отчета. Доступность: Толстый клиент. |
|||
3
Axel2009
27.03.12
✎
17:39
|
ОбработкаРасшифровки = Новый ОбработкаРасшифровкиКомпоновкиДанных(ОтчетОбъект.ДанныеРасшифровки, Новый ИсточникДоступныхНастроекКомпоновкиДанных(лСхемаКомпоновкиДанных));
может так? |
|||
4
Новиков
27.03.12
✎
17:50
|
А где эта процедура объявлена? Явно не в модуле формы :)
Чтобы у тебя все заработало тебе нужно протащить это расширение к себе в процедуру. Из модуля формы это будет выглянить так: ЭтаФорма.ДанныеРасшифровки ну или просто ДанныеРасшифровки |
|||
5
geek
27.03.12
✎
17:50
|
{Форма.ФормаОтправкиПочты.Форма(155)}: Поле объекта не обнаружено (ДанныеРасшифровки)
ОбработкаРасшифровки = Новый ОбработкаРасшифровкиКомпоновкиДанных(ОтчетОбъект.ДанныеРасшифровки, Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных)); (3) До этого стояло ВладелецФормы.ДанныеРасшифровки, может я где-то в настройках формы не указал владельца? У меня 2 формы, одна с отчетом СКД, другая моя, которая обрабатывает данные и выводит в таблицу. |
|||
6
geek
27.03.12
✎
17:54
|
(4) Процедура объявлена в модуле формы
Если ЭтаФорма.ДанныеРасшифровки, то: Несоответствие типов (параметр номер '1') |
|||
7
geek
27.03.12
✎
17:58
|
До этого отчет работал через программную загрузку типового отчета из конфигурации. Пришлось выдрать отчет из конфы и прикрутить к нему форму из первого отчета, все добавлял копированием. Может есть где-то свойство формы ВладелецФормы, я просто не разбираюсь.
|
|||
8
Новиков
27.03.12
✎
17:58
|
Есть две формы. Одна выводит в табличный документ результат. Вторая - что-то там делает. Ты прописал процедуру эту - в модуле твоей второй формы?
|
|||
9
geek
27.03.12
✎
17:59
|
(8) Да, в модуле второй формы
|
|||
10
geek
27.03.12
✎
18:00
|
Отчет типовой, расчетные листки в ЗУПе, мне нужно поправить форму вывода, чтобы добавлялось одно единственное поле. Могу предоставить отчет, если необходимо.
|
|||
11
geek
27.03.12
✎
18:03
|
До этого было так:
ИсточникДоступныхНастроек = Новый ИсточникДоступныхНастроекКомпоновкиДанных(ВладелецФормы.СхемаКомпоновкиДанных); ОбработкаРасшифровки = Новый ОбработкаРасшифровкиКомпоновкиДанных(ВладелецФормы.ДанныеРасшифровки, Новый ИсточникДоступныхНастроекКомпоновкиДанных(ВладелецФормы.СхемаКомпоновкиДанных)); СформироватьТаблицуСотрудников(ТабличныйДокумент,ВладелецФормы.ДанныеРасшифровки); Все в том же модуле, той же формы. И все работало без нареканий. Через ВладелецФормы.ДанныеРасшифровки.Элементы.Количество() мне выдавалось значение 177, т.е. не пустые настройки! Думаю, надо поменять ВладелецФормы на что-то другое, либо для второй формы где-то указать Владельца. |
|||
12
Новиков
27.03.12
✎
18:09
|
Я совсем спутался - отчет типовой. Ты выгрузил схему, подцепил ее к внешнему отчету (типовому) опять же. Вот до этого понял. Дальше зачем ты рисуешь форму вторую?
|
|||
13
geek
27.03.12
✎
18:17
|
(12)Извини, целый день мучаюсь, голова кругом. По порядку:
Это первый вариант отчета(ПЕРВЫЙ) открывал в своей первой форме типового отчет. Вторая форма вытаскивала расшифровку фио(Справочники.ФизЛицо.Ссылка) из полученного макета. Меня попросили переделать форму вывода, и мне пришлось выдрать типовой отчет во внешнюю обработку, но чтобы сохранить функционал ПЕРВОГО, я добавил копированием ТЧ и форму из ПЕРВОГО в новый отчет(ВТОРОЙ). Я почти все исправил, но ДанныеРасшифровки получить не могу, в ПЕРВОМ было написано так: Процедура ОсновныеДействияФормыСформироватьСписокСотрудников(Кнопка) ИсточникДоступныхНастроек = Новый ИсточникДоступныхНастроекКомпоновкиДанных(ВладелецФормы.СхемаКомпоновкиДанных); ОбработкаРасшифровки = Новый ОбработкаРасшифровкиКомпоновкиДанных(ВладелецФормы.ДанныеРасшифровки, Новый ИсточникДоступныхНастроекКомпоновкиДанных(ВладелецФормы.СхемаКомпоновкиДанных)); СформироватьТаблицуСотрудников(ТабличныйДокумент,ВладелецФормы.ДанныеРасшифровки); //ВладелецФормы.ДанныеРасшифровки.Элементы[11].ПолучитьПоля()[0].Значение.Физлицо КонецПроцедуры Во ВТОРОМ я написал ТАК: Процедура ОсновныеДействияФормыСформироватьСписокСотрудников(Кнопка) ИсточникДоступныхНастроек = Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных); ОбработкаРасшифровки = Новый ОбработкаРасшифровкиКомпоновкиДанных(ЭтаФорма.ДанныеРасшифровки, Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных)); СформироватьТаблицуСотрудников(ТабличныйДокумент, ЭтаФорма.ДанныеРасшифровки); КонецПроцедуры |
|||
14
geek
27.03.12
✎
18:23
|
Заметил, что в ПЕРВОМ отчете в Свойствах доп. Формы Тип Значения указан как ВнешняяОбработка.РасчетныеЛисты
А во ВТОРОМ, Тип Значения указан как ВнешнийОтчет.РасчетныеЛисты Может это принципиально? О_О |
|||
15
geek
27.03.12
✎
18:46
|
"Если отчет формируется при помощи стандартной команды
отчета Сформировать, то данные расшифровки помещаются в свойство расширения формы отчета ДанныеРасшифровки." (с)Цитата из книги Что такое Свойство Расширения Формы Отчета? О_О |
|||
16
geek
27.03.12
✎
19:01
|
Решил проблему, при формировании отчета занес данные в свою переменную с экспортом и взял ее значение в модуле формы.
|
|||
17
Человечкин
27.03.12
✎
19:06
|
ДанныеРасшифровки - это в ячейках под ПараметрРасшифровки имеется ввиду.
|
|||
18
Человечкин
27.03.12
✎
19:07
|
и когда ты на ячейке открываешь расшифровку - туда те данные попадают. Туда можно свою структуру впихнуть.
|
|||
19
geek
27.03.12
✎
19:08
|
(17) Да, такая расшифровка. Мне надо было получить ссылку на эл. справочника.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |