|
Как зарегистрировать дополнительный отчет в справочнике «Варианты отчетов». | ☑ | ||
---|---|---|---|---|
0
Голубушка
25.06.18
✎
11:20
|
Конфигурация ЗУП 3.1, версия БСП 2.4.6.40. Есть внешний отчет
Функция СведенияОВнешнейОбработке() Экспорт РегистрационныеДанные = Новый Структура; РегистрационныеДанные.Вставить("Вид", "ДополнительныйОтчет"); РегистрационныеДанные.Вставить("Версия", "1.0"); РегистрационныеДанные.Вставить("Наименование", "------"); РегистрационныеДанные.Вставить("БезопасныйРежим", Истина); РегистрационныеДанные.Вставить("Информация", ""); Команды = Новый ТаблицаЗначений; Команды.Колонки.Добавить("Идентификатор"); Команды.Колонки.Добавить("Представление"); Команды.Колонки.Добавить("Модификатор"); Команды.Колонки.Добавить("ПоказыватьОповещение"); Команды.Колонки.Добавить("Использование"); НоваяКоманда = Команды.Добавить(); НоваяКоманда.Идентификатор = "ОткрытьФорму"; НоваяКоманда.Представление = "------"; НоваяКоманда.ПоказыватьОповещение = Истина; НоваяКоманда.Использование = "ОткрытиеФормы"; РегистрационныеДанные.Вставить("Команды", Команды); Возврат РегистрационныеДанные; КонецФункции Нужно зарегистрировать этот отчет в справочнике «Варианты отчетов», чтоб включить его в рассылку для пользователей. |
|||
1
Голубушка
25.06.18
✎
11:48
|
ап
|
|||
2
rozer76
25.06.18
✎
13:14
|
Интерактивно можно при сохр вар
|
|||
3
Голубушка
25.06.18
✎
13:33
|
При сохранении не появляется вариант в справочнике вариантов, по всей видимости, я не до конца регистрирую отчет. Если судить по форме списка справочник "ВариантыОтчетов", строиться дерево с учетом справочника "ИдентификаторыОбъектовМетаданных", естественно моего отчета там нет. Но возможность должна быть, т.к. в справочнике вариантов есть отбор по доп. отчетам.
|
|||
4
Фрэнки
25.06.18
✎
13:40
|
(3) а тебя так-таки ЗУП-ом мучают до сих пор :)
|
|||
5
Голубушка
25.06.18
✎
13:45
|
Да нет :) это очередная задача , у нас все многоплановое.
|
|||
6
Фрэнки
25.06.18
✎
13:48
|
ПараметрыРегистрации = Новый Структура;
МассивНазначений = Новый Массив; МассивНазначений.Добавить(ПолучитьМетаданныеДокументаПечати()); //может быть - ЗаполнениеОбъекта, ДополнительныйОтчет, СозданиеСвязанныхОбъектов... ПараметрыРегистрации.Вставить("Вид", "ПечатнаяФорма"); ПараметрыРегистрации.Вставить("Назначение", МассивНазначений); - это у меня для печатных форм так сделано (это фрагмент). Может нужно и в твоем коде какое-то Назначение установить? |
|||
7
Голубушка
25.06.18
✎
13:49
|
Нет, точно нет, эти параметры для другого. Нужно именно зарегистрировать вариант. Всю документацию по БСП вроде прочитала. Нужен стороний опыт.
|
|||
8
Голубушка
25.06.18
✎
13:50
|
Вопрос не столько к ЗУП, сколько к БСП , то же самое и в БУ и в Рознице.
|
|||
9
Голубушка
25.06.18
✎
13:51
|
телефон то же ?
|
|||
10
hhhh
25.06.18
✎
14:20
|
(8) ну как то так
ВариантОбъект = Справочники.ВариантыОтчетов.СоздатьЭлемент(); ВариантОбъект.Наименование = "ВнешнийОтчет.ЗагрузкаПрайсовУТ"; ВариантОбъект.Отчет = "ВнешнийОтчет.ЗагрузкаПрайсовУТ"; ВариантОбъект.КлючВарианта = "ДанныеСохр"; ВариантОбъект.Записать(); ХранилищаНастроек.ХранилищеВариантовОтчетов.Сохранить("ВнешнийОтчет.ЗагрузкаПрайсовУТ", "ДанныеСохр", ДанныеСохрСтрока); |
|||
11
Голубушка
25.06.18
✎
14:40
|
еще
ВариантОбъект.ТипОтчета = Перечисления.ТипыОтчетов.Дополнительный; но в списке справочника вариантов отчет не отображается |
|||
12
Фрэнки
25.06.18
✎
15:11
|
// Возвращает отчеты (СправочникСсылка.ВариантыОтчетов), доступные текущему пользователю.
// Их следует использовать во всех запросах к таблице // справочника "ВариантыОтчетов" как отбор по реквизиту "Отчет", // кроме случаев выборки вариантов из внешних отчетов. // // Возвращаемое значение: // Массив - отчеты, доступные текущему пользователю (СправочникСсылка.ИдентификаторыОбъектовРасширений, // Строка, СправочникСсылка.ДополнительныеОтчетыИОбработки, // СправочникСсылка.ИдентификаторыОбъектовМетаданных). // Тип элементов совпадает с типом реквизита Справочники.ВариантыОтчетов.Реквизиты.Отчет. // Функция ОтчетыТекущегоПользователя() Экспорт ДоступныеОтчеты = Новый Массив(ВариантыОтчетовПовтИсп.ДоступныеОтчеты()); // Дополнительные отчеты, доступные текущему пользователю. Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки") Тогда МодульДополнительныеОтчетыИОбработки = ОбщегоНазначения.ОбщийМодуль("ДополнительныеОтчетыИОбработки"); МодульДополнительныеОтчетыИОбработки.ПриДобавленииДополнительныхОтчетовДоступныхТекущемуПользователю(ДоступныеОтчеты); КонецЕсли; Возврат ДоступныеОтчеты; КонецФункции |
|||
13
Фрэнки
25.06.18
✎
15:16
|
// Дополняет массив ссылкам дополнительных отчетов, доступных текущему пользователю.
// // Параметры: // Результат - Массив из <см. Справочники.ВариантыОтчетов.Реквизиты.Отчет> - // Ссылки отчетов, доступных текущему пользователю. // // Места использования: // ВариантыОтчетов.ОтчетыТекущегоПользователя(). // Процедура ПриДобавленииДополнительныхОтчетовДоступныхТекущемуПользователю(ДоступныеОтчеты) Экспорт Если Не ПолучитьФункциональнуюОпцию("ИспользоватьДополнительныеОтчетыИОбработки") Тогда Возврат; КонецЕсли; Если Не ПравоДоступа("Чтение", Метаданные.Справочники.ДополнительныеОтчетыИОбработки) Тогда Возврат; КонецЕсли; ИспользуетсяТеснаяИнтеграцияСПодсистемойВМоделиСервиса = ИспользуетсяТеснаяИнтеграцияСПодсистемойВМоделиСервиса(); Если ИспользуетсяТеснаяИнтеграцияСПодсистемойВМоделиСервиса Тогда МодульДополнительныеОтчетыИОбработкиВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("ДополнительныеОтчетыИОбработкиВМоделиСервиса"); КонецЕсли; Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ РАЗЛИЧНЫЕ | ДополнительныеОтчетыИОбработки.Ссылка |ИЗ | Справочник.ДополнительныеОтчетыИОбработки КАК ДополнительныеОтчетыИОбработки |ГДЕ | ДополнительныеОтчетыИОбработки.ИспользуетХранилищеВариантов | И ДополнительныеОтчетыИОбработки.Вид В (&ВидДополнительныйОтчет, &ВидОтчет) | И НЕ ДополнительныеОтчетыИОбработки.Ссылка В (&ДоступныеОтчеты)"; Запрос.УстановитьПараметр("ДоступныеОтчеты", ДоступныеОтчеты); Запрос.УстановитьПараметр("ВидОтчет", Перечисления.ВидыДополнительныхОтчетовИОбработок.Отчет); Запрос.УстановитьПараметр("ВидДополнительныйОтчет", Перечисления.ВидыДополнительныхОтчетовИОбработок.ДополнительныйОтчет); Выборка = Запрос.Выполнить().Выбрать(); Пока Выборка.Следующий() Цикл Если ИспользуетсяТеснаяИнтеграцияСПодсистемойВМоделиСервиса И Не МодульДополнительныеОтчетыИОбработкиВМоделиСервиса.ЭтоПоставляемаяОбработка(Выборка.Ссылка) Тогда Продолжить; КонецЕсли; ДоступныеОтчеты.Добавить(Выборка.Ссылка); КонецЦикла; КонецПроцедуры |
|||
14
Фрэнки
25.06.18
✎
15:17
|
= В пояснение к выше пощенному =
Выбранные ссылки с Дополнительными отчетами добавляются не всегда |
|||
15
Начинающий_13
25.06.18
✎
15:51
|
// Интерфейс для регистрации обработки.
// Вызывается при добавлении обработки в справочник "ВнешниеОбработки" // // Возвращаемое значение: // Структура: // Вид - строка - возможные значения: "ДополнительнаяОбработка" // "ДополнительныйОтчет" // "ЗаполнениеОбъекта" // "Отчет" // "ПечатнаяФорма" // "СозданиеСвязанныхОбъектов" // // Назначение - массив строк имен объектов метаданных в формате: // <ИмяКлассаОбъектаМетаданного>.[ * | <ИмяОбъектаМетаданных>] // Например, "Документ.СчетЗаказ" или "Справочник.*" // Прим. параметр имеет смысл только для назначаемых обработок // // Наименование - строка - наименование обработки, которым будет заполнено // наименование справочника по умолчанию - краткая строка для // идентификации обработки администратором // // Версия - строка - версия обработки в формате <старший номер>.<младший номер> // используется при загрузке обработок в информационную базу // БезопасныйРежим – Булево – Если истина, обработка будет запущена в безопасном режиме. // Более подбробная информация в справке. // // Информация - Строка- краткая информация по обработке, описание обработки // // Команды - ТаблицаЗначений - команды, поставляемые обработкой, одная строка таблицы соотвествует // одной команде // колонки: // - Представление - строка - представление команды конечному пользователю // - Идентификатор - строка - идентефикатор команды. В случае печатных форм // перечисление через запятую списка макетов // - Использование - строка - варианты запуска обработки: // "ОткрытиеФормы" - открыть форму обработки // "ВызовКлиентскогоМетода" - вызов клиентского экспортного метода из формы обработки // "ВызовСерверногоМетода" - вызов серверного экспортного метода из модуля объекта обработки // - ПоказыватьОповещение – Булево – если Истина, требуется оказывать оповещение при начале // и при окончании запуска обработки. Прим. Имеет смысл только // при запуске обработки без открытия формы. // - Модификатор – строка - для печатных форм MXL, которые требуется // отображать в форме ПечатьДокументов подсистемы Печать // требуется установить как "ПечатьMXL" // Функция СведенияОВнешнейОбработке() Экспорт ПараметрыРегистрации = Новый Структура; ПараметрыРегистрации.Вставить("Вид" , "ДополнительныйОтчет"); //ПараметрыРегистрации.Вставить("Назначение" , Неопределено); ПараметрыРегистрации.Вставить("Наименование" , НСтр("ru = 'ШАБЛОН Наименование отчета ВНЕШНИЙ ОТЧЕТ'")); ПараметрыРегистрации.Вставить("Версия" , "0.0"); ПараметрыРегистрации.Вставить("БезопасныйРежим" , Истина); ПараметрыРегистрации.Вставить("Информация" , НСтр("ru = 'ШАБЛОН Информация'")); ТаблицаКоманд = ПолучитьТаблицуКоманд(); ДобавитьКоманду(ТаблицаКоманд, НСтр("ru = 'ШАБЛОН ИмяКоманды'"), "ШАБЛОНИдентификатор", "ОткрытиеФормы", ,); ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд); Возврат ПараметрыРегистрации; КонецФункции //// ==================================================================== Функция ПолучитьТаблицуКоманд() Команды = Новый ТаблицаЗначений; Команды.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка")); Команды.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка")); Команды.Колонки.Добавить("Использование", Новый ОписаниеТипов("Строка")); Команды.Колонки.Добавить("ПоказыватьОповещение", Новый ОписаниеТипов("Булево")); Команды.Колонки.Добавить("Модификатор", Новый ОписаниеТипов("Строка")); Возврат Команды; КонецФункции |
|||
16
Голубушка
25.06.18
✎
17:08
|
Кусок документации.
3. Для дополнительных отчетов принять решение по поводу подключения к подсистеме «Варианты отчетов» (если подсистема внедрена в конфигурацию). Подробнее про возможности подсистемы «Варианты отчетов». В частности, варианты дополнительного отчета, подключенного к подсистеме «Варианты отчетов», можно размещать в панелях отчетов программы, рядом с отчетами конфигурации. Для подключения отчета к подсистеме «Варианты отчетов» в свойстве Хранилище вариантов (меню Действия, команда Свойства) следует выбрать ХранилищеВариантовОтчетов. Резюме. Открыть обработку в конфигураторе , в правом нижнем углу кнопка «Действия» , «Свойства», «Хранилище вариантов» = «ХранилищеВариантовОтчетов». Загрузить отчет как дополнительный, регистрационные данные как обычно (пост 1). В элементе отчета появится вкладка «Варианты отчета», где указан наш вариант. После этого, отчет виден в справочнике вариантов по отбору «Дополнительные». Всем спасибо, тема закрыта. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |