#Область ОписаниеПеременных
&НаКлиенте
Перем ОбновитьИнтерфейс;
#КонецОбласти
#Область ОбработчикиСобытийФормы
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Свойство("АвтоТест") Тогда
Возврат;
КонецЕсли;
СоставНабораКонстантФормы = ОбщегоНазначенияУТ.ПолучитьСтруктуруНабораКонстант(НаборКонстант);
ВнешниеРодительскиеКонстанты = НастройкиСистемыПовтИсп.ПолучитьСтруктуруРодительскихКонстант(СоставНабораКонстантФормы);
РежимРаботы = Новый Структура;
ВнешниеРодительскиеКонстанты.Вставить("ИспользоватьВерсионированиеОбъектов");
ВнешниеРодительскиеКонстанты.Вставить("ИспользоватьСинхронизациюДанных");
ВнешниеРодительскиеКонстанты.Вставить("ИспользоватьНесколькоСкладов");
ВнешниеРодительскиеКонстанты.Вставить("НоваяАрхитектураВзаиморасчетов");
ВнешниеРодительскиеКонстанты.Вставить("ИспользоватьАвтоматическиеСкидкиВПродажах");
ВнешниеРодительскиеКонстанты.Вставить("ИспользоватьСоглашенияСКлиентами");
ВнешниеРодительскиеКонстанты.Вставить("ИспользоватьПроизводство");
ВнешниеРодительскиеКонстанты.Вставить("ИспользоватьУправлениеПроизводством");
ВнешниеРодительскиеКонстанты.Вставить("ИспользоватьУправлениеПроизводством2_2");
ВнешниеРодительскиеКонстанты.Вставить("ИспользоватьУправлениеСделками");
ВнешниеРодительскиеКонстанты.Вставить("ВестиСведенияДляДекларацийПоАлкогольнойПродукции");
ВнешниеРодительскиеКонстанты.Вставить("ИспользоватьОбособленноеОбеспечениеЗаказов");
ВнешниеРодительскиеКонстанты.Вставить("ФормироватьФинансовыйРезультат");
ВнешниеРодительскиеКонстанты.Вставить("ИспользоватьПередачуНаОтветственноеХранениеСПравомПродажи");
ВнешниеРодительскиеКонстанты.Вставить("ИспользоватьОказаниеАгентскихУслугПриЗакупке");
ВнешниеРодительскиеКонстанты.Вставить("ВариантОбособленияТоваровВПродажах");
ВнешниеРодительскиеКонстанты.Вставить("ИспользоватьОтветственноеХранениеВПроцессеЗакупки");
ВнешниеРодительскиеКонстанты.Вставить("ИспользоватьМобильноеПриложение1СЗаказыКлиентов");
РежимРаботы.Вставить("СоставНабораКонстантФормы", Новый ФиксированнаяСтруктура(СоставНабораКонстантФормы));
РежимРаботы.Вставить("ВнешниеРодительскиеКонстанты", Новый ФиксированнаяСтруктура(ВнешниеРодительскиеКонстанты));
РежимРаботы = Новый ФиксированнаяСтруктура(РежимРаботы);
УстановитьДоступность();
НастройкиСистемыЛокализация.ПриСозданииНаСервере_Продажи(ЭтаФорма);
КомментарийИспользованияДоговоровПриКомиссионнойПродаже = СтрШаблон(НСтр("ru='— включена опция ""Комиссионные продажи %1""'"),
КомиссионнаяТорговляСервер.ПостфиксСхемыКомиссии25());
Элементы.ПредупреждениеИспользоватьДоговорыСКлиентамиКомиссионныеПродажи.Заголовок = КомментарийИспользованияДоговоровПриКомиссионнойПродаже;
КомментарийКомиссии = СтрШаблон(
НСтр("ru='Возможность осуществления комиссионных продаж %1 доступна при использовании соглашений с клиентами.'"),
КомиссионнаяТорговляСервер.ПостфиксСхемыКомиссии20());
Элементы.КомментарийИспользоватьКомиссиюПриПродажах.Заголовок = КомментарийКомиссии;
КомментарийКомиссии = СтрШаблон(
НСтр("ru='Возможность осуществления комиссионных продаж %1 доступна при использовании договоров с клиентами.'"),
КомиссионнаяТорговляСервер.ПостфиксСхемыКомиссии25());
Элементы.КомментарийИспользоватьКомиссиюПриПродажаБезДоговора.Заголовок = КомментарийКомиссии;
Элементы.РежимВыбораКомиссионныхПродаж.Подсказка = КомиссионнаяТорговляСервер.ПодсказкаПриВыбореВерсииКомиссионнойТорговли();
ГруппаДоступаПартнераПриАвтоматическомСозданииУстановитьВидимость();
КонецПроцедуры
&НаКлиенте
Процедура ПриЗакрытии(ЗавершениеРаботы)
Если ЗавершениеРаботы Тогда
Возврат;
КонецЕсли;
ОбновитьИнтерфейсПрограммы();
КонецПроцедуры
&НаСервере
Процедура ПриЧтенииНаСервере(ТекущийОбъект)
ЗначенияПоУмолчанию = Новый Структура;
ЗначенияПоУмолчанию.Вставить(Метаданные.Константы.ОперацияПриЗакрытииКассовойСмены.Имя
, ПредопределенноеЗначение("Перечисление.ОперацииПриЗакрытииКассовойСмены.Нет"));
НастройкиСистемыЛокализация.ПриЧтенииНаСервере_Продажи(ЭтотОбъект);
ОбщегоНазначенияУТКлиентСервер.СохранитьЗначенияДоИзменения(ЭтотОбъект);
КонецПроцедуры
&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
Если ИмяСобытия <> "Запись_НаборКонстант" Тогда
Возврат;
КонецЕсли;
Если РежимРаботы.ВнешниеРодительскиеКонстанты.Свойство(Источник)
ИЛИ (ТипЗнч(Параметр) = Тип("Структура")
И ОбщегоНазначенияУТКлиентСервер.ПолучитьОбщиеКлючиСтруктур(
Параметр, РежимРаботы.ВнешниеРодительскиеКонстанты).Количество() > 0) Тогда
ЭтаФорма.Прочитать();
УстановитьДоступность();
КонецЕсли;
Если Источник = ЭтаФорма Тогда
Если Параметр.Свойство("Элемент") Тогда
Подключаемый_ПриИзмененииРеквизита(Параметр.Элемент, Истина, Истина);
КонецЕсли;
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиСобытийЭлементовШапкиФормы
&НаКлиенте
Процедура ИспользованиеСоглашенийСКлиентамиПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ИспользованиеСоглашенийСКлиентамиОчистка(Элемент, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
КонецПроцедуры
&НаКлиенте
Процедура ИспользоватьЗаказыКлиентовПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ИспользоватьКорректировкиРеализацийПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ИспользоватьСчетаНаОплатуКлиентамПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ВариантОбособленияТоваровВПродажахПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент, Истина);
КонецПроцедуры
&НаКлиенте
Процедура ВариантОбособленияТоваровВПродажахОчистка(Элемент, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
КонецПроцедуры
&НаКлиенте
Процедура ИспользоватьРеализациюПоНесколькимЗаказамПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ИспользоватьАктыВыполненныхРаботПоНесколькимЗаказамПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ИспользоватьКомиссиюПриПродажахПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ИспользоватьОказаниеАгентскихУслугПриЗакупкеПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ВариантОбособленияТоваровУслугАгентскаяСхемаПоЗакупкамПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент, Истина);
КонецПроцедуры
&НаКлиенте
Процедура ВариантОбособленияТоваровУслугАгентскаяСхемаПоЗакупкамОчистка(Элемент, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
КонецПроцедуры
&НаКлиенте
Процедура ИспользоватьОтгрузкуБезПереходаПраваСобственностиПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ИспользоватьЗаявкиНаВозвратТоваровОтКлиентовПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ИспользоватьСогласованиеЗаказовКлиентовПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ИспользоватьСогласованиеСоглашенийСКлиентамиПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ИспользоватьСогласованиеЗаявокНаВозвратТоваровОтКлиентовПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ИспользоватьРозничныеПродажиПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
ОбновитьДоступКПодключаемомуОборудованию();
Оповестить("Запись_НаборКонстант", Новый Структура, "ИспользоватьРозничныеПродажи");
КонецПроцедуры
&НаКлиенте
Процедура ИспользоватьНесколькоКассККМПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура НазначатьСкидкиПоКнопкеРасчетВЧекеККМПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент, Ложь);
КонецПроцедуры
&НаКлиенте
Процедура КоличествоДнейХраненияОтложенныхЧековПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент, Ложь);
КонецПроцедуры
&НаКлиенте
Процедура НеЗакрыватьЗаказыКлиентовБезПолнойОтгрузкиПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент, Ложь);
КонецПроцедуры
&НаКлиенте
Процедура НеЗакрыватьЗаказыКлиентовБезПолнойОплатыПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент, Ложь);
КонецПроцедуры
&НаКлиенте
Процедура ИспользоватьСтатусыРеализацийТоваровУслугПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ИспользоватьРасширенныеВозможностиЗаказаКлиентаПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ИспользоватьПричиныОтменыЗаказовКлиентовПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ИспользоватьСкладыВТабличнойЧастиДокументовПродажиПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура СтоимостьТоваровПриОценкеРентабельностиПродажиПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура НормативныйВидЦенПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ОперацияПриЗакрытииКассовойСменыОчистка(Элемент, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
КонецПроцедуры
&НаКлиенте
Процедура ОперацияПриЗакрытииКассовойСменыПриИзменении(Элемент)
ОповещениеОЗавершении = Новый ОписаниеОповещения("ОперацияПриЗакрытииКассовойСменыПриИзмененииЗавершение", ЭтотОбъект);
Если Не РозничныеПродажиКлиент.ЗапроситьПодтверждениеИзмененияОперацииПриЗакрытииКассовойСмены(ЭтотОбъект, ОповещениеОЗавершении) Тогда
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ОперацияПриЗакрытииКассовойСменыНачалоВыбора(Элемент, ДанныеВыбора, ВыборДобавлением, СтандартнаяОбработка)
ОбщегоНазначенияУТКлиентСервер.СохранитьЗначенияДоИзменения(ЭтотОбъект, Элементы.ОперацияПриЗакрытииКассовойСмены.Имя);
СтандартнаяОбработка = Ложь;
ДанныеВыбора = Новый СписокЗначений;
ДанныеВыбора.Добавить(ПредопределенноеЗначение("Перечисление.ОперацииПриЗакрытииКассовойСмены.АрхивацияЧековККМ"));
ДанныеВыбора.Добавить(ПредопределенноеЗначение("Перечисление.ОперацииПриЗакрытииКассовойСмены.УдалениеЧековККМ"));
КонецПроцедуры
&НаКлиенте
Процедура ИспользоватьЗапретОтгрузкиПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ИспользоватьПодарочныеСертификатыПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ИспользоватьАктыОРасхожденияхПослеОтгрузкиПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ИспользованиеЭтаповОплатыВПродажахПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ВедетсяРаботаЧерезТорговыхПредставителейПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ИспользованиеЗаданийТорговымПредставителямПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ИспользованиеЗаданийТорговымПредставителямОчистка(Элемент, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
КонецПроцедуры
&НаКлиенте
Процедура ДетализироватьЗаданияТорговымПредставителямПоНоменклатуреПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ИспользоватьПередачуНаОтветственноеХранениеСПравомПродажиПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура РежимИсполненияЗаказовПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ИспользоватьАктыРасхожденийПослеОтгрузкиПоОтгрузкамТоваровДавальцуПриИзменении(Элемент)
ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ИспользоватьАктыРасхожденийПослеПриемкиПоПриемкамТоваровДавальцаПриИзменении(Элемент)
ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ПечататьБумажныйЧекПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ПриИзмененииРеквизита(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ГруппаДоступаПартнераПриАвтоматическомСозданииПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ИспользоватьПродажуАгентскихУслугПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиКомандФормы
&НаКлиенте
Процедура ВключитьВерсионированиеЗаказовКлиентов(Команда)
Результат = Новый Структура;
СохранитьЗначениеРеквизита("ВключитьВерсионированиеЗаказовКлиентов", Результат);
Если Результат.Свойство("ВерсионированиеЗаказовКлиентовВключено") Тогда
Если Результат.ВерсионированиеЗаказовКлиентовВключено Тогда
Пояснение = НСтр("ru = 'Для заказов клиентов установлен вариант версионирования ""Версионировать при проведении""'");
Иначе
Пояснение = НСтр("ru = 'Для заказов клиентов версионирование уже было включено'");
КонецЕсли;
ПоказатьОповещениеПользователя(НСтр("ru = 'Версионирование включено'"),, Пояснение, БиблиотекаКартинок.Информация32);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ВключитьВерсионированиеЗаявокНаВозврат(Команда)
Результат = Новый Структура;
СохранитьЗначениеРеквизита("ВключитьВерсионированиеЗаявокНаВозврат", Результат);
Если Результат.Свойство("ВерсионированиеЗаявокНаВозвратВключено") Тогда
Если Результат.ВерсионированиеЗаявокНаВозвратВключено Тогда
Пояснение = НСтр("ru = 'Для заявок на возврат установлен вариант версионирования ""Версионировать при проведении""'");
Иначе
Пояснение = НСтр("ru = 'Дляаявок на возврат версионирование уже было включено'");
КонецЕсли;
ПоказатьОповещениеПользователя(НСтр("ru = 'Версионирование включено'"),, Пояснение, БиблиотекаКартинок.Информация32);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ВключитьВерсионированиеСоглашений(Команда)
Результат = Новый Структура;
СохранитьЗначениеРеквизита("ВключитьВерсионированиеСоглашений", Результат);
Если Результат.Свойство("ВерсионированиеСоглашенийВключено") Тогда
Если Результат.ВерсионированиеСоглашенийВключено Тогда
Пояснение = НСтр("ru = 'Для соглашений с клиентами установлен вариант версионирования ""Версионировать при проведении""'");
Иначе
Пояснение = НСтр("ru = 'Для соглашений с клиентами версионирование уже было включено'");
КонецЕсли;
ПоказатьОповещениеПользователя(НСтр("ru = 'Версионирование включено'"),, Пояснение, БиблиотекаКартинок.Информация32);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура НазначитьОтветственныхЗаСогласованиеЛогистическихУсловийДокументовПродажи(Команда)
ОткрытьФорму("РегистрСведений.ИсполнителиЗадач.Форма.ИсполнителиРолиСОбъектомАдресации",
Новый Структура("ОсновнойОбъектАдресации,Роль",
Неопределено,
ПредопределенноеЗначение("Справочник.РолиИсполнителей.СогласующийЛогистическиеУсловияПродаж")));
КонецПроцедуры
&НаКлиенте
Процедура НазначитьОтветственныхЗаСогласованиеФинансовыхУсловийДокументовПродажи(Команда)
ОткрытьФорму("РегистрСведений.ИсполнителиЗадач.Форма.ИсполнителиРолиСОбъектомАдресации",
Новый Структура("ОсновнойОбъектАдресации,Роль",
Неопределено,
ПредопределенноеЗначение("Справочник.РолиИсполнителей.СогласующийФинансовыеУсловияПродаж")));
КонецПроцедуры
&НаКлиенте
Процедура НазначитьОтветственныхЗаСогласованиеЦеновыхУсловийДокументовПродажи(Команда)
ОткрытьФорму("РегистрСведений.ИсполнителиЗадач.Форма.ИсполнителиРолиСОбъектомАдресации",
Новый Структура("ОсновнойОбъектАдресации,Роль",
Неопределено,
ПредопределенноеЗначение("Справочник.РолиИсполнителей.СогласующийЦеновыеУсловияПродаж")));
КонецПроцедуры
&НаКлиенте
Процедура НазначитьОтветственныхЗаСогласованиеЗаявокНаВозврат(Команда)
ОткрытьФорму("РегистрСведений.ИсполнителиЗадач.Форма.ИсполнителиРолиСОбъектомАдресации",
Новый Структура("ОсновнойОбъектАдресации,Роль",
Неопределено,
ПредопределенноеЗначение("Справочник.РолиИсполнителей.СогласующийЗаявкиНаВозвратТоваровОтКлиентов")));
КонецПроцедуры
&НаКлиенте
Процедура НазначитьОтветственныхЗаСогласованиеКоммерческихУсловийДокументовПродажи(Команда)
ОткрытьФорму("РегистрСведений.ИсполнителиЗадач.Форма.ИсполнителиРолиСОбъектомАдресации",
Новый Структура("ОсновнойОбъектАдресации,Роль",
Неопределено,
ПредопределенноеЗначение("Справочник.РолиИсполнителей.СогласующийКоммерческиеУсловияПродаж")));
КонецПроцедуры
&НаКлиенте
Процедура ОткрытьНастройкиПродавцов(Команда)
ОткрытьФорму("Справочник.НастройкиПродажДляПользователей.ФормаСписка", , ЭтаФорма);
КонецПроцедуры
&НаКлиенте
Процедура ОткрытьНастройкиПечатиОбъектов(Команда)
ОткрытьФорму("РегистрСведений.НастройкиПечатиОбъектов.ФормаСписка", , ЭтаФорма);
КонецПроцедуры
&НаКлиенте
Процедура ОткрытьШаблоныЭтикетокИЦенников(Команда)
ОткрытьФорму("Справочник.ШаблоныЭтикетокИЦенников.ФормаСписка", , ЭтаФорма);
КонецПроцедуры
&НаКлиенте
Процедура ДополнительнаяКолонкаПечатныхФормДокументовПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент, Ложь);
КонецПроцедуры
&НаКлиенте
Процедура ДополнительнаяКолонкаПечатныхФормДокументовОчистка(Элемент, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
КонецПроцедуры
&НаКлиенте
Процедура ИспользоватьШтрихкодированиеПечатныхФормОбъектовПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент, Ложь);
КонецПроцедуры
&НаКлиенте
Процедура НаименованиеДляПечатиВидовНоменклатурыПриИзменении(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент, Ложь);
КонецПроцедуры
&НаКлиенте
Процедура ОтображениеСкидокВПечатныхФормахДокументовПродажи(Элемент)
Подключаемый_ПриИзмененииРеквизита(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ОтображениеСкидокВПечатныхФормахДокументовПродажиОчистка(Элемент, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
#Область Клиент
&НаКлиенте
Процедура Подключаемый_ПриИзмененииРеквизита(Элемент, ОбновлятьИнтерфейс = Истина, ВнешнееИзменение = Ложь)
Если НЕ ВнешнееИзменение Тогда
НастройкиСистемыКлиентЛокализация.ПриИзмененииРеквизита_Продажи(
Элемент,
ЭтаФорма);
КонецЕсли;
КонстантаИмя = ПриИзмененииРеквизитаСервер(Элемент.Имя);
Если ОбновлятьИнтерфейс Тогда
ОбновитьИнтерфейс = Истина;
ПодключитьОбработчикОжидания("ОбновитьИнтерфейсПрограммы", 2, Истина);
КонецЕсли;
Если КонстантаИмя <> "" Тогда
Оповестить("Запись_НаборКонстант", Новый Структура, КонстантаИмя);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ОбработкаНавигационнойСсылкиФормы(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
НастройкиСистемыКлиентЛокализация.ОбработкаНавигационнойСсылкиФормы_Продажи(Элемент,
НавигационнаяСсылкаФорматированнойСтроки,
СтандартнаяОбработка,
ЭтаФорма);
КонецПроцедуры
&НаКлиенте
Процедура ОбновитьИнтерфейсПрограммы()
Если ОбновитьИнтерфейс = Истина Тогда
ОбновитьИнтерфейс = Ложь;
ОбщегоНазначенияКлиент.ОбновитьИнтерфейсПрограммы();
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#Область ВызовСервера
&НаСервере
Процедура ОбновитьДоступКПодключаемомуОборудованию()
Если НаборКонстант.ИспользоватьРозничныеПродажи Тогда
Возврат;
КонецЕсли;
Константы.ИспользоватьОбменСПодключаемымОборудованиемOffline.Установить(Ложь);
КонецПроцедуры
&НаСервере
Функция ПриИзмененииРеквизитаСервер(ИмяЭлемента)
РеквизитПутьКДанным = Элементы[ИмяЭлемента].ПутьКДанным;
КонстантаИмя = СохранитьЗначениеРеквизита(РеквизитПутьКДанным, Новый Структура);
УстановитьДоступность(РеквизитПутьКДанным);
ОбновитьПовторноИспользуемыеЗначения();
Возврат КонстантаИмя;
КонецФункции
#КонецОбласти
#Область Сервер
&НаСервере
Функция СохранитьЗначениеРеквизита(РеквизитПутьКДанным, Результат)
Если РеквизитПутьКДанным = "" Тогда
Возврат "";
КонецЕсли;
КонстантаИмя = "";
Если СтрНачинаетсяС(НРег(РеквизитПутьКДанным), НРег("НаборКонстант.")) Тогда
ЧастиИмени = СтрРазделить(РеквизитПутьКДанным, ".");
КонстантаИмя = ЧастиИмени[1];
Иначе
Если РеквизитПутьКДанным = "ВключитьВерсионированиеЗаказовКлиентов"
ИЛИ РеквизитПутьКДанным = "ВключитьВерсионированиеЗаявокНаВозврат"
ИЛИ РеквизитПутьКДанным = "ВключитьВерсионированиеСоглашений" Тогда
НаборКонстант.ИспользоватьВерсионированиеОбъектов = Истина;
КонстантаИмя = "ИспользоватьВерсионированиеОбъектов";
КонецЕсли;
КонецЕсли;
Если РеквизитПутьКДанным = "РежимИсполненияЗаказов" Тогда
Если РежимИсполненияЗаказов = 1 Тогда
Константы.ИспользоватьРасширенныеВозможностиЗаказаКлиента.Установить(Истина);
Константы.ИспользоватьПострочнуюОтгрузкуВЗаказеКлиента.Установить(Ложь);
НаборКонстант.ИспользоватьРасширенныеВозможностиЗаказаКлиента = Истина;
НаборКонстант.ИспользоватьПострочнуюОтгрузкуВЗаказеКлиента = Ложь;
ИначеЕсли РежимИсполненияЗаказов = 2 Тогда
Константы.ИспользоватьРасширенныеВозможностиЗаказаКлиента.Установить(Истина);
Константы.ИспользоватьПострочнуюОтгрузкуВЗаказеКлиента.Установить(Истина);
НаборКонстант.ИспользоватьРасширенныеВозможностиЗаказаКлиента = Истина;
НаборКонстант.ИспользоватьПострочнуюОтгрузкуВЗаказеКлиента = Истина;
Иначе
Константы.ИспользоватьРасширенныеВозможностиЗаказаКлиента.Установить(Ложь);
Константы.ИспользоватьПострочнуюОтгрузкуВЗаказеКлиента.Установить(Ложь);
НаборКонстант.ИспользоватьРасширенныеВозможностиЗаказаКлиента = Ложь;
НаборКонстант.ИспользоватьПострочнуюОтгрузкуВЗаказеКлиента = Ложь;
КонецЕсли;
КонстантаИмя = "ИспользоватьРасширенныеВозможностиЗаказаКлиента";
КонецЕсли;
Если КонстантаИмя <> "" Тогда
КонстантаМенеджер = Константы[КонстантаИмя];
КонстантаЗначение = НаборКонстант[КонстантаИмя];
Если КонстантаМенеджер.Получить() <> КонстантаЗначение Тогда
КонстантаМенеджер.Установить(КонстантаЗначение);
КонецЕсли;
Если НастройкиСистемыПовтИсп.ЕстьПодчиненныеКонстанты(КонстантаИмя, КонстантаЗначение) Тогда
ЭтаФорма.Прочитать();
КонецЕсли;
КонецЕсли;
Если РеквизитПутьКДанным = "ВключитьВерсионированиеЗаказовКлиентов" Тогда
ОбъектыДляВерсионирования = Новый Соответствие;
Если НаборКонстант.ИспользоватьСогласованиеЗаказовКлиентов Тогда
ОбъектыДляВерсионирования.Вставить("Документ.ЗаказКлиента", "ВерсионироватьПриПроведении");
КонецЕсли;
Результат.Вставить("ВерсионированиеЗаказовКлиентовВключено",
ОбщегоНазначенияУТ.ВключитьВерсионированиеОбъектов(ОбъектыДляВерсионирования));
УстановитьДоступностьВерсионированияЗаказовКлиентов();
КонецЕсли;
Если РеквизитПутьКДанным = "ВключитьВерсионированиеЗаявокНаВозврат" Тогда
ОбъектыДляВерсионирования = Новый Соответствие;
Если НаборКонстант.ИспользоватьСогласованиеЗаявокНаВозвратТоваровОтКлиентов Тогда
ОбъектыДляВерсионирования.Вставить("Документ.ЗаявкаНаВозвратТоваровОтКлиента", "ВерсионироватьПриПроведении");
КонецЕсли;
Результат.Вставить("ВерсионированиеЗаявокНаВозвратВключено",
ОбщегоНазначенияУТ.ВключитьВерсионированиеОбъектов(ОбъектыДляВерсионирования));
УстановитьДоступностьВерсионированияЗаявокНаВозврат();
КонецЕсли;
Если РеквизитПутьКДанным = "ВключитьВерсионированиеСоглашений" Тогда
ОбъектыДляВерсионирования = Новый Соответствие;
Если НаборКонстант.ИспользоватьСогласованиеСоглашенийСКлиентами Тогда
ОбъектыДляВерсионирования.Вставить("Справочник.СоглашенияСКлиентами", "ВерсионироватьПриЗаписи");
КонецЕсли;
Результат.Вставить("ВерсионированиеСоглашенийВключено",
ОбщегоНазначенияУТ.ВключитьВерсионированиеОбъектов(ОбъектыДляВерсионирования));
УстановитьДоступностьВерсионированияСоглашений();
КонецЕсли;
НастройкиСистемыЛокализация.СохранитьЗначениеРеквизита_Продажи(КонстантаИмя, КонстантаЗначение, ЭтаФорма);
Возврат КонстантаИмя;
КонецФункции
&НаСервере
Процедура УстановитьДоступность(РеквизитПутьКДанным = "")
Если РеквизитПутьКДанным = "" Тогда
ЗначениеКонстанты = НаборКонстант.ИспользоватьНесколькоСкладов;
Элементы.ИспользоватьСкладыВТабличнойЧастиДокументовПродажи.Доступность = ЗначениеКонстанты;
Элементы.ГруппаКомментарийИспользоватьСкладыВТабличнойЧастиДокументовПродажи.Видимость = НЕ ЗначениеКонстанты;
Элементы.ГруппаСтраницыКомментарийСтоимостьТоваровПриОценкеРентабельностиПродажи.ТекущаяСтраница = Элементы.ГруппаКомментарийСтоимостьТоваровПриОценкеРентабельностиПродажи1;
ЗначениеКонстанты = НаборКонстант.ИспользоватьНесколькоВидовЦен;
Элементы.СтоимостьТоваровПриОценкеРентабельностиПродажи1.Доступность = ЗначениеКонстанты;
Элементы.СтоимостьТоваровПриОценкеРентабельностиПродажи2.Доступность = ЗначениеКонстанты;
Элементы.ГруппаКомментарийСтоимостьТоваровПриОценкеРентабельностиПродажи.Видимость = Не ЗначениеКонстанты;
Элементы.ОтображениеСкидокВПечатныхФормахДокументовПродажи.Доступность =
Константы.ИспользоватьАвтоматическиеСкидкиВПродажах.Получить()
ИЛИ Константы.ИспользоватьРучныеСкидкиВПродажах.Получить();
Элементы.ВариантОбособленияТоваровВПродажах.Видимость = Константы.ИспользоватьОбособленноеОбеспечениеЗаказов.Получить()
И Не ПолучитьФункциональнуюОпцию("УправлениеТорговлей");
ДоступноПроизводствоИзДавальческогоСырья = Ложь;
Элементы.ГруппаПроизводствоИзДавальческогоСырья2_5.Видимость = ДоступноПроизводствоИзДавальческогоСырья;
КонецЕсли;
Если РеквизитПутьКДанным = "НаборКонстант.ИспользованиеСоглашенийСКлиентами" ИЛИ РеквизитПутьКДанным = "" Тогда
ЗначениеКонстанты = НаборКонстант.ИспользоватьСоглашенияСКлиентами;
ИспользоватьКомиссиюПриПродажах = НаборКонстант.ИспользоватьКомиссиюПриПродажах;
ИспользоватьКомиссию20 = Константы.ИспользуетсяКомиссионнаяПродажа20.Получить();
ОбщегоНазначенияУТКлиентСервер.ОтображениеПредупрежденияПриРедактировании(
Элементы.ИспользованиеСоглашенийСКлиентами,
НаборКонстант.ИспользованиеСоглашенийСКлиентами <> Перечисления.ИспользованиеСоглашенийСКлиентами.НеИспользовать);
Элементы.ИспользоватьСогласованиеСоглашенийСКлиентами.Доступность = ЗначениеКонстанты;
Элементы.ГруппаКомментарийИспользоватьКомиссиюПриПродажах.Видимость = Не ЗначениеКонстанты
И НЕ НаборКонстант.ТолькоКомиссионныеПродажи25;
Элементы.ИспользоватьКомиссиюПриПродажах.Доступность = НаборКонстант.ИспользоватьДоговорыСКлиентами;
Элементы.ГруппаВариантаКомиссионныхПродаж.Видимость = ИспользоватьКомиссиюПриПродажах
И ЗначениеКонстанты И НЕ НаборКонстант.ТолькоКомиссионныеПродажи25 И ЗначениеКонстанты И ИспользоватьКомиссию20;
КонецЕсли;
Если РеквизитПутьКДанным = "НаборКонстант.ИспользоватьЗаказыКлиентов" ИЛИ РеквизитПутьКДанным = "" Тогда
ЗначениеКонстанты = НаборКонстант.ИспользоватьЗаказыКлиентов;
ЕстьОбменыСФормированиемДоговоровПоЗаказам =
Константы.ИспользоватьСинхронизациюДанных.Получить() И ОбменДаннымиУТУП.ЕстьОбменыСФормированиемДоговоровПоЗаказам();
Элементы.ИспользоватьРеализациюПоНесколькимЗаказам.Доступность = ЗначениеКонстанты И НЕ ЕстьОбменыСФормированиемДоговоровПоЗаказам;
Элементы.ИспользоватьАктыВыполненныхРаботПоНесколькимЗаказам.Доступность = ЗначениеКонстанты И НЕ ЕстьОбменыСФормированиемДоговоровПоЗаказам;
Элементы.ГруппаКомментарийИспользоватьРеализациюПоНесколькимЗаказам.Видимость = ЕстьОбменыСФормированиемДоговоровПоЗаказам;
Использовать1СЗаказы = Константы.ИспользоватьМобильноеПриложение1СЗаказыКлиентов.Получить();
ВедетсяРаботаЧерезТорговыхПредставителей = НаборКонстант.ВедетсяРаботаЧерезТорговыхПредставителей;
АгентскиеУслугиПоЗакупкеПоЗаказам = НаборКонстант.ИспользоватьОказаниеАгентскихУслугПриЗакупке
И НаборКонстант.ВариантОбособленияТоваровВПродажах = Перечисления.ВариантыОбособленияТоваровВПродажах.ЗаказКлиента;
Элементы.ИспользоватьЗаказыКлиентов.Доступность =
НЕ Использовать1СЗаказы И НЕ ВедетсяРаботаЧерезТорговыхПредставителей
И НЕ АгентскиеУслугиПоЗакупкеПоЗаказам;
Элементы.ГруппаКомментарийИспользоватьЗаказыПриАгентскойСхеме.Видимость = АгентскиеУслугиПоЗакупкеПоЗаказам;
Элементы.ГруппаКомментарийИспользоватьЗаказы.Видимость = ЗначениеКонстанты И (Использовать1СЗаказы ИЛИ ВедетсяРаботаЧерезТорговыхПредставителей);
КомментарийИспользоватьЗаказы = НСтр("ru='Невозможно отключение заказов клиентов, так как'")
+ ?(Использовать1СЗаказы И ВедетсяРаботаЧерезТорговыхПредставителей, ": ", " ")
+ ?(Использовать1СЗаказы, НСтр("ru='включена синхронизация данных с мобильным приложением ""1С:Заказы""'"), "")
+ ?(Использовать1СЗаказы И ВедетсяРаботаЧерезТорговыхПредставителей, ", ", ?(Использовать1СЗаказы,".", ""))
+ ?(ВедетсяРаботаЧерезТорговыхПредставителей, НСтр("ru='включено ведение работы через торговых представителей.'"), "");
Элементы.КомментарийИспользоватьЗаказы.Заголовок = КомментарийИспользоватьЗаказы;
МожноИспользоватьОказаниеАгентскихУслугПриЗакупке = (НаборКонстант.ВариантОбособленияТоваровВПродажах = Перечисления.ВариантыОбособленияТоваровВПродажах.ЗаказКлиента
ИЛИ НаборКонстант.ВариантОбособленияТоваровВПродажах = Перечисления.ВариантыОбособленияТоваровВПродажах.Договор
ИЛИ НаборКонстант.ВариантОбособленияТоваровВПродажах.Пустая())
И НаборКонстант.ИспользоватьДоговорыСКлиентами И Константы.ИспользоватьОтветственноеХранениеВПроцессеЗакупки.Получить();
Элементы.ГруппаКомментарийИспользоватьОказаниеАгентскихУслугПриЗакупке.Видимость = НЕ МожноИспользоватьОказаниеАгентскихУслугПриЗакупке;
Элементы.ИспользоватьОказаниеАгентскихУслугПриЗакупке.Доступность = МожноИспользоватьОказаниеАгентскихУслугПриЗакупке;
Если НЕ МожноИспользоватьОказаниеАгентскихУслугПриЗакупке Тогда
НаборКонстант.ИспользоватьОказаниеАгентскихУслугПриЗакупке = Ложь;
КонецЕсли;
МожноИспользоватьКомиссионныеПродажи = ?(НаборКонстант.ТолькоКомиссионныеПродажи25,
НаборКонстант.ИспользоватьДоговорыСКлиентами,
Истина);
Элементы.ГруппаКомментарийИспользоватьКомиссиюПриПродажаБезДоговора.Видимость = НЕ МожноИспользоватьКомиссионныеПродажи;
КомментарийКомиссии = СтрШаблон(
НСтр("ru='Возможность осуществления комиссионных продаж %1 доступна при использовании договоров с клиентами.'"),
КомиссионнаяТорговляСервер.ПостфиксСхемыКомиссии25());
Элементы.КомментарийИспользоватьКомиссиюПриПродажаБезДоговора.Заголовок = КомментарийКомиссии;
КонецЕсли;
Если РеквизитПутьКДанным = "НаборКонстант.ИспользоватьЗаказыКлиентов"
ИЛИ РеквизитПутьКДанным = "НаборКонстант.ИспользоватьЗаявкиНаВозвратТоваровОтКлиентов"
ИЛИ РеквизитПутьКДанным = "НаборКонстант.ИспользоватьРасширенныеВозможностиЗаказаКлиента"
ИЛИ РеквизитПутьКДанным = "РежимИсполненияЗаказов"
ИЛИ РеквизитПутьКДанным = "" Тогда
ИспользоватьРасширенныеВозможностиЗаказаКлиента = НаборКонстант.ИспользоватьРасширенныеВозможностиЗаказаКлиента;
Элементы.ИспользоватьРасширенныеВозможностиЗаказаКлиента.Доступность = НаборКонстант.ИспользоватьЗаказыКлиентов
ИЛИ НаборКонстант.ИспользоватьЗаявкиНаВозвратТоваровОтКлиентов;
Элементы.ИспользоватьСогласованиеЗаявокНаВозвратТоваровОтКлиентов.Доступность = ИспользоватьРасширенныеВозможностиЗаказаКлиента
И НаборКонстант.ИспользоватьЗаявкиНаВозвратТоваровОтКлиентов;
Элементы.ИспользоватьСогласованиеЗаказовКлиентов.Доступность = ИспользоватьРасширенныеВозможностиЗаказаКлиента
И НаборКонстант.ИспользоватьЗаказыКлиентов;
Элементы.НеЗакрыватьЗаказыКлиентовБезПолнойОтгрузки.Доступность = ИспользоватьРасширенныеВозможностиЗаказаКлиента;
Элементы.НеЗакрыватьЗаказыКлиентовБезПолнойОплаты.Доступность = ИспользоватьРасширенныеВозможностиЗаказаКлиента;
Элементы.ВариантОбособленияТоваровВПродажах.Доступность =
(НаборКонстант.ИспользоватьЗаказыКлиентов Или НаборКонстант.ИспользоватьЗаявкиНаВозвратТоваровОтКлиентов)
И Константы.ФормироватьФинансовыйРезультат.Получить();
Элементы.ИспользоватьПричиныОтменыЗаказовКлиентов.Доступность = ИспользоватьРасширенныеВозможностиЗаказаКлиента;
Элементы.ИспользоватьПострочнуюОтгрузкуВЗаказеКлиента.Доступность = ИспользоватьРасширенныеВозможностиЗаказаКлиента;
РежимИсполненияЗаказов = Число(НаборКонстант.ИспользоватьРасширенныеВозможностиЗаказаКлиента) + Число(НаборКонстант.ИспользоватьПострочнуюОтгрузкуВЗаказеКлиента);
РежимИсполненияЗаказовДоступность = НаборКонстант.ИспользоватьЗаказыКлиентов ИЛИ НаборКонстант.ИспользоватьЗаявкиНаВозвратТоваровОтКлиентов;
РежимИсполненияЗаказовДоступность = РежимИсполненияЗаказовДоступность ИЛИ (НаборКонстант.ИспользоватьОказаниеАгентскихУслугПриЗакупке
И НаборКонстант.ВариантОбособленияТоваровВПродажах = Перечисления.ВариантыОбособленияТоваровВПродажах.ЗаказКлиента);
Элементы.РежимИсполненияЗаказов.Доступность = РежимИсполненияЗаказовДоступность;
Элементы.РежимИсполненияЗаказов1.Доступность = РежимИсполненияЗаказовДоступность;
Элементы.РежимИсполненияЗаказов2.Доступность = РежимИсполненияЗаказовДоступность;
КонецЕсли;
Если РеквизитПутьКДанным = "НаборКонстант.ИспользоватьСогласованиеЗаказовКлиентов"
ИЛИ РеквизитПутьКДанным = "НаборКонстант.ИспользоватьСогласованиеСоглашенийСКлиентами"
ИЛИ РеквизитПутьКДанным = "НаборКонстант.ИспользоватьСогласованиеЗаявокНаВозвратТоваровОтКлиентов" ИЛИ РеквизитПутьКДанным = "" Тогда
ДоступностьРеквизитовСогласования =
НаборКонстант.ИспользоватьСогласованиеЗаказовКлиентов
ИЛИ НаборКонстант.ИспользоватьСогласованиеСоглашенийСКлиентами
ИЛИ НаборКонстант.ИспользоватьСогласованиеЗаявокНаВозвратТоваровОтКлиентов;
Элементы.НазначитьОтветственныхЗаСогласованиеЛогистическихУсловийДокументовПродажи.Доступность = ДоступностьРеквизитовСогласования;
Элементы.НазначитьОтветственныхЗаСогласованиеФинансовыхУсловийДокументовПродажи.Доступность = ДоступностьРеквизитовСогласования;
Элементы.НазначитьОтветственныхЗаСогласованиеЦеновыхУсловийДокументовПродажи.Доступность = ДоступностьРеквизитовСогласования;
Элементы.НазначитьОтветственныхЗаСогласованиеЗаявокНаВозврат.Доступность = НаборКонстант.ИспользоватьСогласованиеЗаявокНаВозвратТоваровОтКлиентов;
КонецЕсли;
Если РеквизитПутьКДанным = "НаборКонстант.ИспользоватьВерсионированиеОбъектов" ИЛИ РеквизитПутьКДанным = "" Тогда
УстановитьДоступностьВерсионированияДокументовПродажи();
КонецЕсли;
Если РеквизитПутьКДанным = "НаборКонстант.ИспользоватьСогласованиеЗаявокНаВозвратТоваровОтКлиентов" ИЛИ РеквизитПутьКДанным = "" Тогда
Элементы.НазначитьОтветственныхЗаСогласованиеЗаявокНаВозврат.Доступность = НаборКонстант.ИспользоватьСогласованиеЗаявокНаВозвратТоваровОтКлиентов;
КонецЕсли;
Если РеквизитПутьКДанным = "НаборКонстант.ИспользованиеСоглашенийСКлиентами"
ИЛИ РеквизитПутьКДанным = "НаборКонстант.ИспользоватьСогласованиеСоглашенийСКлиентами" Тогда
УстановитьДоступностьВерсионированияСоглашений();
КонецЕсли;
Если РеквизитПутьКДанным = "НаборКонстант.ИспользоватьЗаказыКлиентов"
ИЛИ РеквизитПутьКДанным = "НаборКонстант.ИспользоватьСогласованиеЗаказовКлиентов" Тогда
УстановитьДоступностьВерсионированияЗаказовКлиентов();
КонецЕсли;
Если РеквизитПутьКДанным = "НаборКонстант.ИспользоватьЗаявкиНаВозвратТоваровОтКлиентов"
ИЛИ РеквизитПутьКДанным = "НаборКонстант.ИспользоватьСогласованиеЗаявокНаВозвратТоваровОтКлиентов" Тогда
УстановитьДоступностьВерсионированияЗаявокНаВозврат();
КонецЕсли;
Если РеквизитПутьКДанным = "НаборКонстант.ИспользоватьРозничныеПродажи" ИЛИ РеквизитПутьКДанным = "" Тогда
ЗначениеКонстанты = НаборКонстант.ИспользоватьРозничныеПродажи;
Элементы.ОперацияПриЗакрытииКассовойСмены.Доступность = ЗначениеКонстанты;
Элементы.ИспользоватьПодарочныеСертификаты.Доступность = ЗначениеКонстанты;
Элементы.КоличествоДнейХраненияОтложенныхЧеков.Доступность = ЗначениеКонстанты;
Элементы.ИспользоватьНесколькоКассККМ.Доступность = ЗначениеКонстанты;
Элементы.КоличествоДнейХраненияЗаархивированныхЧеков.Доступность = (ЗначениеКонстанты И НаборКонстант.ОперацияПриЗакрытииКассовойСмены = Перечисления.ОперацииПриЗакрытииКассовойСмены.АрхивацияЧековККМ);
Элементы.НазначатьСкидкиПоКнопкеРасчетВЧекеККМ.Доступность = (ЗначениеКонстанты И НаборКонстант.ИспользоватьАвтоматическиеСкидкиВПродажах);
Элементы.ПечататьБумажныйЧек.Доступность = ЗначениеКонстанты;
КонецЕсли;
Если РеквизитПутьКДанным = "НаборКонстант.СтоимостьТоваровПриОценкеРентабельностиПродажи" ИЛИ РеквизитПутьКДанным = "" Тогда
ЗначениеКонстанты = НаборКонстант.СтоимостьТоваровПриОценкеРентабельностиПродажи;
Если ЗначениеКонстанты = Перечисления.СтоимостьТоваровПриОценкеРентабельностиПродажи.ПоРасчетнойСебестоимости Тогда
Элементы.ГруппаСтраницыНормативныйВидЦен.ТекущаяСтраница = Элементы.ГруппаНормативныйВидЦенГруппаПоРасчетнойСебестоимости;
ИначеЕсли ЗначениеКонстанты = Перечисления.СтоимостьТоваровПриОценкеРентабельностиПродажи.ПоНормативномуВидуЦен Тогда
Элементы.ГруппаСтраницыНормативныйВидЦен.ТекущаяСтраница = Элементы.ГруппаНормативныйВидЦенПоНормативномуВидуЦен;
КонецЕсли;
КонецЕсли;
Если РеквизитПутьКДанным = "НаборКонстант.ОперацияПриЗакрытииКассовойСмены" ИЛИ РеквизитПутьКДанным = "" Тогда
ЗначениеКонстанты = НаборКонстант.ОперацияПриЗакрытииКассовойСмены;
ИспользоватьРозничныеПродажи = НаборКонстант.ИспользоватьРозничныеПродажи;
Элементы.КоличествоДнейХраненияЗаархивированныхЧеков.Доступность = (ЗначениеКонстанты = Перечисления.ОперацииПриЗакрытииКассовойСмены.АрхивацияЧековККМ И ИспользоватьРозничныеПродажи);
КонецЕсли;
Если РеквизитПутьКДанным = "НаборКонстант.ИспользоватьСтатусыРеализацийТоваровУслуг" ИЛИ РеквизитПутьКДанным = "" Тогда
ЗначениеКонстанты = НаборКонстант.ИспользоватьСтатусыРеализацийТоваровУслуг;
Элементы.ИспользоватьОтгрузкуБезПереходаПраваСобственности.Доступность = ЗначениеКонстанты;
Элементы.ГруппаКомментарийИспользоватьОтгрузкуБезПереходаПраваСобственности.Видимость = Не ЗначениеКонстанты;
КонецЕсли;
Если РеквизитПутьКДанным = "НаборКонстант.ВедетсяРаботаЧерезТорговыхПредставителей" ИЛИ РеквизитПутьКДанным = "" Тогда
УстановитьДоступность("НаборКонстант.ИспользоватьЗаказыКлиентов");
КонецЕсли;
Если РеквизитПутьКДанным = "НаборКонстант.ИспользованиеЗаданийТорговымПредставителям" ИЛИ РеквизитПутьКДанным = "" Тогда
УстановитьДоступностьИспользованияЗаданий();
КонецЕсли;
Если РеквизитПутьКДанным = "РежимИсполненияЗаказов" ИЛИ РеквизитПутьКДанным = "" Тогда
ОбщегоНазначенияУТКлиентСервер.ОтображениеПредупрежденияПриРедактировании(
Элементы.РежимИсполненияЗаказов, РежимИсполненияЗаказов > 0);
ОбщегоНазначенияУТКлиентСервер.ОтображениеПредупрежденияПриРедактировании(
Элементы.РежимИсполненияЗаказов1, РежимИсполненияЗаказов > 1)
КонецЕсли;
Если РеквизитПутьКДанным = "НаборКонстант.ИспользованиеЭтаповОплатыВПродажах" ИЛИ РеквизитПутьКДанным = "" Тогда
ЗначениеКонстанты = НаборКонстант.ИспользованиеЭтаповОплатыВПродажах;
ОбщегоНазначенияУТКлиентСервер.ОтображениеПредупрежденияПриРедактировании(
Элементы.УпрощеннаяСхема, ЗначениеКонстанты <> Перечисления.ИспользованиеЭтаповОплаты.УпрощеннаяСхема);
ОбщегоНазначенияУТКлиентСервер.ОтображениеПредупрежденияПриРедактировании(
Элементы.РасширеннаяНастройка, ЗначениеКонстанты = Перечисления.ИспользованиеЭтаповОплаты.ГрафикиОплаты);
КонецЕсли;
Если РеквизитПутьКДанным = "НаборКонстант.ИспользоватьНесколькоКассККМ" ИЛИ РеквизитПутьКДанным = "" Тогда
ЗначениеКонстанты = НаборКонстант.ИспользоватьНесколькоКассККМ;
Если ЗначениеКонстанты Тогда
Элементы.ГруппаСтраницыКассыККМ.ТекущаяСтраница = Элементы.ГруппаПояснениеНесколькоКассККМ;
Иначе
Элементы.ГруппаСтраницыКассыККМ.ТекущаяСтраница = Элементы.ГруппаПояснениеОднаКассаККМ;
КонецЕсли;
КонецЕсли;
Если РеквизитПутьКДанным = "НаборКонстант.ВыводитьДопКолонкиНДС" ИЛИ РеквизитПутьКДанным = "" Тогда
Элементы.ВыводитьДопКолонкиНДС.Доступность = НаборКонстант.ИспользоватьУчетНДС;
КонецЕсли;
Если РеквизитПутьКДанным = "НаборКонстант.ИспользоватьОказаниеАгентскихУслугПриЗакупке"
ИЛИ РеквизитПутьКДанным = "НаборКонстант.ИспользоватьДоговорыСКлиентами"
ИЛИ РеквизитПутьКДанным = "НаборКонстант.ИспользоватьЗаказыКлиентов"
ИЛИ РеквизитПутьКДанным = "НаборКонстант.ИспользоватьЗаявкиНаВозвратТоваровОтКлиентов"
ИЛИ РеквизитПутьКДанным = "РежимИсполненияЗаказов"
ИЛИ РеквизитПутьКДанным = "НаборКонстант.ВариантОбособленияТоваровВПродажах"
ИЛИ РеквизитПутьКДанным = "ВариантОбособленияТоваровУслугАгентскаяСхемаПоЗакупкам"
ИЛИ РеквизитПутьКДанным = "НаборКонстант.ИспользоватьКомиссиюПриПродажах"
ИЛИ РеквизитПутьКДанным = "" Тогда
ЗначениеКонстанты = НаборКонстант.ИспользоватьОказаниеАгентскихУслугПриЗакупке;
ОбособлениеТоваровПодходит = НаборКонстант.ВариантОбособленияТоваровВПродажах = Перечисления.ВариантыОбособленияТоваровВПродажах.ЗаказКлиента
ИЛИ НаборКонстант.ВариантОбособленияТоваровВПродажах = Перечисления.ВариантыОбособленияТоваровВПродажах.Договор
ИЛИ НаборКонстант.ВариантОбособленияТоваровВПродажах.Пустая();
МожноИспользоватьОбособлениеПоЗаказам = НаборКонстант.ИспользоватьЗаказыКлиентов
И Константы.ИспользоватьОбособленноеОбеспечениеЗаказов.Получить()
И РежимИсполненияЗаказов = 2
И ОбособлениеТоваровПодходит;
МожноИспользоватьОказаниеАгентскихУслугПриЗакупке = НаборКонстант.ИспользоватьДоговорыСКлиентами
И Константы.ИспользоватьОтветственноеХранениеВПроцессеЗакупки.Получить()
И (ОбособлениеТоваровПодходит ИЛИ (Не НаборКонстант.ИспользоватьЗаказыКлиентов И Не НаборКонстант.ИспользоватьЗаявкиНаВозвратТоваровОтКлиентов));
Элементы.ГруппаКомментарийИспользоватьОказаниеАгентскихУслугПриЗакупке.Видимость = НЕ МожноИспользоватьОказаниеАгентскихУслугПриЗакупке;
Элементы.ИспользоватьОказаниеАгентскихУслугПриЗакупке.Доступность = МожноИспользоватьОказаниеАгентскихУслугПриЗакупке;
ЗначениеКонстанты = НаборКонстант.ИспользоватьОказаниеАгентскихУслугПриЗакупке;
Если ЗначениеКонстанты Тогда
Элементы.ВариантОбособленияТоваровВПродажах.ТолькоПросмотр = Истина;
Элементы.ВариантОбособленияТоваровУслугАгентскаяСхемаПоЗакупкам.Доступность = Истина;
Элементы.ВариантОбособленияТоваровВПродажах.СписокВыбора.Очистить();
Элементы.ВариантОбособленияТоваровУслугАгентскаяСхемаПоЗакупкам.СписокВыбора.Очистить();
ТекстПоЗаказуКлиента = НСтр("ru = 'По заказу клиента'");
ТекстПоДоговоруСКлиентом = НСтр("ru = 'По договору с клиентом'");
Если МожноИспользоватьОбособлениеПоЗаказам Тогда
Элементы.ВариантОбособленияТоваровВПродажах.СписокВыбора.Добавить(Перечисления.ВариантыОбособленияТоваровВПродажах.ЗаказКлиента, ТекстПоЗаказуКлиента);
Элементы.ВариантОбособленияТоваровВПродажах.СписокВыбора.Добавить(Перечисления.ВариантыОбособленияТоваровВПродажах.Договор, ТекстПоЗаказуКлиента);
Элементы.ВариантОбособленияТоваровУслугАгентскаяСхемаПоЗакупкам.СписокВыбора.Добавить(Перечисления.ВариантыОбособленияТоваровВПродажах.ЗаказКлиента, ТекстПоЗаказуКлиента);
Элементы.ВариантОбособленияТоваровУслугАгентскаяСхемаПоЗакупкам.СписокВыбора.Добавить(Перечисления.ВариантыОбособленияТоваровВПродажах.Договор, ТекстПоДоговоруСКлиентом);
Элементы.ВариантОбособленияТоваровУслугАгентскаяСхемаПоЗакупкам.ТолькоПросмотр = Ложь;
Элементы.ГруппаВариантОбособленияТоваровАгентскаяСхемаПоЗакупкам.Видимость = Ложь;
Элементы.ГруппаКомментарийИспользованияОбособленияПриВключеннойОпцииАгентскойЗакупки.Видимость = Истина;
ИначеЕсли НаборКонстант.ИспользоватьЗаказыКлиентов
ИЛИ НаборКонстант.ИспользоватьЗаявкиНаВозвратТоваровОтКлиентов Тогда
Элементы.ВариантОбособленияТоваровВПродажах.СписокВыбора.Добавить(Перечисления.ВариантыОбособленияТоваровВПродажах.Договор, ТекстПоЗаказуКлиента);
Элементы.ВариантОбособленияТоваровУслугАгентскаяСхемаПоЗакупкам.СписокВыбора.Добавить(Перечисления.ВариантыОбособленияТоваровВПродажах.Договор, ТекстПоДоговоруСКлиентом);
Элементы.ГруппаВариантОбособленияТоваровАгентскаяСхемаПоЗакупкам.Видимость = Истина;
Элементы.ВариантОбособленияТоваровУслугАгентскаяСхемаПоЗакупкам.ТолькоПросмотр = Истина;
Элементы.ГруппаКомментарийИспользованияОбособленияПриВключеннойОпцииАгентскойЗакупки.Видимость = Истина;
Иначе
Элементы.ВариантОбособленияТоваровВПродажах.СписокВыбора.Добавить(Перечисления.ВариантыОбособленияТоваровВПродажах.Договор," ");
Элементы.ВариантОбособленияТоваровУслугАгентскаяСхемаПоЗакупкам.СписокВыбора.Добавить(Перечисления.ВариантыОбособленияТоваровВПродажах.Договор, ТекстПоДоговоруСКлиентом);
Элементы.ГруппаВариантОбособленияТоваровАгентскаяСхемаПоЗакупкам.Видимость = Истина;
Элементы.ВариантОбособленияТоваровУслугАгентскаяСхемаПоЗакупкам.ТолькоПросмотр = Истина;
Элементы.ГруппаКомментарийИспользованияОбособленияПриВключеннойОпцииАгентскойЗакупки.Видимость = Ложь;
КонецЕсли;
РежимИсполненияЗаказовДоступность = (НаборКонстант.ИспользоватьЗаказыКлиентов
ИЛИ НаборКонстант.ИспользоватьЗаявкиНаВозвратТоваровОтКлиентов)
И НЕ (НаборКонстант.ВариантОбособленияТоваровВПродажах = Перечисления.ВариантыОбособленияТоваровВПродажах.ЗаказКлиента);
Элементы.РежимИсполненияЗаказов.Доступность = РежимИсполненияЗаказовДоступность;
Элементы.РежимИсполненияЗаказов1.Доступность = РежимИсполненияЗаказовДоступность;
Элементы.РежимИсполненияЗаказов2.Доступность = РежимИсполненияЗаказовДоступность;
Иначе
Элементы.ВариантОбособленияТоваровВПродажах.ТолькоПросмотр = Ложь;
Элементы.ГруппаВариантОбособленияТоваровАгентскаяСхемаПоЗакупкам.Видимость = Ложь;
Элементы.ГруппаВариантОбособленияТоваровАгентскаяСхемаПоЗакупкам.Видимость = Ложь;
Элементы.ГруппаКомментарийИспользованияОбособленияПриВключеннойОпцииАгентскойЗакупки.Видимость = Ложь;
Элементы.ВариантОбособленияТоваровВПродажах.СписокВыбора.Очистить();
Если Константы.ФормироватьФинансовыйРезультат.Получить() Тогда
Элементы.ВариантОбособленияТоваровВПродажах.СписокВыбора.Добавить(Перечисления.ВариантыОбособленияТоваровВПродажах.НаправлениеДеятельности);
КонецЕсли;
Элементы.ВариантОбособленияТоваровВПродажах.СписокВыбора.Добавить(Перечисления.ВариантыОбособленияТоваровВПродажах.ЗаказКлиента);
Элементы.ВариантОбособленияТоваровУслугАгентскаяСхемаПоЗакупкам.СписокВыбора.Очистить();
Элементы.ВариантОбособленияТоваровУслугАгентскаяСхемаПоЗакупкам.Доступность = Ложь;
РежимИсполненияЗаказовДоступность = НаборКонстант.ИспользоватьЗаказыКлиентов ИЛИ НаборКонстант.ИспользоватьЗаявкиНаВозвратТоваровОтКлиентов;
Элементы.РежимИсполненияЗаказов.Доступность = РежимИсполненияЗаказовДоступность;
Элементы.РежимИсполненияЗаказов1.Доступность = РежимИсполненияЗаказовДоступность;
Элементы.РежимИсполненияЗаказов2.Доступность = РежимИсполненияЗаказовДоступность;
КонецЕсли;
ИспользоватьДоговорыСКлиентами = НаборКонстант.ИспользоватьДоговорыСКлиентами;
ИспользоватьСоглашения = НаборКонстант.ИспользоватьСоглашенияСКлиентами;
ИспользоватьКомиссиюПриПродажах = НаборКонстант.ИспользоватьКомиссиюПриПродажах;
ИспользоватьКомиссию20 = Константы.ИспользуетсяКомиссионнаяПродажа20.Получить();
Элементы.ИспользоватьКомиссиюПриПродажах.Доступность = ИспользоватьДоговорыСКлиентами;
МожноВыбиратьВариантКомиссионныхПродаж = ИспользоватьКомиссиюПриПродажах
И НЕ НаборКонстант.ТолькоКомиссионныеПродажи25
И ИспользоватьСоглашения
И ИспользоватьДоговорыСКлиентами
И ИспользоватьКомиссию20;
Элементы.ГруппаВариантаКомиссионныхПродаж.Видимость = МожноВыбиратьВариантКомиссионныхПродаж;
Элементы.ГруппаКомментарийИспользоватьКомиссиюПриПродажаБезДоговора.Видимость = НЕ НаборКонстант.ИспользоватьДоговорыСКлиентами;
Элементы.РежимВыбораКомиссионныхПродаж.СписокВыбора.Очистить();
Элементы.РежимВыбораКомиссионныхПродаж.СписокВыбора.Добавить(Ложь, КомиссионнаяТорговляСервер.ПостфиксСхемыКомиссии25());
Элементы.РежимВыбораКомиссионныхПродаж.СписокВыбора.Добавить(Истина,
КомиссионнаяТорговляСервер.ПостфиксСхемыКомиссии20() + "/" + КомиссионнаяТорговляСервер.ПостфиксСхемыКомиссии25());
КонецЕсли;
Если РеквизитПутьКДанным = "НаборКонстант.ИспользоватьПродажуАгентскихУслуг"
ИЛИ РеквизитПутьКДанным = "НаборКонстант.ИспользоватьКомиссиюПриЗакупках"
ИЛИ РеквизитПутьКДанным = "" Тогда
ВиднаГруппаКомментарийИспользоватьКомиссионныеЗакупки = НаборКонстант.ИспользоватьПродажуАгентскихУслуг И НаборКонстант.ИспользоватьКомиссиюПриЗакупках;
Элементы.ГруппаКомментарийИспользоватьКомиссионныеЗакупки.Видимость = ВиднаГруппаКомментарийИспользоватьКомиссионныеЗакупки;
Элементы.ИспользоватьКомиссиюПриЗакупках.Доступность = НЕ ВиднаГруппаКомментарийИспользоватьКомиссионныеЗакупки;
КонецЕсли;
Если РеквизитПутьКДанным = "НаборКонстант.ИспользоватьПередачуНаОтветственноеХранениеСПравомПродажи"
Или РеквизитПутьКДанным = "" Тогда
ЗначениеКонстанты = НаборКонстант.ИспользоватьПередачуНаОтветственноеХранениеСПравомПродажи;
Элементы.АктПослеПередачиХранителю.Видимость = ЗначениеКонстанты;
КонецЕсли;
Если РеквизитПутьКДанным = "НаборКонстант.ИспользоватьДоговорыСКлиентами"
Или РеквизитПутьКДанным = "НаборКонстант.ИспользоватьПередачуНаОтветственноеХранениеСПравомПродажи"
Или РеквизитПутьКДанным = "НаборКонстант.ИспользоватьОказаниеАгентскихУслугПриЗакупке"
Или РеквизитПутьКДанным = "НаборКонстант.ИспользоватьСоглашенияСКлиентами"
Или РеквизитПутьКДанным = "НаборКонстант.ИспользоватьКомиссиюПриПродажах"
Или РеквизитПутьКДанным = "НаборКонстант.ИспользоватьОтгрузкуБезПереходаПраваСобственности"
Или РеквизитПутьКДанным = "" Тогда
ЗначениеКонстантыИспользоватьДоговорыСКлиентами = НаборКонстант.ИспользоватьДоговорыСКлиентами;
ЗначениеКонстантыОтветственногоХранения = НаборКонстант.ИспользоватьПередачуНаОтветственноеХранениеСПравомПродажи;
ЗначениеКонстантыИспользованиеАгентскойЗакупки = НаборКонстант.ИспользоватьОказаниеАгентскихУслугПриЗакупке;
ЗначениеКонстантыКомиссионныхПродаж = НаборКонстант.ИспользоватьКомиссиюПриПродажах;
ЗначениеКонстантыИспользоватьОтгрузкуБезППС = НаборКонстант.ИспользоватьОтгрузкуБезПереходаПраваСобственности;
ИспользуетсяКомиссионнаяПродажаПоДоговорам = ЗначениеКонстантыКомиссионныхПродаж И ЗначениеКонстантыИспользоватьДоговорыСКлиентами;
ДоступноРедактированиеДоговорыСКлиентами =
Не ЗначениеКонстантыОтветственногоХранения
И Не ЗначениеКонстантыИспользованиеАгентскойЗакупки
И Не ЗначениеКонстантыИспользоватьОтгрузкуБезППС
И Не ИспользуетсяКомиссионнаяПродажаПоДоговорам;
Элементы.ИспользоватьДоговорыСКлиентами.Доступность = ДоступноРедактированиеДоговорыСКлиентами;
Элементы.ГруппаИспользоватьДоговорыСКлиентамиПредупреждение.Видимость =
ЗначениеКонстантыИспользоватьДоговорыСКлиентами
И Не ДоступноРедактированиеДоговорыСКлиентами;
ТекстКомментария = НСтр("ru = 'Невозможно отключение договоров с клиентами, так как:'");
ТекстКомментария = ТекстКомментария
+ ?(ЗначениеКонстантыОтветственногоХранения,
Символы.ПС + НСтр("ru = '— включена опция ""Передача на ответственное хранение с правом продажи""'"),
"");
ТекстКомментария = ТекстКомментария
+ ?(ЗначениеКонстантыИспользованиеАгентскойЗакупки,
Символы.ПС + НСтр("ru = '— включена опция ""Оказание агентских услуг по продаже""'"),
"");
ТекстКомментария = ТекстКомментария
+ ?(ИспользуетсяКомиссионнаяПродажаПоДоговорам,
Символы.ПС + Элементы.ПредупреждениеИспользоватьДоговорыСКлиентамиКомиссионныеПродажи.Заголовок,
"");
ТекстКомментария = ТекстКомментария
+ ?(ЗначениеКонстантыИспользоватьОтгрузкуБезППС,
Символы.ПС + НСтр("ru = '— включена опция ""Отгрузка без перехода права собственности""'"),
"");
Элементы.КомментарийИспользоватьДоговорыСКлиентамиПредупреждение.Заголовок = ТекстКомментария;
КонецЕсли;
Если РеквизитПутьКДанным = "" Тогда
ЗначениеКонстанты = Константы.ИспользоватьОтветственноеХранениеВПроцессеЗакупки.Получить();
Элементы.АктРасхожденийПослеОтгрузкиПоОтгрузкамТоваровСХранения.Видимость = ЗначениеКонстанты;
КонецЕсли;
ОбменДаннымиУТУП.УстановитьДоступностьНастроекУзлаИнформационнойБазы(ЭтотОбъект);
ОтображениеПредупрежденияПриРедактировании(РеквизитПутьКДанным);
НастройкиСистемыЛокализация.УстановитьДоступность_Продажи(РеквизитПутьКДанным, ЭтотОбъект);
КонецПроцедуры
&НаСервере
Процедура ОтображениеПредупрежденияПриРедактировании(РеквизитПутьКДанным)
СтруктураКонстант = Новый Структура(
"ИспользоватьДоговорыСКлиентами,
|ИспользоватьЗаказыКлиентов,
|ИспользоватьЗаявкиНаВозвратТоваровОтКлиентов,
|ИспользоватьКомиссиюПриПродажах,
|ИспользоватьЗапретОтгрузки,
|ИспользоватьПодарочныеСертификаты,
|ИспользоватьРасширенныеВозможностиЗаказаКлиента,
|ИспользоватьПострочнуюОтгрузкуВЗаказеКлиента,
|ИспользоватьСтатусыРеализацийТоваровУслуг,
|ИспользоватьПередачуНаОтветственноеХранениеСПравомПродажи,
|ИспользоватьОтгрузкуБезПереходаПраваСобственности");
НастройкиСистемыЛокализация.ОтображениеПредупрежденияПриРедактировании_Продажи(СтруктураКонстант);
Для Каждого КлючИЗначение Из СтруктураКонстант Цикл
ОбщегоНазначенияУТКлиентСервер.ОтображениеПредупрежденияПриРедактировании(
Элементы[КлючИЗначение.Ключ],
НаборКонстант[КлючИЗначение.Ключ]);
КонецЦикла;
КонецПроцедуры
&НаСервере
Процедура ГруппаДоступаПартнераПриАвтоматическомСозданииУстановитьВидимость()
Элементы.ГруппаДоступаПартнераПриАвтоматическомСоздании.Видимость = Константы.АвтоматическиСоздаватьПартнеровПриОтправкеЭлектронногоЧекаПокупателю.Получить();
КонецПроцедуры
#КонецОбласти
#Область Прочие
&НаСервере
Процедура УстановитьДоступностьВерсионированияДокументовПродажи()
УстановитьДоступностьВерсионированияЗаказовКлиентов();
УстановитьДоступностьВерсионированияЗаявокНаВозврат();
УстановитьДоступностьВерсионированияСоглашений();
КонецПроцедуры
&НаСервере
Процедура УстановитьДоступностьВерсионированияЗаказовКлиентов()
ИспользоватьВерсионированиеОбъекта = ОбщегоНазначенияУТ.ИспользоватьВерсионированиеОбъекта("Документ.ЗаказКлиента");
Элементы.ВключитьВерсионированиеЗаказовКлиентов.Доступность =
НаборКонстант.ИспользоватьСогласованиеЗаказовКлиентов
И (НЕ НаборКонстант.ИспользоватьВерсионированиеОбъектов
ИЛИ НЕ ИспользоватьВерсионированиеОбъекта);
Если НЕ ИспользоватьВерсионированиеОбъекта Тогда
Элементы.ВключитьВерсионированиеЗаказовКлиентов.Заголовок = НСтр("ru='Включить версионирование'");
Иначе
Элементы.ВключитьВерсионированиеЗаказовКлиентов.Заголовок = НСтр("ru='Версионирование включено'");
Элементы.ВключитьВерсионированиеЗаказовКлиентов.Шрифт = Новый Шрифт();
КонецЕсли;
КонецПроцедуры
&НаСервере
Процедура УстановитьДоступностьВерсионированияЗаявокНаВозврат()
ИспользоватьВерсионированиеОбъекта = ОбщегоНазначенияУТ.ИспользоватьВерсионированиеОбъекта("Документ.ЗаявкаНаВозвратТоваровОтКлиента");
Элементы.ВключитьВерсионированиеЗаявокНаВозврат.Доступность =
НаборКонстант.ИспользоватьСогласованиеЗаявокНаВозвратТоваровОтКлиентов
И (НЕ НаборКонстант.ИспользоватьВерсионированиеОбъектов
ИЛИ НЕ ИспользоватьВерсионированиеОбъекта);
Если НЕ ИспользоватьВерсионированиеОбъекта Тогда
Элементы.ВключитьВерсионированиеЗаявокНаВозврат.Заголовок = НСтр("ru='Включить версионирование'");
Иначе
Элементы.ВключитьВерсионированиеЗаявокНаВозврат.Заголовок = НСтр("ru='Версионирование включено'");
КонецЕсли;
КонецПроцедуры
&НаСервере
Процедура УстановитьДоступностьВерсионированияСоглашений()
ИспользоватьВерсионированиеОбъекта = ОбщегоНазначенияУТ.ИспользоватьВерсионированиеОбъекта("Справочник.СоглашенияСКлиентами");
Элементы.ВключитьВерсионированиеСоглашений.Доступность =
НаборКонстант.ИспользоватьСогласованиеСоглашенийСКлиентами
И (НЕ НаборКонстант.ИспользоватьВерсионированиеОбъектов
ИЛИ НЕ ИспользоватьВерсионированиеОбъекта);
Если НЕ ИспользоватьВерсионированиеОбъекта Тогда
Элементы.ВключитьВерсионированиеСоглашений.Заголовок = НСтр("ru='Включить версионирование'");
Иначе
Элементы.ВключитьВерсионированиеСоглашений.Заголовок = НСтр("ru='Версионирование включено'");
КонецЕсли;
КонецПроцедуры
&НаСервере
Процедура УстановитьДоступностьИспользованияЗаданий()
Элементы.ДетализироватьЗаданияТорговымПредставителямПоНоменклатуре.Доступность =
НаборКонстант.ИспользованиеЗаданийТорговымПредставителям <> Перечисления.ИспользованиеЗаданийТорговымПредставителям.НеИспользуются;
КонецПроцедуры
&НаКлиенте
Процедура ОперацияПриЗакрытииКассовойСменыПриИзмененииЗавершение(РезультатВопроса, ДополнительныеПараметры) Экспорт
Если РезультатВопроса = КодВозвратаДиалога.Да Тогда
Подключаемый_ПриИзмененииРеквизита(Элементы.ОперацияПриЗакрытииКассовойСмены);
Иначе
НаборКонстант.ОперацияПриЗакрытииКассовойСмены = ОбщегоНазначенияУТКлиентСервер.ПолучитьЗначениеДоИзменения(ЭтотОбъект, Элементы.ОперацияПриЗакрытииКассовойСмены.Имя);
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#КонецОбласти