Склады / Форма списка / Модуль формы

файл

#Область ОбработчикиСобытийФормы

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
	
	Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа.
		Возврат;
	КонецЕсли;
	
	// установить заголовок по отбору
	Если Параметры.Свойство("РозничныеМагазины") Тогда
		АвтоЗаголовок = Ложь;
		Заголовок = НСтр("ru='Розничные магазины'");
	КонецЕсли;
		
	Если ПолучитьФункциональнуюОпцию("ИспользоватьРозничныеПродажи") Тогда
		ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ФормаСоздать", "Видимость", Ложь);		
		Элементы.ГруппаСоздатьСклад.Видимость = Истина;
	Иначе
		ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ФормаСоздать", "Видимость", Истина);		
		Элементы.ГруппаСоздатьСклад.Видимость = Ложь;
	КонецЕсли;
	
	Если Не ПравоДоступа("ИнтерактивноеДобавление", Метаданные.Справочники.Склады) Тогда
		Элементы.ГруппаСоздатьСклад.Видимость = Ложь;
	КонецЕсли;
	
	Элементы.Список.ИзменятьСоставСтрок = ПолучитьФункциональнуюОпцию("ИспользоватьНесколькоСкладов");
	
	// СтандартныеПодсистемы.ПодключаемыеКоманды
	ПодключаемыеКоманды.ПриСозданииНаСервере(ЭтотОбъект);
	// Конец СтандартныеПодсистемы.ПодключаемыеКоманды

	СобытияФорм.ПриСозданииНаСервере(ЭтаФорма, Отказ, СтандартнаяОбработка);
	
	// СтандартныеПодсистемы.ВерсионированиеОбъектов
	ВерсионированиеОбъектов.ПриСозданииНаСервере(ЭтотОбъект);
	// Конец СтандартныеПодсистемы.ВерсионированиеОбъектов
	
	МультиязычностьСервер.ПриСозданииНаСервере(ЭтотОбъект);
	
КонецПроцедуры // ПриСозданииНаСервере()

#КонецОбласти

#Область ОбработчикиКомандФормы

&НаКлиенте
Процедура СоздатьОптовыйСклад(Команда)
	
	ОткрытьФормуНовогоЭлемента(ПредопределенноеЗначение("Перечисление.ТипыСкладов.ОптовыйСклад"));
	
КонецПроцедуры

&НаКлиенте
Процедура СоздатьРозничныйМагазин(Команда)
	
	ОткрытьФормуНовогоЭлемента(ПредопределенноеЗначение("Перечисление.ТипыСкладов.РозничныйМагазин"));
	
КонецПроцедуры

// СтандартныеПодсистемы.ПодключаемыеКоманды
&НаКлиенте
Процедура Подключаемый_ВыполнитьКоманду(Команда)
	
	ПодключаемыеКомандыКлиент.ВыполнитьКоманду(ЭтотОбъект, Команда, Элементы.Список);
	
КонецПроцедуры

&НаКлиенте
Процедура Подключаемый_ВыполнитьПереопределяемуюКоманду(Команда)
	
	СобытияФормКлиент.ВыполнитьПереопределяемуюКоманду(ЭтаФорма, Команда);
	
КонецПроцедуры
// Конец СтандартныеПодсистемы.ПодключаемыеКоманды

#КонецОбласти

#Область ОбработчикиСобытийЭлементовТаблицыФормыСписок

&НаКлиенте
Процедура СписокПриАктивизацииСтроки(Элемент)
	
	// СтандартныеПодсистемы.ПодключаемыеКоманды
	ПодключаемыеКомандыКлиент.НачатьОбновлениеКоманд(ЭтотОбъект);
	// Конец СтандартныеПодсистемы.ПодключаемыеКоманды
	
КонецПроцедуры

#КонецОбласти

#Область СлужебныеПроцедурыИФункции

&НаКлиенте
Процедура ОткрытьФормуНовогоЭлемента(ТипСклада)
	
	ЗначенияЗаполнения = Новый Структура;
	ЗначенияЗаполнения.Вставить("ТипСклада",	ТипСклада);
	ЗначенияЗаполнения.Вставить("Группа",		ТекущаяСкладскаяГруппа());
	
	СтруктураПараметров = Новый Структура("ЗначенияЗаполнения", ЗначенияЗаполнения);
	
	ОткрытьФорму("Справочник.Склады.ФормаОбъекта", СтруктураПараметров, ЭтаФорма);
	
КонецПроцедуры

&НаКлиенте
Функция ТекущаяСкладскаяГруппа()
	
	ТекущийРодитель	= Элементы.Список.ТекущийРодитель;
	ТекущиеДанные	= Элементы.Список.ТекущиеДанные;
	ТекущаяГруппа	= ?(ТекущиеДанные <> Неопределено,
						?(ТекущиеДанные.ЭтоГруппа,
							ТекущиеДанные.Ссылка,
							ТекущиеДанные.Родитель),
						?(Элементы.Список.Отображение = ОтображениеТаблицы.ИерархическийСписок,
							ТекущийРодитель,
							Неопределено));
	
	Возврат ТекущаяГруппа;
	
КонецФункции

// СтандартныеПодсистемы.ПодключаемыеКоманды
&НаКлиенте
Процедура Подключаемый_ОбновитьКоманды()
	
	ПодключаемыеКомандыКлиентСервер.ОбновитьКоманды(ЭтотОбъект, Элементы.Список);
	
КонецПроцедуры

&НаСервере
Процедура Подключаемый_ВыполнитьКомандуНаСервере(Контекст, Результат) Экспорт
	
	ПодключаемыеКоманды.ВыполнитьКоманду(ЭтотОбъект, Контекст, Элементы.Список, Результат);
	
КонецПроцедуры
// Конец СтандартныеПодсистемы.ПодключаемыеКоманды

#КонецОбласти

Связанные материалы