При клике по ссылке на документ открыть нужную табличную часть

1. user705522_constantin_h 35 16.05.19 14:29 Сейчас в теме
Сделал внешний отчет на СКД. В нём есть ссылка на документ. Как при клике по ссылке открыть нужную табличную часть?
По теме из базы знаний
Ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
3. tusv 210 16.05.19 15:09 Сейчас в теме
(1)Да тут уже без события ОбработкаРасшифровки не обойтись
Когда то написал для обработки, где Расшифровка не работает в принципе.
АдресСхемы это Адрес во временом хранилище Схемы компоновки,
АдресРасшифровки это Адрес во временном хранилище ДанныеРасшифровки
&НаКлиенте
Процедура РезультатОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка, ДополнительныеПараметры)
	
	СтандартнаяОбработка = ложь;
	
	Настройки = РезультатОбработкаРасшифровкиНаСервере(Расшифровка);
	Если Настройки.Отбор.Элементы.Количество() Тогда
		ПоказатьЗначение(,Настройки.Отбор.Элементы[Настройки.Отбор.Элементы.Количество()-1].ПравоеЗначение);	
	КонецЕсли;
КонецПроцедуры
&НаСервере
Функция  РезультатОбработкаРасшифровкиНаСервере(Расшифровка)
	Источник =  Новый ИсточникДоступныхНастроекКомпоновкиДанных(АдресСхемы);
	ОбработкаРасшифровки =  Новый ОбработкаРасшифровкиКомпоновкиДанных(АдресРасшифровки,Источник);
	Возврат ОбработкаРасшифровки.Расшифровать(Расшифровка,Новый ПолеКомпоновкиДанных("Расшифровка"));
КонецФункции
Показать

Вам надо вместо АдресаСхемы указать Схему компоновки данных отчета.Вместо АдресРасшифровки ДанныеРасшифровки И вместо ПоказатьЗначение, открыть форму документа с активизированной Табличной частью
5. user705522_constantin_h 35 16.05.19 16:58 Сейчас в теме
(3)Сделал так.
&НаСервере
Функция  РезультатОбработкаРасшифровкиНаСервере(Расшифровка)
	Перем ВыполненноеДействие;
	
	ОтчетОбъект = ДанныеФормыВЗначение(Отчет, Тип("ОтчетОбъект"));
	
	СхемаКомпоновкиДанных = ОтчетОбъект.СхемаКомпоновкиДанных;                      
	
	СтандартнаяОбработка = Ложь;
	СписокДействий = Новый СписокЗначений;
	ДоступныеДействия = Новый Массив();
	ДоступныеДействия.Добавить(ДействиеОбработкиРасшифровкиКомпоновкиДанных.ОткрытьЗначение);
	ОбработкаРасшифровки = Новый ОбработкаРасшифровкиКомпоновкиДанных(ДанныеРасшифровки,Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных));
	
	Возврат ОбработкаРасшифровки.Выполнить(Расшифровка, ВыполненноеДействие, ДоступныеДействия, СписокДействий);
	
КонецФункции

&НаКлиенте
Процедура РезультатОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка)
	
	СтандартнаяОбработка = ложь;
	
	Настройки = РезультатОбработкаРасшифровкиНаСервере(Расшифровка);
	Если Настройки.Отбор.Элементы.Количество() Тогда
	    ПоказатьЗначение(,Настройки.Отбор.Элементы[Настройки.Отбор.Элементы.Количество()-1].ПравоеЗначение);    
	КонецЕсли;
КонецПроцедуры
Показать

Ошибка:Ошибка при вызове метода контекста (Выполнить)
Возврат ОбработкаРасшифровки.Выполнить(Расшифровка, ВыполненноеДействие, ДоступныеДействия, СписокДействий);
по причине:
Метод контекста недоступен
6. tusv 210 16.05.19 17:07 Сейчас в теме
(5)Только что проверил. Значение открывает
&НаКлиенте
Процедура РезультатОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка, ДополнительныеПараметры)
		
	СтандартнаяОбработка = ложь;
	
	Настройки = РезультатОбработкаРасшифровкиНаСервере(Расшифровка);
	Если Настройки.Отбор.Элементы.Количество() Тогда
		ПоказатьЗначение(,Настройки.Отбор.Элементы[Настройки.Отбор.Элементы.Количество()-1].ПравоеЗначение);	
	КонецЕсли;

КонецПроцедуры
&НаСервере
Функция  РезультатОбработкаРасшифровкиНаСервере(Расшифровка)
	Источник =  Новый ИсточникДоступныхНастроекКомпоновкиДанных(РеквизитФормыВЗначение("Отчет").СхемаКомпоновкиДанных);
	ОбработкаРасшифровки =  Новый ОбработкаРасшифровкиКомпоновкиДанных(ДанныеРасшифровки,Источник);
	Возврат ОбработкаРасшифровки.Расшифровать(Расшифровка,Новый ПолеКомпоновкиДанных("Расшифровка"));
КонецФункции
Показать
7. user705522_constantin_h 35 16.05.19 17:18 Сейчас в теме
(6)Так ошибка: Ошибка при вызове метода контекста (Расшифровать)
Возврат ОбработкаРасшифровки.Расшифровать(Расшифровка,Новый ПолеКомпоновкиДанных("Расшифровка"));
по причине:
Нельзя расшифровывать детальные записи
8. tusv 210 16.05.19 17:34 Сейчас в теме
(7)Не знаю. Все работает и с детальными записями
Прикрепленные файлы:
ВнешнийОтчет2.erf
user705522_constantin_h; +1 Ответить
9. user705522_constantin_h 35 16.05.19 17:38 Сейчас в теме
(8)У вас управляемые или обычные формы?
У вас работает, буду разбираться: в чём у меня ошибки.
10. tusv 210 16.05.19 17:41 Сейчас в теме
(9)Я же отчетик прикрепил. УФ
user705522_constantin_h; +1 Ответить
11. user705522_constantin_h 35 16.05.19 17:45 Сейчас в теме
(10)Заработало. Нужно не детальные записи, а поля выбрать.
12. tusv 210 16.05.19 18:04 Сейчас в теме
(11)Этот код был для программно созданной Схемы компоновки.
Чтоб по любому просто открылся документ, элемент можно через макет поля
Прикрепленные файлы:
2. VictorRGB2 13 16.05.19 15:01 Сейчас в теме
непонятен вопрос
раз есть ссылка, значит можно открыть сам объект и уже в нем увидеть табличную часть

или же вопрос в том как где-то открыть отдельно табличную часть объекта без самого объекта? типовыми средствами точно нельзя, писать отдельную форму для обработчика события... ну не знаю, а смысл в этом?
4. user705522_constantin_h 35 16.05.19 15:19 Сейчас в теме
(2)Нужно чтобы сразу открылась нужная табличная часть, чтобы не нужно было на неё переключаться.
Оставьте свое сообщение
Вакансии
1С аналитик
Москва
зарплата от 210 000 руб.
Полный день

Руководитель направления 1С
Москва
зарплата от 350 000 руб.
Полный день

1С Программист
Москва
зарплата от 180 000 руб.
Полный день

Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)