#Область ОбработчикиСобытийФормы
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Свойство("АвтоТест") Тогда
Возврат;
КонецЕсли;
ИспользуетсяЦенообразование25 = ЦенообразованиеВызовСервера.ИспользуетсяЦенообразование25();
ОтборНоменклатура = Параметры.Ключ;
Если ИспользуетсяЦенообразование25 Тогда
Элементы.СтраницаЦеныНоменклатуры.Видимость = Ложь;
Элементы.СтраницаЦеныНоменклатуры2_5.Видимость = ПравоДоступа("Просмотр",
Метаданные.РегистрыСведений.ЦеныНоменклатуры25);
Иначе
Элементы.СтраницаЦеныНоменклатуры2_5.Видимость = Ложь;
Элементы.СтраницаЦеныНоменклатуры.Видимость = ПравоДоступа("Просмотр",
Метаданные.РегистрыСведений.ЦеныНоменклатуры);
КонецЕсли;
Элементы.СтраницаЦеныНоменклатурыПоставщиков.Видимость = ПравоДоступа("Просмотр",
Метаданные.РегистрыСведений.ЦеныНоменклатурыПоставщиков);
Если Элементы.СтраницаЦеныНоменклатуры.Видимость Тогда
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(
ЦеныНоменклатуры,
"Номенклатура",
ОтборНоменклатура,
ВидСравненияКомпоновкиДанных.Равно,
"Номенклатура",
Истина);
ИначеЕсли Элементы.СтраницаЦеныНоменклатуры2_5.Видимость Тогда
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(
ЦеныНоменклатуры2_5,
"Номенклатура",
ОтборНоменклатура,
ВидСравненияКомпоновкиДанных.Равно,
"Номенклатура",
Истина);
КонецЕсли;
Если Элементы.СтраницаЦеныНоменклатурыПоставщиков.Видимость Тогда
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(
ЦеныНоменклатурыПоставщиков,
"Номенклатура",
ОтборНоменклатура,
ВидСравненияКомпоновкиДанных.Равно,
"Номенклатура",
Истина);
КонецЕсли;
СписокВидовЦен = Новый СписокЗначений();
Если Параметры.Свойство("ВидЦены") Тогда
СписокВидовЦен.Добавить(Параметры.ВидЦены);
ВидЦеныНоменклатуры = Параметры.ВидЦены;
Иначе
СписокВидовЦен.ЗагрузитьЗначения(Справочники.ВидыЦен.ДоступныеВидыЦен());
КонецЕсли;
Если ИспользуетсяЦенообразование25 Тогда
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(
ЦеныНоменклатуры2_5,
"ВидЦены",
СписокВидовЦен,
ВидСравненияКомпоновкиДанных.ВСписке,
"ВидЦеныОграничениеПоПравам",
Истина);
Иначе
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(
ЦеныНоменклатуры,
"ВидЦены",
СписокВидовЦен,
ВидСравненияКомпоновкиДанных.ВСписке,
"ВидЦеныОграничениеПоПравам",
Истина);
КонецЕсли;
СобытияФорм.ПриСозданииНаСервере(ЭтаФорма, Отказ, СтандартнаяОбработка);
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиСобытийЭлементовШапкиФормы
&НаКлиенте
Процедура ПериодЦеныНоменклатурыПриИзменении(Элемент)
ПериодЦеныНоменклатурыПриИзмененииНаСервере();
КонецПроцедуры
&НаКлиенте
Процедура ВидЦеныНоменклатурыПриИзменении(Элемент)
ВидЦеныНоменклатурыПриИзмененииНаСервере();
КонецПроцедуры
&НаКлиенте
Процедура ПериодЦеныНоменклатурыПоставщикаПриИзменении(Элемент)
ПериодЦеныНоменклатурыПоставщиковПриИзмененииНаСервере();
КонецПроцедуры
&НаКлиенте
Процедура ПериодЦеныНоменклатурыПоставщикаОчистка(Элемент, СтандартнаяОбработка)
ПериодЦеныНоменклатурыПоставщиковПриИзмененииНаСервере();
КонецПроцедуры
&НаКлиенте
Процедура ПартнерПриИзменении(Элемент)
ПартнерПриИзмененииНаСервере();
КонецПроцедуры
&НаКлиенте
Процедура ВидЦеныПоставщикаПриИзменении(Элемент)
ВидЦеныПоставщикаПриИзмененииНаСервере();
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиКомандФормы
&НаКлиенте
Процедура Подключаемый_ВыполнитьПереопределяемуюКоманду(Команда)
СобытияФормКлиент.ВыполнитьПереопределяемуюКоманду(ЭтаФорма, Команда);
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
#Область Прочее
&НаСервере
Процедура ПериодЦеныНоменклатурыПриИзмененииНаСервере()
Если ИспользуетсяЦенообразование25 Тогда
ОбщегоНазначенияКлиентСервер.УдалитьЭлементыГруппыОтбораДинамическогоСписка(ЦеныНоменклатуры2_5,"Период","Период");
ГруппаЭлементовОтбора = ОбщегоНазначенияКлиентСервер.СоздатьГруппуЭлементовОтбора(
ОбщегоНазначенияУТКлиентСервер.ПолучитьОтборДинамическогоСписка(ЦеныНоменклатуры2_5).Элементы,
"ЦеныНоменклатурыОтборПоПериоду",
ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ);
Иначе
ОбщегоНазначенияКлиентСервер.УдалитьЭлементыГруппыОтбораДинамическогоСписка(ЦеныНоменклатуры,"Период","Период");
ГруппаЭлементовОтбора = ОбщегоНазначенияКлиентСервер.СоздатьГруппуЭлементовОтбора(
ОбщегоНазначенияУТКлиентСервер.ПолучитьОтборДинамическогоСписка(ЦеныНоменклатуры).Элементы,
"ЦеныНоменклатурыОтборПоПериоду",
ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ);
КонецЕсли;
ОбщегоНазначенияКлиентСервер.ДобавитьЭлементКомпоновки(
ГруппаЭлементовОтбора,
"Период",
ВидСравненияКомпоновкиДанных.БольшеИлиРавно,
ПериодЦеныНоменклатуры.ДатаНачала,
"Период",
ЗначениеЗаполнено(ПериодЦеныНоменклатуры.ДатаНачала));
ОбщегоНазначенияКлиентСервер.ДобавитьЭлементКомпоновки(ГруппаЭлементовОтбора, "Период", ВидСравненияКомпоновкиДанных.МеньшеИлиРавно,
ПериодЦеныНоменклатуры.ДатаОкончания, "Период", ЗначениеЗаполнено(ПериодЦеныНоменклатуры.ДатаОкончания));
КонецПроцедуры
&НаСервере
Процедура ВидЦеныНоменклатурыПриИзмененииНаСервере()
Если ИспользуетсяЦенообразование25 Тогда
ОбщегоНазначенияКлиентСервер.УдалитьЭлементыГруппыОтбораДинамическогоСписка(ЦеныНоменклатуры2_5,,"ВидЦены");
ОбщегоНазначенияКлиентСервер.ДобавитьЭлементКомпоновки(
ОбщегоНазначенияУТКлиентСервер.ПолучитьОтборДинамическогоСписка(ЦеныНоменклатуры2_5), "ВидЦены",
ВидСравненияКомпоновкиДанных.Равно, ВидЦеныНоменклатуры, "ВидЦены", ЗначениеЗаполнено(ВидЦеныНоменклатуры));
Иначе
ОбщегоНазначенияКлиентСервер.УдалитьЭлементыГруппыОтбораДинамическогоСписка(ЦеныНоменклатуры,,"ВидЦены");
ОбщегоНазначенияКлиентСервер.ДобавитьЭлементКомпоновки(
ОбщегоНазначенияУТКлиентСервер.ПолучитьОтборДинамическогоСписка(ЦеныНоменклатуры), "ВидЦены",
ВидСравненияКомпоновкиДанных.Равно, ВидЦеныНоменклатуры, "ВидЦены", ЗначениеЗаполнено(ВидЦеныНоменклатуры));
КонецЕсли;
КонецПроцедуры
&НаСервере
Процедура ПериодЦеныНоменклатурыПоставщиковПриИзмененииНаСервере()
ОбщегоНазначенияКлиентСервер.УдалитьЭлементыГруппыОтбораДинамическогоСписка(ЦеныНоменклатурыПоставщиков,"Период","Период");
ГруппаЭлементовОтбора = ОбщегоНазначенияКлиентСервер.СоздатьГруппуЭлементовОтбора(
ОбщегоНазначенияУТКлиентСервер.ПолучитьОтборДинамическогоСписка(ЦеныНоменклатурыПоставщиков).Элементы,
"ЦеныНоменклатурыОтборПоПериоду", ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ);
ОбщегоНазначенияКлиентСервер.ДобавитьЭлементКомпоновки(ГруппаЭлементовОтбора, "Период", ВидСравненияКомпоновкиДанных.БольшеИлиРавно,
ПериодЦеныНоменклатурыПоставщика.ДатаНачала, "Период", ЗначениеЗаполнено(ПериодЦеныНоменклатурыПоставщика.ДатаНачала));
ОбщегоНазначенияКлиентСервер.ДобавитьЭлементКомпоновки(ГруппаЭлементовОтбора, "Период",
ВидСравненияКомпоновкиДанных.МеньшеИлиРавно, ПериодЦеныНоменклатурыПоставщика.ДатаОкончания, "Период",
ЗначениеЗаполнено(ПериодЦеныНоменклатурыПоставщика.ДатаОкончания));
КонецПроцедуры
&НаСервере
Процедура ПартнерПриИзмененииНаСервере()
ОбщегоНазначенияКлиентСервер.УдалитьЭлементыГруппыОтбораДинамическогоСписка(ЦеныНоменклатурыПоставщиков,"Партнер","Партнер");
ОбщегоНазначенияКлиентСервер.ДобавитьЭлементКомпоновки(
ОбщегоНазначенияУТКлиентСервер.ПолучитьОтборДинамическогоСписка(ЦеныНоменклатурыПоставщиков), "Партнер",
ВидСравненияКомпоновкиДанных.Равно, Партнер, "Партнер", ЗначениеЗаполнено(Партнер));
КонецПроцедуры
&НаСервере
Процедура ВидЦеныПоставщикаПриИзмененииНаСервере()
ОбщегоНазначенияКлиентСервер.УдалитьЭлементыГруппыОтбораДинамическогоСписка(ЦеныНоменклатурыПоставщиков,"ВидЦеныПоставщика","ВидЦеныПоставщика");
ОбщегоНазначенияКлиентСервер.ДобавитьЭлементКомпоновки(
ОбщегоНазначенияУТКлиентСервер.ПолучитьОтборДинамическогоСписка(ЦеныНоменклатурыПоставщиков), "ВидЦеныПоставщика",
ВидСравненияКомпоновкиДанных.Равно, ВидЦеныПоставщика, "ВидЦеныПоставщика", ЗначениеЗаполнено(ВидЦеныПоставщика));
КонецПроцедуры
#КонецОбласти
#КонецОбласти