Добавление дополнительных отчетов и обработок в тонком клиенте БП 3.0, ЗУП 3.0, УТ 11
28.09.17 21:28
Функция СведенияОВнешнейОбработке() Экспорт

ПараметрыРегистрации = Новый Структура;

//Вид
//Строка, вид обработки, один из возможных: 
//"ДополнительнаяОбработка", "ДополнительныйОтчет", "ЗаполнениеОбъекта", "Отчет", "ПечатнаяФорма", "СозданиеСвязанныхОбъектов" 
ПараметрыРегистрации.Вставить("Вид", "ДополнительнаяОбработка");

//Массив строк имен объектов метаданных в формате: 
//<ИмяКлассаОбъектаМетаданного>.[ * | <ИмяОбъектаМетаданных>]. 
//Например, "Документ.СчетЗаказ" или "Справочник.*". 
//Прим. параметр имеет смысл только для назначаемых обработок, для глобальных может не задаваться. 
ПараметрыРегистрации.Вставить("Назначение", Новый СписокЗначений);

//Наименование обработки, которым будет заполнено наименование элемента справочника по умолчанию - краткая строка для идентификации обработки администратором 
ПараметрыРегистрации.Вставить("Наименование", "Сравнение документов БУХ и УТ");

//Версия обработки в формате “<старший номер>.<младший номер>” используется при загрузке обработок в информационную базу. Например “. 
ПараметрыРегистрации.Вставить("Версия", "1.0");

//Принимает значение Истина или Ложь, в зависимости от того, требуется ли устанавливать или отключать безопасный режим исполнения обработок. Если истина, обработка будет запущена в безопасном режиме. Более подбробно о безопасном режиме в справке к платформе 1С:Предприятие. 
ПараметрыРегистрации.Вставить("БезопасныйРежим", Истина);

//Краткая информация по обработке, описание обработки. 
ПараметрыРегистрации.Вставить("Информация", "");

//Команды, поставляемые обработкой. Таблица значений с колонками: 
ПараметрыРегистрации.Вставить("Команды", Новый СписокЗначений);

ТаблицаКоманд = ПолучитьТаблицу_Команд();


  ДобавитьКоманду(ТаблицаКоманд,
          "Сравнение документов БУХ и УТ", //Представление
          "Сравнение документов БУХ и УТ", //Идентификатор
          "ОткрытиеФормы", //Использование
          Ложь, //ПоказыватьОповещение
          ""); //Модификатор


  ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);

Возврат ПараметрыРегистрации;

КонецФункции


Функция ПолучитьТаблицу_Команд()


  Команды = Новый ТаблицаЗначений;
  
  //Представление – представление команды в пользовательском интерфейсе;
  Команды.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка"));
  
  //Идентификатор – идентификатор команды; 
  //любая строка, уникальная в пределах данной обработки (отчета). 
  //В случае с обработками печатных форм на основе макета табличного документа передается список макетов, 
  //на основе которых нужно получить печатную форму 
  //(см. описание параметра ИменаМакетов процедуры УправлениеПечатьюКлиент.ВыполнитьКомандуПечати в разделе Печать). 
  Команды.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка"));
  
  //"ОткрытиеФормы" – открыть форму обработки; 
  //"ВызовКлиентскогоМетода" – вызвать клиентскую экспортную процедуру из модуля формы обработки; 
  //"ВызовСерверногоМетода" – вызвать серверную экспортную процедуру из модуля объекта обработки.
  Команды.Колонки.Добавить("Использование", Новый ОписаниеТипов("Строка"));
 
  //ПоказыватьОповещение – если Истина, требуется показать оповещение при начале и при завершении работы обработки. 
  //Имеет смысл только при запуске обработки без открытия формы. 
  Команды.Колонки.Добавить("ПоказыватьОповещение", Новый ОписаниеТипов("Булево"));
  
  //Модификатор – дополнительный модификатор команды. 
  //Используется для дополнительных обработок печатных форм на основе табличных макетов, 
  //для таких команд должен содержать строку ПечатьMXL (см. пример в демонстрационной конфигурации).
  Команды.Колонки.Добавить("Модификатор", Новый ОписаниеТипов("Строка"));
  
  Возврат Команды;
           
КонецФункции


Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = "")


  НоваяКоманда = ТаблицаКоманд.Добавить();
  НоваяКоманда.Представление = Представление;
  НоваяКоманда.Идентификатор = Идентификатор;
  НоваяКоманда.Использование = Использование;
  НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение;
  НоваяКоманда.Модификатор = Модификатор;

КонецПроцедуры

Read Full Article