|
БСП и внешняя печатная форма | ☑ | ||
---|---|---|---|---|
0
04347
16.03.16
✎
15:45
|
была создана внешняя печатная форма для документа (управляемые формы 8.3)
Функция СведенияОВнешнейОбработке() Экспорт ОбъектыНазначенияФормы = Новый Массив; ОбъектыНазначенияФормы.Добавить("Документ.ПеремещениеЗапасов"); ПараметрыРегистрации = ПолучитьПараметрыРегистрации(ОбъектыНазначенияФормы); ПараметрыРегистрации.Версия = "1.0"; //Определяем команды для печати формы ТаблицаКоманд = Получить_Таблицу_Команд(); ДобавитьКоманду(ТаблицаКоманд, "Перемещение запасов (с диалогом выбора цены)", // Представление команды в пользовательском интерфейсе "ВнешняяПечатнаяФормаПФ_MXL_Перемещение_УНФ", // Уникальный идентификатор команды "ОткрытиеФормы", // Использование команды Истина, // Показывать оповещение. "ПечатьMXL" // Дополнительный модификатор команды. ); ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд); Возврат ПараметрыРегистрации; КонецФункции // // ВСПОМОГАТЕЛЬНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ РЕГИСТРАЦИИ ОБРАБОТКИ // // Формирует структуру с параметрами регистрации регистрации обработки в информационной базе // // Параметры: // ОбъектыНазначенияФормы - Массив - Массив строк имен объектов метаданных в формате: // <ИмяКлассаОбъектаМетаданного>.[ * | <ИмяОбъектаМетаданных>]. // или строка с именем объекта метаданных // НаименованиеОбработки - строка - Наименование обработки, которым будет заполнено наименование элемента справочника по умолчанию. // Необязательно, по умолчанию синоним или представление объекта // Информация - строка - Краткая информация или описание обработки. // Необязательно, по умолчанию комментарий объекта // Версия - строка - Версия обработки в формате “<старший номер>.<младший номер>” используется при загрузке обработок в информационную базу. // // // Возвращаемое значение: // Структура // Функция ПолучитьПараметрыРегистрации(ОбъектыНазначенияФормы = Неопределено, НаименованиеОбработки = "", Информация = "", Версия = "1.0.0") Если ТипЗнч(ОбъектыНазначенияФормы) = Тип("Строка") Тогда ОбъектНазначенияФормы = ОбъектыНазначенияФормы; ОбъектыНазначенияФормы = Новый Массив; ОбъектыНазначенияФормы.Добавить(ОбъектНазначенияФормы); КонецЕсли; ПараметрыРегистрации = Новый Структура; ПараметрыРегистрации.Вставить("Вид", "ПечатнаяФорма"); ПараметрыРегистрации.Вставить("БезопасныйРежим", Истина); ПараметрыРегистрации.Вставить("Назначение", ОбъектыНазначенияФормы); Если Не ЗначениеЗаполнено(НаименованиеОбработки) Тогда НаименованиеОбработки = ЭтотОбъект.Метаданные().Представление(); КонецЕсли; ПараметрыРегистрации.Вставить("Наименование", НаименованиеОбработки); Если Не ЗначениеЗаполнено(Информация) Тогда Информация = ЭтотОбъект.Метаданные().Комментарий; КонецЕсли; ПараметрыРегистрации.Вставить("Информация", Информация); ПараметрыРегистрации.Вставить("Версия", Версия); Возврат ПараметрыРегистрации; КонецФункции // Формирует таблицу значений с командами печати // // Возвращаемое значение: // ТаблицаЗначений // Функция Получить_Таблицу_Команд() Команды = Новый ТаблицаЗначений; Команды.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка")); Команды.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка")); Команды.Колонки.Добавить("Использование", Новый ОписаниеТипов("Строка")); Команды.Колонки.Добавить("ПоказыватьОповещение", Новый ОписаниеТипов("Булево")); Команды.Колонки.Добавить("Модификатор", Новый ОписаниеТипов("Строка")); Возврат Команды; КонецФункции // Вспомогательная процедура. // Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование = "ВызовСерверногоМетода", ПоказыватьОповещение = Ложь, Модификатор = "ПечатьMXL") НоваяКоманда = ТаблицаКоманд.Добавить(); НоваяКоманда.Представление = Представление; НоваяКоманда.Идентификатор = Идентификатор; НоваяКоманда.Использование = Использование; НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение; НоваяКоманда.Модификатор = Модификатор; КонецПроцедуры Но теперь она не соответствует БСП; "вместо Получить_Таблицу_Команд() сейчас используется соотв. прогр. интерфейс". Не могу переделать, если кто знает, подскажите, пожалуйста |
|||
1
Fragster
гуру
16.03.16
✎
16:19
|
||||
2
04347
16.03.16
✎
16:41
|
всё, разобралась, осталась только одна функция. Может кому пригодится
// Возвращает сведения о внешней обработке. Функция СведенияОВнешнейОбработке() Экспорт ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("2.3.1.73"); ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиПечатнаяФорма(); ПараметрыРегистрации.Версия = "1.1"; ПараметрыРегистрации.Назначение.Добавить("Документ.ПеремещениеЗапасов"); НоваяКоманда = ПараметрыРегистрации.Команды.Добавить(); НоваяКоманда.Представление = НСтр("ru = 'Перемещение запасов (с диалогом выбора цены)'"); НоваяКоманда.Идентификатор = "ВнешняяПечатнаяФормаПФ_MXL_Перемещение_УНФ"; НоваяКоманда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыОткрытиеФормы(); НоваяКоманда.ПоказыватьОповещение = Истина; НоваяКоманда.Модификатор = "ПечатьMXL"; Возврат ПараметрыРегистрации; КонецФункции |
|||
3
romix
16.03.16
✎
16:59
|
Разбирательству с внешними обработками БСП оч. помогают примеры в базе демо БСП и пользовательская (не программерская - там сомнабулический текст) документация ИТС.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |