0. tmn72.1C 103 10.09.19 14:40 Сейчас в теме

Шаблон программного открытия внешнего отчета из справочника "Дополнительные отчеты и обработки"

Шаблон программного открытия внешнего отчета из справочника "Дополнительные отчеты и обработки" для конфигураций с подсистемой БСП "Дополнительные отчеты и обработки".

Перейти к публикации

Комментарии
Избранное Подписка Сортировка: Древо
1. maslyann 1 11.09.19 08:00 Сейчас в теме
Через БСП это делается спокойно:

	
       Представление = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(СсылкаНаДопОтчет,"Наименование");
	ВыполняемаяКоманда = Новый Структура;
	ВыполняемаяКоманда.Вставить("ВариантЗапуска",  ПредопределенноеЗначение("Перечисление.СпособыВызоваДополнительныхОбработок.ОткрытиеФормы"));
	ВыполняемаяКоманда.Вставить("Вид",  ПредопределенноеЗначение("Перечисление.ВидыДополнительныхОтчетовИОбработок.ДополнительныйОтчет"));
	ВыполняемаяКоманда.Вставить("Идентификатор",  "СформироватьОтчет");
	ВыполняемаяКоманда.Вставить("Модификатор",  "");
	ВыполняемаяКоманда.Вставить("ПоказыватьОповещение",  Ложь);
	ВыполняемаяКоманда.Вставить("ОбъектыНазначения",  Неопределено);
	ВыполняемаяКоманда.Вставить("Представление",  Представление);
	ВыполняемаяКоманда.Вставить("Ссылка",  СсылкаНаДопОтчет);
	ВыполняемаяКоманда.Вставить("ЭтоОтчет",  Истина);
	
	ДополнительныеОтчетыИОбработкиКлиент.ВыполнитьОткрытиеФормыОбработки(ВыполняемаяКоманда, ЭтаФорма, Неопределено);

Показать
VIA_1C; dsdred; +2 Ответить
2. tmn72.1C 103 11.09.19 08:35 Сейчас в теме
(1) Не знал, спасибо. Проверил - способ рабочий, только ОбщегоНазначения это серверный модуль, получение представление необходимо вынести в отдельный серверный безконтекстный вызов.

&НаКлиенте
Процедура ОткрытьВнешнийОтчет(Команда)
	
	Представление = ПолучитьПредставление(СсылкаНаДопОтчет);
	
    ВыполняемаяКоманда = Новый Структура;
    ВыполняемаяКоманда.Вставить("ВариантЗапуска",  ПредопределенноеЗначение("Перечисление.СпособыВызоваДополнительныхОбработок.ОткрытиеФормы"));
    ВыполняемаяКоманда.Вставить("Вид",  ПредопределенноеЗначение("Перечисление.ВидыДополнительныхОтчетовИОбработок.ДополнительныйОтчет"));
    ВыполняемаяКоманда.Вставить("Идентификатор",  "СформироватьОтчет");
    ВыполняемаяКоманда.Вставить("Модификатор",  "");
    ВыполняемаяКоманда.Вставить("ПоказыватьОповещение",  Ложь);
    ВыполняемаяКоманда.Вставить("ОбъектыНазначения",  Неопределено);
    ВыполняемаяКоманда.Вставить("Представление",  Представление);
    ВыполняемаяКоманда.Вставить("Ссылка",  СсылкаНаДопОтчет);
    ВыполняемаяКоманда.Вставить("ЭтоОтчет",  Истина);
    
    ДополнительныеОтчетыИОбработкиКлиент.ВыполнитьОткрытиеФормыОбработки(ВыполняемаяКоманда, ЭтаФорма, Неопределено);
КонецПроцедуры

&НаСервереБезКонтекста
Функция ПолучитьПредставление(СсылкаНаДопОтчет)
	
	Возврат ОбщегоНазначения.ЗначениеРеквизитаОбъекта(СсылкаНаДопОтчет,"Наименование")
	
КонецФункции
Показать
neyasytyf; +1 Ответить
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Бизнес-архитектор 1С, ведущий консультант
Санкт-Петербург
Полный день

Руководитель проектов 1С
Санкт-Петербург
Полный день

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

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