//ирПортативный Перем ирПортативный Экспорт;
//ирПортативный Перем ирОбщий Экспорт;
//ирПортативный Перем ирСервер Экспорт;
//ирПортативный Перем ирКэш Экспорт;
//ирПортативный Перем ирКлиент Экспорт;

#Если Клиент Тогда

// Открывает форму обработки.
// Предназначена для автооткрытия формы в 1С при запуске. 
// Помещаем в табло команду ВнешниеОбработки.Создать("<путь>ip8.epf").Открыть() и при каждом запуске, если окно табло включено, обработка будет запускаться автоматически
// Параметры
//
// Возвращаемое значение:
//   булево - статус открытия (октрылась или нет)
//
Функция Открыть() экспорт

	Форма = ЭтотОбъект.ПолучитьФорму();
	Форма.Открыть();
	Возврат Форма.Открыта();

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

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

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

#КонецЕсли 

Функция РеквизитыДляСервера(Параметры) Экспорт  
	//Результат = ирОбщий.РеквизитыОбработкиЛкс(ЭтотОбъект);
	Возврат Новый Структура;
КонецФункции

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

//ирПортативный лФайл = Новый Файл(ИспользуемоеИмяФайла);
//ирПортативный ПолноеИмяФайлаБазовогоМодуля = Лев(лФайл.Путь, СтрДлина(лФайл.Путь) - СтрДлина("Модули\")) + "ирПортативный.epf";
//ирПортативный #Если Клиент Тогда
//ирПортативный 	Контейнер = Новый Структура();
//ирПортативный 	Оповестить("ирПолучитьБазовуюФорму", Контейнер);
//ирПортативный 	Если Не Контейнер.Свойство("ирПортативный", ирПортативный) Тогда
//ирПортативный 		ирПортативный = ВнешниеОбработки.ПолучитьФорму(ПолноеИмяФайлаБазовогоМодуля);
//ирПортативный 		ирПортативный.Открыть();
//ирПортативный 	КонецЕсли; 
//ирПортативный #Иначе
//ирПортативный 	ирПортативный = ВнешниеОбработки.Создать(ПолноеИмяФайлаБазовогоМодуля, Ложь); // Это будет второй экземпляр объекта
//ирПортативный #КонецЕсли
//ирПортативный ирОбщий = ирПортативный.ОбщийМодульЛкс("ирОбщий");
//ирПортативный ирКэш = ирПортативный.ОбщийМодульЛкс("ирКэш");
//ирПортативный ирСервер = ирПортативный.ОбщийМодульЛкс("ирСервер");
//ирПортативный ирКлиент = ирПортативный.ОбщийМодульЛкс("ирКлиент");
