|
Помогите с данными расшифровки | ☑ | ||
---|---|---|---|---|
0
Kleopatra2803
01.09.14
✎
13:16
|
Добрый день!
Никак не могу разобраться с данными расшифровки в управляемых формах. Конфигурация УТ 11.1.4.10. В отчете есть поля регистратор и контрагент. При нажатии на них двойным щелчком должны открываться соответственно документ и контрагент. Формирование отчета программное. При нажатии вместо расшифровки вылазит номер ячейкм. Что я делаю не так? &НаСервере Процедура СформироватьНаСервере() Результат.Очистить(); ДокументРезультат = Новый ТабличныйДокумент; // Схема компоновки данных СхемаКомпоновкиДанных = РеквизитФормыВЗначение("Отчет").ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных"); // Загрузка настроек Настройки = СхемаКомпоновкиДанных.НастройкиПоУмолчанию; КомпоновщикНастроекКомпоновкиДанных = Новый КомпоновщикНастроекКомпоновкиДанных; КомпоновщикНастроекКомпоновкиДанных.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных)); ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных; КомпоновщикНастроекКомпоновкиДанных.ЗагрузитьНастройки(Настройки); // Установка параметров данных КомпоновщикНастроекКомпоновкиДанных.Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("Дата2", Отчет.Дата2); КомпоновщикНастроекКомпоновкиДанных.Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("Дата1", Отчет.Дата1); ОтборКонтрагент = Отчет.КомпоновщикНастроек.Настройки.Отбор.Элементы[0].ПравоеЗначение; КомпоновщикНастроекКомпоновкиДанных.Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("Контрагент", ОтборКонтрагент); КомпоновщикНастроекКомпоновкиДанных.Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("ЧислоДнейПоУмолчанию", Отчет.ЧислоДнейПоУмолчанию); КомпоновщикНастроекКомпоновкиДанных.Настройки.Отбор.Элементы[0].ПравоеЗначение = ОтборКонтрагент; КомпоновщикНастроекКомпоновкиДанных.Настройки.Отбор.Элементы[0].Использование = Отчет.КомпоновщикНастроек.Настройки.Отбор.Элементы[0].Использование; КомпоновщикНастроекКомпоновкиДанных.Настройки.Отбор.Элементы[1].ПравоеЗначение = Отчет.КомпоновщикНастроек.Настройки.Отбор.Элементы[1].ПравоеЗначение; КомпоновщикНастроекКомпоновкиДанных.Настройки.Отбор.Элементы[1].Использование = Отчет.КомпоновщикНастроек.Настройки.Отбор.Элементы[1].Использование; КомпоновщикНастроекКомпоновкиДанных.Настройки.Отбор.Элементы[2].ПравоеЗначение = Отчет.КомпоновщикНастроек.Настройки.Отбор.Элементы[2].ПравоеЗначение; КомпоновщикНастроекКомпоновкиДанных.Настройки.Отбор.Элементы[2].Использование = Отчет.КомпоновщикНастроек.Настройки.Отбор.Элементы[2].Использование; // Компоновка макета КомпоновщикМакетаКомпоновкиДанных = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновкиДанных = КомпоновщикМакетаКомпоновкиДанных.Выполнить(СхемаКомпоновкиДанных, КомпоновщикНастроекКомпоновкиДанных.Настройки, ДанныеРасшифровки); // Инициализация процессора компоновки ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновкиДанных, , ДанныеРасшифровки); ПроцессорВывода = новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ПроцессорВывода.УстановитьДокумент(ДокументРезультат); ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных); Результат.ФиксацияСверху = 3; Результат.ФиксацияСлева = 1; Результат.Вывести(ДокументРезультат); Элементы.Результат.ОтображениеСостояния.Видимость = ложь; Элементы.Результат.ОтображениеСостояния.ДополнительныйРежимОтображения = ДополнительныйРежимОтображения.НеИспользовать; КонецПроцедуры |
|||
1
Ymryn
01.09.14
✎
15:52
|
Мое почтение. Есть подозрение, что ДанныеРасшифровки уже определены на форме и их не надо переопределять. Попробуйте убрать эту строчку. (Не гарантирую, что сработает, просто предположение, на остаточной памяти)
|
|||
2
Ymryn
01.09.14
✎
16:00
|
(1) + я наврал. Судя по записям все верно. Надо просто описать свой механизм расшифровки. Как пример:
Процедура РезультатОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка) СтандартнаяОбработка = Ложь; ОбработкаРасшифровки = Новый ОбработкаРасшифровкиКомпоновкиДанных(ДанныеРасшифровкиОтчета, Новый ИсточникДоступныхНастроекКомпоновкиДанных(ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных")) ); МассивДоступныхДействий = Новый Массив; МассивДоступныхДействий.Добавить(ДействиеОбработкиРасшифровкиКомпоновкиДанных.ОткрытьЗначение); НастройкиРасшифровки = ОбработкаРасшифровки.Выполнить(Расшифровка,, МассивДоступныхДействий); КонецПроцедуры |
|||
3
Kleopatra2803
01.09.14
✎
17:33
|
(2) а что должно быть в ДанныеРасшифровкиОтчета? Их надо как-то определить заранее? Процедура у меня на них ругается. И если пишу ДанныеРасшифровки, то тоже ругается
|
|||
4
Ymryn
01.09.14
✎
19:31
|
ДанныеРасшифровкиОтчета - если не изменяет память - это ДанныеРасшифровки как раз.
|
|||
5
Kleopatra2803
01.09.14
✎
19:46
|
(4) Тогда почему он у меня их не видит. Говорит переменная не определена(
|
|||
6
Kleopatra2803
01.09.14
✎
20:24
|
(4)блин, такая ошибка дурацкая была!!!! каким-то образом из реквизитов формы был удален реквизит ДанныеРасшифровки, который похоже должен там обязательно быть. Как только его добавила, заработала стандартная расшифровка. Твой вариант кстати тоже работает, но его наверное лучше использовать для более сложной расшифровки.
Спасибо большое!!!!! Ты мне уже не в первый раз помогаешь, я у тебя в долгу) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |