podkljuchenie_vneshnego_otcheta_v_1s_tonkij_klient

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
podkljuchenie_vneshnego_otcheta_v_1s_tonkij_klient [2021/09/22 13:00]
tro
podkljuchenie_vneshnego_otcheta_v_1s_tonkij_klient [2021/09/22 13:09] (текущий)
tro
Строка 5: Строка 5:
 <code> <code>
  
-Функция СведенияОВнешнейОбработке() Экспорт  +Функция СведенияОВнешнейОбработке() Экспорт 
- ПараметрыРегистрации Новый Структура; +     
- //МассивНазначений Новый Массив+    ИмяОтчета = ЭтотОбъект.Метаданные().Имя;  
- //МассивНазначений.Добавить(окумент.ЗаказКлиента"); //Указываем документ к которому делаем внешнюю печ. форму +    Синоним ЭтотОбъект.Метаданные().Синоним;  
- ПараметрыРегистрации.Вставить("Вид", "ДополнительныйОтчет"); //может быть ПечатнаяФорма, ЗаполнениеОбъекта, ДополнительныйОтчет, СозданиеСвязанныхОбъектов...  +    Синоним = ?(ЗначениеЗаполнено(Синоним),Синоним, ИмяОтчета);          
- //ПараметрыРегистрации.Вставить("Назначение", МассивНазначений); +    РегистрационныеДанные = Новый Структура
- ПараметрыРегистрации.Вставить("Наименование", "Отчет по новым клиентам"); //имя под которым обработка будет зарегестрирована в справочнике внешних обработок +    РегистрационныеДанные.Вставить("Вид","ДополнительныйОтчет"); //может быть – ПечатнаяФорма, ЗаполнениеОбъекта (для вн.обработки), ДополнительныйОтчет, СозданиеСвязанныхОбъектов…  
- ПараметрыРегистрации.Вставить("БезопасныйРежим", Истина); +    РегистрационныеДанные.Вставить("Наименование", Синоним); //имя под которым обработка будет зарегестрирована в справочнике внешних обработок 
- ПараметрыРегистрации.Вставить("Версия", "1.0");  +    РегистрационныеДанные.Вставить("Версия", "1.0"); 
- ПараметрыРегистрации.Вставить("Информация", "Отчет по новым клиентам");  +    РегистрационныеДанные.Вставить("БезопасныйРежим", Ложь); 
- ТаблицаКоманд = ПолучитьТаблицуКоманд(); +    РегистрационныеДанные.Вставить("Информация", "Отчет "+Синоним); //так будет выглядеть описание вн.отчета для пользователя 
- ДобавитьКоманду(ТаблицаКоманд, "Отчет по новым клиентам", "ОтчетПоНовымКлиентам", "ВызовСерверногоМетода", Истина, "ПечатьMXL"); +     
- ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд); +    ТаблицаКоманд = ПолучитьТаблицуКоманд(); 
- Возврат ПараметрыРегистрации;+     
 +    // Добавим команду в таблицу 
 +    ДобавитьКоманду(ТаблицаКоманд, Синоним, "СформироватьОтчет" , "ОткрытиеФормы", Истина, ); 
 +         
 +    // Сохраним таблицу команд в параметры регистрации обработки 
 +    РегистрационныеДанные.Вставить("Команды", ТаблицаКоманд); 
 +     
 +    Возврат РегистрационныеДанные; 
 +                                       
 КонецФункции КонецФункции
  
 Функция ПолучитьТаблицуКоманд() Функция ПолучитьТаблицуКоманд()
- Команды = Новый ТаблицаЗначений; +     
- Команды.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка"));//как будет выглядеть описание печормы для пользователя +    // Создадим пустую таблицу команд и колонки в ней 
- Команды.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка")); //имя макета печ.формы +    Команды = Новый ТаблицаЗначений; 
- Команды.Колонки.Добавить("Использование", Новый ОписаниеТипов("Строка")); //ВызовСерверногоМетода + 
- Команды.Колонки.Добавить("ПоказыватьОповещение", Новый ОписаниеТипов("Булево")); +    // Как будет выглядеть описание печатной формы для пользователя 
- Команды.Колонки.Добавить("Модификатор", Новый ОписаниеТипов("Строка")); +    Команды.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка"));  
- Возврат Команды;+ 
 +    // Имя нашего макета, что бы могли отличить вызванную команду в обработке печати 
 +    Команды.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка")); 
 + 
 +    // Тут задается, как должна вызваться команда обработки 
 +    // Возможные варианты: 
 +    // - ОткрытиеФормы - в этом случае в колонке идентификатор должно быть указано имя формы, которое должна будет открыть система 
 +    // - ВызовКлиентскогоМетода - вызвать клиентскую экспортную процедуру из модуля формы обработки 
 +    // - ВызовСерверногоМетода - вызвать серверную экспортную процедуру из модуля объекта обработки 
 +    Команды.Колонки.Добавить("Использование", Новый ОписаниеТипов("Строка")); 
 + 
 +    // Следующий параметр указывает, необходимо ли показывать оповещение при начале и завершению работы обработки. Не имеет смысла при открытии формы 
 +    Команды.Колонки.Добавить("ПоказыватьОповещение", Новый ОписаниеТипов("Булево")); 
 + 
 +    // Для печатной формы должен содержать строку ПечатьMXL  
 +    Команды.Колонки.Добавить("Модификатор", Новый ОписаниеТипов("Строка")); 
 +    Возврат Команды; 
 +   
 КонецФункции КонецФункции
  
-Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = ""+Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование = "ОткрытиеФормы", ПоказыватьОповещение = Ложь, Модификатор = "ПечатьMXL") 
-  +     
- НоваяКоманда = ТаблицаКоманд.Добавить(); +    // Добавляем команду в таблицу команд по переданному описанию. 
- НоваяКоманда.Представление = Представление;  +    // Параметры и их значения можно посмотреть в функции ПолучитьТаблицуКоманд 
- НоваяКоманда.Идентификатор = Идентификатор; +    НоваяКоманда = ТаблицаКоманд.Добавить(); 
- НоваяКоманда.Использование = Использование; +    НоваяКоманда.Представление = Представление; 
- НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение; +    НоваяКоманда.Идентификатор = Идентификатор; 
- НоваяКоманда.Модификатор = Модификатор; +    НоваяКоманда.Использование = Использование; 
-  +    НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение; 
-КонецПроцедуры+    НоваяКоманда.Модификатор = Модификатор; 
 + 
 +КонецПроцедуры 
  
  
 </code> </code>
  • /sites/data/attic/podkljuchenie_vneshnego_otcheta_v_1s_tonkij_klient.1632315610.txt.gz
  • Последнее изменение: 2021/09/22 13:00
  • tro