#Если НЕ МобильныйАвтономныйСервер Тогда
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ОбработчикиСобытий
Процедура ПередЗаписью(Отказ)
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
ОбновлениеИнформационнойБазы.ПроверитьОбъектОбработан(ЭтотОбъект);
Если Не ЭтоГруппа Тогда
Если ТипСкладскойЯчейки <> Перечисления.ТипыСкладскихЯчеек.Хранение
И ТипСкладскойЯчейки <> Перечисления.ТипыСкладскихЯчеек.Архив
Или СкладыСервер.ИспользоватьАдресноеХранениеСправочно(Владелец, Помещение)
И НЕ СкладыСервер.ИспользоватьАдресноеХранение(Владелец, Помещение,,Ложь) Тогда
ОбластьХранения = Справочники.ОбластиХранения.ПустаяСсылка();
УровеньДоступности = 0;
Типоразмер = Справочники.ТипоразмерыЯчеек.ПустаяСсылка();
МаксимальныйКоэффициентНаполненностиПоВесу = 0;
МаксимальныйКоэффициентНаполненностиПоОбъему = 0;
Если СкладыСервер.ИспользоватьАдресноеХранениеСправочно(Владелец, Помещение)
И НЕ СкладыСервер.ИспользоватьАдресноеХранение(Владелец, Помещение,,Ложь) Тогда
ТипСкладскойЯчейки = Перечисления.ТипыСкладскихЯчеек.ПустаяСсылка();
Иначе
РабочийУчасток = Справочники.РабочиеУчастки.ПустаяСсылка();
ОбластьХранения = Справочники.ОбластиХранения.ПустаяСсылка();
ПорядокОбхода = 0;
УровеньДоступности = 0;
МаксимальныйКоэффициентНаполненностиПоВесу = 0;
МаксимальныйКоэффициентНаполненностиПоОбъему = 0;
КонецЕсли;
Иначе
Если УровеньДоступности = 0 Тогда
УровеньДоступности = 1;
КонецЕсли;
Если МаксимальныйКоэффициентНаполненностиПоВесу = 0 Тогда
МаксимальныйКоэффициентНаполненностиПоВесу = 100;
КонецЕсли;
Если МаксимальныйКоэффициентНаполненностиПоОбъему = 0 Тогда
МаксимальныйКоэффициентНаполненностиПоОбъему = 100;
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецПроцедуры
Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты)
СтруктураПараметров = Новый Структура("Склад,Помещение",Владелец, Помещение);
МассивНепроверяемыхРеквизитов = Новый Массив;
Если Не СкладыСервер.ИспользоватьАдресноеХранение(Владелец, Помещение,,Ложь) Тогда
Если Не ЭтоГруппа Тогда
МассивНепроверяемыхРеквизитов.Добавить("ТипСкладскойЯчейки");
КонецЕсли;
Если Не СкладыСервер.ИспользоватьАдресноеХранениеСправочно(Владелец, Помещение) Тогда
ТекстСообщения = НСтр("ru='По складу ""%Склад%"" не используется адресное хранение!'");
ТекстСообщения = СтрЗаменить(ТекстСообщения,"%Склад%",СкладыСервер.ПолучитьПредставлениеСклада(Владелец,Помещение));
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения,ЭтотОбъект,"Склад","Объект",Отказ);
КонецЕсли;
КонецЕсли;
Если Не СкладыСервер.ИспользоватьСкладскиеПомещения(Владелец) Тогда
МассивНепроверяемыхРеквизитов.Добавить("Помещение");
ИначеЕсли ЗначениеЗаполнено(Родитель) Тогда
РеквизитыРодителя = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Родитель,Новый Структура("Помещение"));
Если РеквизитыРодителя.Помещение <> Помещение Тогда
ТекстСообщения = НСтр("ru='В группе ""%Группа%"" все ячейки должны быть по помещению ""%Помещение%""'");
ТекстСообщения = СтрЗаменить(ТекстСообщения,"%Помещение%",РеквизитыРодителя.Помещение);
ТекстСообщения = СтрЗаменить(ТекстСообщения,"%Группа%",Родитель);
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения,ЭтотОбъект,"Помещение","Объект",Отказ);
КонецЕсли;
КонецЕсли;
Если ИспользованиеПериодичностиИнвентаризацииЯчейки
<> Перечисления.ВариантыИспользованияПериодическойИнвентаризацииЯчеек.ИспользоватьНастройкиЯчейки Тогда
МассивНепроверяемыхРеквизитов.Добавить("КоличествоДнейМеждуИнвентаризациями");
КонецЕсли;
ОбщегоНазначения.УдалитьНепроверяемыеРеквизитыИзМассива(ПроверяемыеРеквизиты, МассивНепроверяемыхРеквизитов);
КонецПроцедуры
#КонецОбласти
#КонецЕсли
#КонецЕсли