Группы настроек фин. учета расчетов / Форма элемента / Модуль формы

файл

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

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
	
	Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа.
		Возврат;
	КонецЕсли;

	Если Параметры.Свойство("ПараметрыВыбора") Тогда
		Справочники.ГруппыФинансовогоУчетаРасчетов.ПреобразоватьОтборПараметровВыбора(Параметры.ПараметрыВыбора);
	КонецЕсли;

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

&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
	

	//++ НЕ УТ
	НастройкаСчетовУчетаКлиент.ЗаконченаНастройкаСчетовУчета(ЭтотОбъект, ИмяСобытия, Параметр);
	//-- НЕ УТ
	Возврат; // В УТ обработчик пустой
	
КонецПроцедуры

&НаКлиенте
Процедура ПослеЗаписи(ПараметрыЗаписи)

	МодификацияКонфигурацииКлиентПереопределяемый.ПослеЗаписи(ЭтаФорма, ПараметрыЗаписи);

КонецПроцедуры

&НаСервере
Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)

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

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

&НаСервере
Процедура ПослеЗаписиНаСервере(ТекущийОбъект, ПараметрыЗаписи)

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

&НаСервере
Процедура ПриЗаписиНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
	
	Если Отказ Тогда
		Возврат;
	КонецЕсли;
	
	//++ НЕ УТ
	НастройкаСчетовУчетаСервер.ПриЗаписиОбъектаНастройкиСчетовУчета(ЭтотОбъект, Отказ, ТекущийОбъект, ПараметрыЗаписи);
	//-- НЕ УТ
	
КонецПроцедуры

&НаСервере
Процедура ОбработкаПроверкиЗаполненияНаСервере(Отказ, ПроверяемыеРеквизиты)
	
	Если Отказ Тогда
		Возврат;
	КонецЕсли;
	
	//++ НЕ УТ
	НастройкаСчетовУчетаСервер.ОбработкаПроверкиЗаполнения(ЭтотОбъект, Отказ, ПроверяемыеРеквизиты);
	//-- НЕ УТ
	
КонецПроцедуры

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

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

&НаКлиенте
Процедура ПрименимостьПриИзменении(Элемент)
	
	Объект.РасчетыСКлиентами = Ложь;
	Объект.РасчетыСПоставщиками = Ложь;
	Объект.РасчетыСКомиссионерами = Ложь;
	Объект.РасчетыСКомитентами = Ложь;
	Объект.РасчетыСКомитентамиПоЗакупке = Ложь;
	Объект.РасчетыСПереработчиками = Ложь;
	Объект.РасчетыСДавальцами = Ложь;
	Объект.РасчетыСКредиторами = Ложь;
	Объект.РасчетыСДебиторами = Ложь;
	Объект.РасчетыСАрендодателями = Ложь;
	Объект.РасчетыПоБронированию = Ложь;
	
	Если Применимость = 1 Тогда
		Объект.РасчетыСКлиентами = Истина;
	ИначеЕсли Применимость = 2 Тогда
		Объект.РасчетыСПоставщиками = Истина;
	ИначеЕсли Применимость = 3 Тогда
		Объект.РасчетыСКомиссионерами = Истина;
	ИначеЕсли Применимость = 4 Тогда
		Объект.РасчетыСКомитентами = Истина;
	ИначеЕсли Применимость = 8 Тогда
		Объект.РасчетыСКомитентамиПоЗакупке = Истина;
	ИначеЕсли Применимость = 9 Тогда
		Объект.РасчетыСПереработчиками = Истина;
	ИначеЕсли Применимость = 11 Тогда
		Объект.РасчетыСДавальцами = Истина;
	ИначеЕсли Применимость = 5 Тогда
		Объект.РасчетыСКредиторами = Истина;
	ИначеЕсли Применимость = 6 Тогда
		Объект.РасчетыСДебиторами = Истина;
	ИначеЕсли Применимость = 7 Тогда
		Объект.РасчетыСАрендодателями = Истина;
	ИначеЕсли Применимость = 10 Тогда
		Объект.РасчетыПоБронированию = Истина;
	КонецЕсли;
	
	//++ НЕ УТ
	НастройкаСчетовУчетаКлиентСервер.ПриИзмененииРеквизита(ЭтотОбъект);
	//-- НЕ УТ
	
КонецПроцедуры

&НаКлиенте
Процедура СсылкаНастроитьСчетаРеглУчетаОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка)
	//++ НЕ УТ
	НастройкаСчетовУчетаКлиент.ОбработкаНавигационнойСсылкиНастройкаСчетовУчета(
		ЭтотОбъект, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка);
	//-- НЕ УТ
	Возврат; // В УТ обработчик пустой
КонецПроцедуры

&НаКлиенте
Процедура ВалютаУчетаРасчетовПриИзменении(Элемент)
	
	Модифицированность = Истина;
	
	Если ВалютаУчетаРасчетов = 0 Тогда
		Объект.РасчетыВВалюте = Ложь;
		Объект.РасчетыВВалютеРеглУчета = Истина;
	ИначеЕсли ВалютаУчетаРасчетов = 1 Тогда
		Объект.РасчетыВВалюте = Истина;
		Объект.РасчетыВВалютеРеглУчета = Ложь;
	ИначеЕсли ВалютаУчетаРасчетов = 2 Тогда
		Объект.РасчетыВВалюте = Истина;
		Объект.РасчетыВВалютеРеглУчета = Истина;
	КонецЕсли;
	
	//++ НЕ УТ
	НастройкаСчетовУчетаКлиентСервер.ПриИзмененииРеквизита(ЭтотОбъект);
	//-- НЕ УТ
	
КонецПроцедуры

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

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

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

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

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

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

&НаСервере
Процедура ПриЧтенииСозданииНаСервере()
	
	МассивПрименимость = Новый Массив;
	
	ИспользоватьКомиссиюПриЗакупках               = ПолучитьФункциональнуюОпцию("ИспользоватьКомиссиюПриЗакупках");
	ИспользоватьКомиссиюПриПродажах               = ПолучитьФункциональнуюОпцию("ИспользоватьКомиссиюПриПродажах");
	ИспользоватьДоговорыКредитовИДепозитов        = ПолучитьФункциональнуюОпцию("ИспользоватьДоговорыКредитовИДепозитов");
	ИспользоватьОказаниеАгентскихУслугПриЗакупке  = ПолучитьФункциональнуюОпцию("ИспользоватьОказаниеАгентскихУслугПриЗакупке");
	//++ НЕ УТ
	ИспользоватьПроизводствоНаСтороне2_5          = ПолучитьФункциональнуюОпцию("ИспользоватьПроизводствоНаСтороне2_5");
	ИспользоватьДоговорыАренды = ВнеоборотныеАктивы.ИспользуетсяУправлениеВНА();
	//-- НЕ УТ

	
	КомиссияМеждуОрганизациями = ?(ПолучитьФункциональнуюОпцию("ИспользоватьПередачиТоваровМеждуОрганизациями"),
		ОбщегоНазначенияУТПовтИсп.ИспользуетсяСпособПередачиТоваровМеждуОрганизациями(
			Перечисления.СпособыПередачиТоваров.ПередачаНаКомиссию), ЛОЖЬ);
	
	СписокВыбора = Элементы.Применимость.СписокВыбора;
	СписокВыбора.Очистить();
	
	СписокВыбора.Добавить(1, НСтр("ru = 'клиентами'"));
	СписокВыбора.Добавить(2, НСтр("ru = 'поставщиками'"));
	Если ИспользоватьКомиссиюПриПродажах ИЛИ КомиссияМеждуОрганизациями ИЛИ Объект.РасчетыСКомиссионерами Тогда
		СписокВыбора.Добавить(3, НСтр("ru = 'комиссионерами / агентами'"));
	КонецЕсли;
	Если ИспользоватьКомиссиюПриЗакупках ИЛИ КомиссияМеждуОрганизациями ИЛИ Объект.РасчетыСКомитентами Тогда
		СписокВыбора.Добавить(4, НСтр("ru = 'комитентами по продаже'"));
	КонецЕсли;
	Если ИспользоватьОказаниеАгентскихУслугПриЗакупке ИЛИ Объект.РасчетыСКомитентамиПоЗакупке Тогда
		СписокВыбора.Добавить(8, НСтр("ru = 'комитентами по закупке'"));
	КонецЕсли;
	Если ИспользоватьДоговорыКредитовИДепозитов ИЛИ Объект.РасчетыСДебиторами Тогда
		СписокВыбора.Добавить(6, НСтр("ru = 'дебиторами по депозитам, займам'"));
	КонецЕсли;
	Если ИспользоватьДоговорыКредитовИДепозитов ИЛИ Объект.РасчетыСКредиторами Тогда
		СписокВыбора.Добавить(5, НСтр("ru = 'кредиторами по кредитам, займам'"));
	КонецЕсли;
	
	//++ НЕ УТ
	Если ИспользоватьДоговорыАренды ИЛИ Объект.РасчетыСАрендодателями Тогда
		СписокВыбора.Добавить(7, НСтр("ru = 'арендодателями'"));
	КонецЕсли;
	Если ИспользоватьПроизводствоНаСтороне2_5 ИЛИ Объект.РасчетыСПереработчиками Тогда
		СписокВыбора.Добавить(9, НСтр("ru = 'переработчиками'"));
	КонецЕсли;
	//-- НЕ УТ

	
	СписокВыбора.Добавить(10, НСтр("ru = 'перевозчиками по бронированию'"));
	
	Если Объект.РасчетыСКлиентами Тогда
		МассивПрименимость.Добавить(1);
	КонецЕсли;
	Если Объект.РасчетыСПоставщиками Тогда
		МассивПрименимость.Добавить(2);
	КонецЕсли;
	Если Объект.РасчетыСКомиссионерами Тогда
		МассивПрименимость.Добавить(3);
	КонецЕсли;
	Если Объект.РасчетыСКомитентами Тогда
		МассивПрименимость.Добавить(4);
	КонецЕсли;
	Если Объект.РасчетыСКомитентамиПоЗакупке Тогда
		МассивПрименимость.Добавить(8);
	КонецЕсли;
	Если Объект.РасчетыСПереработчиками Тогда
		МассивПрименимость.Добавить(9);
	КонецЕсли;
	Если Объект.РасчетыСДавальцами Тогда
		МассивПрименимость.Добавить(11);
	КонецЕсли;
	Если Объект.РасчетыСКредиторами Тогда
		МассивПрименимость.Добавить(5);
	КонецЕсли;
	Если Объект.РасчетыСДебиторами Тогда
		МассивПрименимость.Добавить(6);
	КонецЕсли;
	Если Объект.РасчетыСАрендодателями Тогда
		МассивПрименимость.Добавить(7);
	КонецЕсли;
	Если Объект.РасчетыПоБронированию Тогда
		МассивПрименимость.Добавить(10);
	КонецЕсли;
	
	Если МассивПрименимость.Количество() = 1 Тогда
		Применимость = МассивПрименимость[0];
	Иначе
		Применимость = 0;
		МассивПодстрок = Новый Массив;
		Для каждого Элемент Из МассивПрименимость Цикл
			ЭлементСписка = СписокВыбора.НайтиПоЗначению(Элемент);
			Если ЭлементСписка <> Неопределено Тогда
				МассивПодстрок.Добавить(ЭлементСписка.Представление);
			КонецЕсли;
		КонецЦикла;
		СписокВыбора.Добавить(0, СтрСоединить(МассивПодстрок, ", "));
	КонецЕсли;
	
	//++ НЕ УТ
	НастройкаСчетовУчетаСервер.ПриЧтенииСозданииОбъектаНастройкиСчетовУчета(ЭтотОбъект);
	//-- НЕ УТ
	
	Элементы.Применимость.ТолькоПросмотр = Не ПравоДоступа("Редактирование", Метаданные.Справочники.ГруппыФинансовогоУчетаРасчетов);
	
	ЗначениеСвойства = ПолучитьФункциональнуюОпцию("ИспользоватьНесколькоВалют");
	Элементы.ЗаголовокВалютаУчетаРасчетов.Видимость = ЗначениеСвойства;
	Элементы.ГруппаВалютаУчетаРасчетов.Видимость = ЗначениеСвойства;
	
	Если Объект.РасчетыВВалюте И Объект.РасчетыВВалютеРеглУчета Тогда
		ВалютаУчетаРасчетов = 2;
	ИначеЕсли Объект.РасчетыВВалюте Тогда
		ВалютаУчетаРасчетов = 1;
	ИначеЕсли Объект.РасчетыВВалютеРеглУчета Тогда
		ВалютаУчетаРасчетов = 0;
	Иначе
		ВалютаУчетаРасчетов = 0;
		Объект.РасчетыВВалютеРеглУчета = Истина;
	КонецЕсли;
	
КонецПроцедуры


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

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