Диплом: Автоматизация управления садового товарищества «Дружба»

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
87
РаботаСДиалогами. УстановитьПодменюПечати (мПодменюПечати,
ЭлементыФормы. ОсновныеДействияФормы, мДеревоМакетов. Строки. Количество () >
0);
РаботаСДиалогами. УстановитьПечатьПоУмолчанию (мПечатьПоУмолчанию,
ЭлементыФормы. ОсновныеДействияФормы, мДеревоМакетов, Метаданные (). Имя,
Новый Действие ("ОсновныеДействияФормыПечатьПоУмолчанию"));
Если Не мПодменюПечати = Неопределено Тогда
РаботаСДиалогами. СформироватьПодменю (мДеревоМакетов, мПодменюПечати,
Истина, Истина);
КонецЕсли;
КонецПроцедуры // УстановитьКнопкиПечати ()
// В зависимости от видимости колонок подпись "Итого: " вписывается
колонке, предшествующей колонке Результат
Процедура УстановитьТекстИтого ()
КоллекцияКолонок = ЭлементыФормы. Начисления. Колонки;
ИндексКолонкиРезультат = КоллекцияКолонок. Индекс (КоллекцияКолонок.
Результат);
// очищаем текст подвала всех колонок
Для каждого Колонка Из КоллекцияКолонок Цикл
Если Колонка. Имя <> "Результат" Тогда
Колонка. ТекстПодвала = ""
КонецЕсли;
КонецЦикла;
// вписывать надпись будем только тогда, когда слева от результатов
есть еще одна колонка
Если ИндексКолонкиРезультат > 0 Тогда
ИндексПредшествующейКолонки = ИндексКолонкиРезультат - 1;
// ищем предшествующую видимую колонку
Пока ИндексПредшествующейКолонки >= 0 Цикл
Колонка = КоллекцияКолонок. Получить (ИндексПредшествующейКолонки);
Если Колонка. Видимость Тогда
Прервать;
КонецЕсли;
ИндексПредшествующейКолонки = ИндексПредшествующейКолонки - 1;
КонецЦикла;
// вписывать надпись можем не в любую колонку, а только в некоторые
Если ИндексПредшествующейКолонки >= 0 Тогда
ИмяПредшествующейКолонки = Колонка. Имя;
Если ИмяПредшествующейКолонки = "Авторасчет"
Или ИмяПредшествующейКолонки = "Председатель"
Или ИмяПредшествующейКолонки = "Размер" Тогда
Колонка. ТекстПодвала = "Итого: "
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецПроцедуры // УстановитьТекстИтого ()
// Выставляет автоотметку незаполненного базового периода, если это
требуется и
// переписывает название колонки в т.п.
Процедура УправлениеВнешнимВидомФормы (ПриОткрытии = Ложь)
ЭтоПремияПроцентом = ВидРасчета. СпособРасчета = Перечисления.
СпособыРасчетаОплатыТруда. Процентом;
НеобходимБазовыйПериод = ЭтоПремияПроцентом Или ВидРасчета. ВидПремии
= Перечисления. ВидыПремии. ГодоваяПремия;
ЭлементыФормы. Начисления. Колонки. Размер. ТекстШапки =?
(ЭтоПремияПроцентом,"Процент","Сумма");
Если Не ПриОткрытии или Не ЭтоПремияПроцентом Тогда
ЭлементыФормы. Начисления. Колонки. Размер. Видимость =
ЭтоПремияПроцентом;
КонецЕсли;
ЭлементыФормы. ДатаНачалаБП. АвтоОтметкаНезаполненного=
НеобходимБазовыйПериод;
88
ЭлементыФормы. ДатаНачалаБП. ОтметкаНезаполненного= ЭлементыФормы.
ДатаНачалаБП. АвтоОтметкаНезаполненного И НЕ ЗначениеЗаполнено
(ДатаНачалаБП);
ЭлементыФормы. ДатаОкончанияБП. АвтоОтметкаНезаполненного=
НеобходимБазовыйПериод;
ЭлементыФормы. ДатаОкончанияБП. ОтметкаНезаполненного= ЭлементыФормы.
ДатаОкончанияБП. АвтоОтметкаНезаполненного И НЕ ЗначениеЗаполнено
(ДатаОкончанияБП);
УстановитьТекстИтого ();
КонецПроцедуры // УправлениеВнешнимВидомФормы ()
// Удаляет кнопку из набора кнопок, если она существует
Процедура УдалитьКнопкуИзНабора (ИмяКнопки, НаборКнопок)
Кнопка = НаборКнопок. Найти (ИмяКнопки);
Если Кнопка <> Неопределено Тогда
НаборКнопок. Удалить (НаборКнопок. Индекс (Кнопка));
КонецЕсли;
КонецПроцедуры // УдалитьКнопкуИзНабора ()
// Управляет видимостью элементов формы, зависящих от наличия
перерассчитываемого документа
Процедура ОбновитьВидимостьПоПерерассчитываемомуДокументу ()
// Заполнение команд подменю "Заполнить"
КнопкиЗаполнить = ЭлементыФормы. ДействияФормы. Кнопки.
ПодменюЗаполнить. Кнопки;
ДействиеПоКнопке = Новый Действие ("ДействияФормыЗаполнить");
Если ЗначениеЗаполнено (ПерерассчитываемыйДокумент) Тогда
УдалитьКнопкуИзНабора ("СписокЧленовСНТ", КнопкиЗаполнить);
Если КнопкиЗаполнить. Найти ("ПоПерерассчитываемомуДокументу") =
Неопределено Тогда
КнопкиЗаполнить. Вставить (0, "ПоПерерассчитываемомуДокументу",
ТипКнопкиКоманднойПанели. Действие,"По перерассчитываемому документу",
ДействиеПоКнопке);
КонецЕсли;
Иначе
УдалитьКнопкуИзНабора ("ПоПерерассчитываемомуДокументу",
КнопкиЗаполнить);
Если КнопкиЗаполнить. Найти ("СписокЧленовСНТ") = Неопределено Тогда
КнопкиЗаполнить. Вставить (0, "СписокЧленовСНТ",
ТипКнопкиКоманднойПанели. Действие,"Списком работников", ДействиеПоКнопке);
КонецЕсли;
КонецЕсли;
КонецПроцедуры // ОбновитьВидимостьПоПерерассчитываемомуДокументу ()
// Активизирует строки табличных частей документа после заполнения
Процедура УстановитьТекущуюСтрокуТабличнойЧасти ()
мСтароеФизлицо = Справочники. ФизическиеЛица. ПустаяСсылка ();
// активизируем во всех табличных частях 1-ю строку
Если Начисления. Количество () > 0 Тогда
СтрокаТЧ = Начисления. Получить (0);
ЭлементыФормы. Начисления. ТекущаяСтрока = СтрокаТЧ;
КонецЕсли;
КонецПроцедуры // УстановитьТекущуюСтрокуТабличнойЧасти ()
// // // // // // // // // // // // // // // // // // // // // // //
// // // // // // // // // // // // // // // // //
// ПРОЦЕДУРЫ - ОБРАБОТЧИКИ СОБЫТИЙ ФОРМЫ
// Процедура - обработчик события "ПередОткрытием" формы.
Процедура ПередОткрытием (Отказ, СтандартнаяОбработка)
// Установка кнопок печати
УстановитьКнопкиПечати ();
// Установка кнопок заполнение ТЧ
УстановитьКнопкиПодменюЗаполненияТЧ ();
КонецПроцедуры // ПередОткрытием ()
Процедура ПриОткрытии ()
Если ЭтоНовый () Тогда // проверить объект на то, что он еще не внесен
в ИБ
// Заполнить реквизиты значениями по умолчанию.
89
ОбщегоНазначения. ЗаполнитьШапкуДокумента (ЭтотОбъект,
глЗначениеПеременной ("глТекущийПользователь"));
// АБС
ВидРасчета = ВосстановитьЗначение ("ВидРасчетаПремияКРО");
ПоправочныйКоэффициент = 1;
ЧислоМесяцев = 1;
ПриСменеПериодаРегистрации ();
// -АБС
КонецЕсли;
// АБС
НачисленоПремии = ПолучитьПремиюВсего ();
Если НачисленоПремии>0 Тогда
ПоправочныйКоэффициент = Окр (СуммаКРаспределению/НачисленоПремии,4);
ЭлементыФормы. ТекстКоэффициента. Заголовок = "Справочно: коэффициент
пересчета = " + ПоправочныйКоэффициент;
Иначе
ПоправочныйКоэффициент = 1;
ЭлементыФормы. ТекстКоэффициента. Заголовок = "";
КонецЕсли;
// -АБС
РаботаСДиалогами. УстановитьДоступностьПоляВводаНомера (Метаданные (),
ЭтаФорма, ЭлементыФормы. ДействияФормы. Кнопки. Подменю1, ЭлементыФормы.
Номер);
// Заполним реквизит формы МесяцСтрока.
МесяцСтрока = РаботаСДиалогами. ДатаКакМесяцПредставление
(ПериодРегистрации);
СтруктураКолонок = Новый Структура ();
// Установить колонки, видимостью которых пользователь управлять не
может.
СтруктураКолонок. Вставить ("Председатель");
СтруктураКолонок. Вставить ("Размер");
// Установить ограничение - изменять видимость колонок для табличной
части Начисления
ОбработкаТабличныхЧастей. УстановитьИзменятьВидимостьКолонокТабЧасти
(ЭлементыФормы. Начисления. Колонки, СтруктураКолонок);
// Активизируем табличную часть
ТекущийЭлемент = ЭлементыФормы. Начисления;
// Вывести в заголовке формы статус документа (новый, не проведен,
проведен).
РаботаСДиалогами. УстановитьЗаголовокФормыДокумента (, ЭтотОбъект,
ЭтаФорма);
// Запомнить текущие значения реквизитов формы.
мТекущаяДатаДокумента = Дата;
// Получим и запомним ссылку на головную организацию
мЕдиничнаяОрганизация = ОбщегоНазначения. ЕдиничнаяОрганизация
(Организация);
// Установим видимость реквизитов в зависимости от уч. политики по
персоналу организаций
мМассивЭУ = Новый Массив ();
мМассивЭУ. Добавить (ЭлементыФормы. Начисления. Колонки.
ТабельныйНомерСтрока);
РаботаСДиалогами. УстановитьВидимостьЭУПоУчетнойПолитикеПоПерсоналу
(мМассивЭУ, глЗначениеПеременной ("глУчетнаяПолитикаПоПерсоналуОрганизации"),
Организация);
УправлениеВнешнимВидомФормы (Истина);
// Установим видимость в зависимости от наличия перерассчитываемого
документа
ОбновитьВидимостьПоПерерассчитываемомуДокументу ();
// Установить активный реквизит.
Если Не РаботаСДиалогами. АктивизироватьРеквизитВФорме (ЭтотОбъект,
ЭтаФорма) Тогда
ТекущийЭлемент = ЭлементыФормы. Начисления;
КонецЕсли;
КонецПроцедуры // ПриОткрытии ()
90
Процедура ПослеЗаписи ()
// Установка кнопок печати
УстановитьКнопкиПечати ();
// Вывести в заголовке формы статус документа (новый, не проведен,
проведен).
РаботаСДиалогами. УстановитьЗаголовокФормыДокумента (, ЭтотОбъект,
ЭтаФорма);
РаботаСДиалогами. ОбновитьПодсказкуКодНомерОбъекта (ЭтотОбъект.
Метаданные (), ЭлементыФормы. ДействияФормы. Кнопки. Подменю1, ЭлементыФормы.
Номер);
// АБС
СохранитьЗначение ("ВидРасчетаПремияКРО", ВидРасчета);
// -АБС
КонецПроцедуры // ПослеЗаписи ()
// Процедура - обработчик события "ОбработкаВыбора" формы.
Процедура ОбработкаВыбора (ЗначениеВыбора, Источник)
Если ТипЗнч (ЗначениеВыбора) = Тип ("Структура") Тогда
Команда = "";
Реквизиты = "";
Если ЗначениеВыбора. Свойство ("Команда", Команда) и Команда =
"ЗаполнитьСписокЧленовСНТ" Тогда
ВременнаяТаблица = ЗначениеВыбора. Данные. Выгрузить ();
Если ЗначениеВыбора. Свойство ("Реквизиты",Реквизиты) Тогда
ИмяКолонки =? (ВидРасчета. СпособРасчета = Перечисления.
СпособыРасчетаОплатыТруда. Процентом,"Размер","Результат");
ВременнаяТаблица. Колонки. Добавить (ИмяКолонки);
ВременнаяТаблица. ЗаполнитьЗначения (Реквизиты. Размер, ИмяКолонки);
КонецЕсли;
ВременнаяТаблица. Колонки. Добавить ("Авторасчет");
ВременнаяТаблица. ЗаполнитьЗначения (Истина,"Авторасчет");
// АБС
ВременнаяТаблица. Колонки. Добавить ("КТУ");
ВременнаяТаблица. ЗаполнитьЗначения (1,"КТУ");
ВременнаяТаблица. ЗаполнитьЗначения (100,"Размер");
// -АБС
Начисления. Загрузить (ВременнаяТаблица);
КонецЕсли;
КонецЕсли;
КонецПроцедуры // ОбработкаВыбора ()
// ПРОЦЕДУРЫ - ДЕЙСТВИЯ КОМАНДНЫХ ПАНЕЛЕЙ ФОРМЫ
// Процедура вызывается при выборе пункта подменю "Движения документа
по регистрам" // меню "Перейти" командной панели формы. Процедура
отрабатывает печать движений // документа по регистрам.
Процедура ДействияФормыДвиженияДокументаПоРегистрам (Кнопка)
РаботаСДиалогами. НапечататьДвиженияДокумента (Ссылка);
КонецПроцедуры // ДействияФормыДвиженияДокументаПоРегистрам ()
// Процедура-обработчик события нажатия кнопки "Рассчитать"
Процедура ДействияФормыРассчитатьВсе (Кнопка)
Если СуммаКРаспределению=0 Тогда
Предупреждение ("Не задана сумма к распределению. Расчет невозможен");
Возврат;
КонецЕсли;
Если ВидРасчета. СпособРасчета = Перечисления.
СпособыРасчетаОплатыТруда. Процентом Тогда
Если НЕ РаботаСДиалогами.
ЗаписатьДокументОтменивПроведениеПередВыполнениемДействия (ДокументОбъект,
ЭтаФорма, "рассчитать") Тогда
Возврат;
КонецЕсли;
ОбработкаКомментариев = глЗначениеПеременной ("глОбработкаСообщений");
ОбработкаКомментариев. УдалитьСообщения ();
РассчитатьПремию ();
ОбработкаКомментариев. ПоказатьСообщения ();
// АБС
91
НачисленоПремии = ПолучитьПремиюВсего ();
Если НачисленоПремии>0 Тогда
ПоправочныйКоэффициент = Окр (СуммаКРаспределению/НачисленоПремии,4);
ЭлементыФормы. ТекстКоэффициента. Заголовок = "Справочно: коэффициент
пересчета = " + ПоправочныйКоэффициент;
Для каждого СтрТЧ Из Начисления Цикл
СтрТЧ. Результат = Окр (СтрТЧ. База*СтрТЧ. КТУ*ПоправочныйКоэффициент,
2);
КонецЦикла;
Разность = СуммаКРаспределению-Начисления. Итог ("Результат");
Если Разность<>0 Тогда // разницу из-за ошибок округления отнесем на
последнюю строку
ПоследняяСтрока = Начисления [Начисления. Количество () - 1];
ПоследняяСтрока. Результат = ПоследняяСтрока. Результат + Разность;
КонецЕсли;
КонецЕсли;
// -АБС
ТекущаяСтрока = ЭлементыФормы. Начисления. ТекущаяСтрока;
Если ТекущаяСтрока <> Неопределено Тогда
мСтарыйРезультат = ТекущаяСтрока. Результат;
КонецЕсли;
Иначе
Сообщить ("Для премий, установленных в фиксированных суммах, расчет не
производится!")
КонецЕсли;
КонецПроцедуры // ДействияФормыРассчитатьВсе ()
// Процедура - вызывается при нажатии на кнопку "Заполнить"
Процедура ДействияФормыЗаполнить (Кнопка)
Если Начисления. Количество () > 0 Тогда
ТекстВопроса = "Перед заполнением табличные части будут очищены.
Заполнить?";
Ответ = Вопрос (ТекстВопроса, РежимДиалогаВопрос. ДаНет,,
КодВозвратаДиалога. Да,);
Если Ответ <> КодВозвратаДиалога. Да Тогда
Возврат;
КонецЕсли;
Начисления. Очистить ();
КонецЕсли;
Если Кнопка. Имя = "СписокЧленовСНТ" Тогда
ПроцедурыУправленияПерсоналом. ОткрытьФормуОтбораСпискаРаботников
(ЭтаФорма, ПериодРегистрации,, Организация,,,,"ПремииРаботниковОрганизаций",
Новый Структура ("Размер",100));
ИначеЕсли Кнопка. Имя = "ПоПерерассчитываемомуДокументу" Тогда
Если Не ЗаполнитьПоПерерассчитываемомуДокументу () Тогда
Сообщить ("Нет необходимости перерассчитывать заданный документ. Для
получения списка документов, подлежащих перерасчету, необходимо использовать:
пункт Перерасчет зарплаты меню Расчет зарплаты");
КонецЕсли;
КонецЕсли;
УстановитьТекущуюСтрокуТабличнойЧасти ();
КонецПроцедуры // ДействияФормыЗаполнить ()
Процедура ДействияФормыБезНалогов (Кнопка)
Док = Документы. ЗарплатаКВыплатеОрганизаций. СоздатьДокумент ();
Док. Заполнить (Новый Структура ("Ссылка, СпособРасчета",
Ссылка,"ЗаВычетомНалога"));
Док. ПолучитьФорму (). Открыть ();
КонецПроцедуры // ДействияФормыБезНалогов ()
Процедура ДействияФормыСНалогами (Кнопка)
Док = Документы. ЗарплатаКВыплатеОрганизаций. СоздатьДокумент ();
Док. Заполнить (Новый Структура ("Ссылка, СпособРасчета",
Ссылка,"ВсяНачисленнаяСумма"));
Док. ПолучитьФорму (). Открыть ();
КонецПроцедуры // ДействияФормыСНалогами ()
// Процедура выполняет открытие формы работы со свойствами документа
92
Процедура ДействияФормыДействиеОткрытьСвойства (Кнопка)
РаботаСДиалогами. ОткрытьСвойстваДокумента (ЭтотОбъект, ЭтаФорма);
КонецПроцедуры // ДействияФормыДействиеОткрытьСвойства ()
// Процедура выполняет открытие формы работы с категориями документа
Процедура ДействияФормыДействиеОткрытьКатегории (Кнопка)
РаботаСДиалогами. ОткрытьКатегорииДокумента (ЭтотОбъект, ЭтаФорма);
КонецПроцедуры // ДействияФормыДействиеОткрытьКатегории ()
// Процедура вызова структуры подчиненности документа
Процедура ДействияФормыСтруктураПодчиненностиДокумента (Кнопка)
РаботаСДиалогами. ПоказатьСтруктуруПодчиненностиДокумента (Ссылка);
КонецПроцедуры // ДействияФормыСтруктураПодчиненностиДокумента ()
// Процедура - обработчик нажатия на любую из дополнительных кнопок по
заполнению ТЧ
Процедура НажатиеНаДополнительнуюКнопкуЗаполненияТЧ (Кнопка)
РаботаСДиалогами. ОбработатьНажатиеНаДополнительнуюКнопкуЗаполненияТЧ
(мКнопкиЗаполненияТЧ. Строки. Найти (Кнопка. Имя,"Имя", Истина), ЭтотОбъект);
КонецПроцедуры // НажатиеНаДополнительнуюКнопкуЗаполненияТЧ ()
// Процедура - обработчик нажатия на кнопку "Печать по умолчанию"
Процедура ОсновныеДействияФормыПечатьПоУмолчанию (Кнопка)
РаботаСДиалогами. ПечатьПоДополнительнойКнопке (мДеревоМакетов,
ЭтотОбъект, ЭтаФорма, Кнопка. Текст);
КонецПроцедуры // ОсновныеДействияФормыПечатьПоУмолчанию ()
// Процедура - обработчик нажатия на кнопку "Печать"
Процедура ОсновныеДействияФормыПечать (Кнопка)
РаботаСДиалогами. ПечатьПоДополнительнойКнопке (мДеревоМакетов,
ЭтотОбъект, ЭтаФорма, Кнопка. Текст);
КонецПроцедуры // ОсновныеДействияФормыПечать ()
// Процедура - обработчик нажатия на кнопку "Установить печать по
умолчанию"
Процедура ОсновныеДействияФормыУстановитьПечатьПоУмолчанию (Кнопка)
Если РаботаСДиалогами. НазначитьКнопкуПечатиПоУмолчанию
(мДеревоМакетов, Метаданные (). Имя) Тогда
УстановитьКнопкиПечати ();
КонецЕсли;
КонецПроцедуры // ОсновныеДействияФормыУстановитьПечатьПоУмолчанию ()
// Процедура - вызывается при нажатии на кнопку "Подбор"
Процедура КоманднаяПанельНачисленияПодбор (Кнопка)
ПроцедурыУправленияПерсоналом.
ОткрытьФормуВыбораПредседательаОрганизации (ЭлементыФормы. Начисления,
Ссылка, Ложь, Дата, мЕдиничнаяОрганизация, 1);
КонецПроцедуры // КоманднаяПанельНачисленияПодбор ()
// // // // // // // // // // // // // // // // // // // // // // //
// // // // // // // // // // // // // // // // //
// ПРОЦЕДУРЫ - ОБРАБОТЧИКИ СОБЫТИЙ РЕКВИЗИТОВ ШАПКИ
// Процедура - обработчик события "ПриИзменении" поля ввода даты
документа.
Процедура ДатаПриИзменении (Элемент)
РаботаСДиалогами. ПроверитьНомерДокумента (ЭтотОбъект,
мТекущаяДатаДокумента);
РаботаСДиалогами. ОбновитьПодсказкуКодНомерОбъекта (ЭтотОбъект.
Метаданные (), ЭлементыФормы. ДействияФормы. Кнопки. Подменю1, ЭлементыФормы.
Номер);
мТекущаяДатаДокумента = Дата;
КонецПроцедуры // ДатаПриИзменении ()
// Процедура - обработчик события "ПриИзменении" поля ввода
организации.
Процедура ОрганизацияПриИзменении (Элемент)
Если Не ПустаяСтрока (Номер) Тогда
РаботаСДиалогами. СброситьУстановленныйКодНомерОбъекта (ЭтотОбъект,
"Номер", ЭлементыФормы. ДействияФормы. Кнопки. Подменю1, ЭлементыФормы.
Номер);
КонецЕсли;
// Получим и запомним ссылку на головную организацию
93
мЕдиничнаяОрганизация = ОбщегоНазначения. ЕдиничнаяОрганизация
(Организация);
РаботаСДиалогами. УстановитьВидимостьЭУПоУчетнойПолитикеПоПерсоналу
(мМассивЭУ, глЗначениеПеременной ("глУчетнаяПолитикаПоПерсоналуОрганизации"),
Организация);
УстановитьТекстИтого ();
КонецПроцедуры // ОрганизацияПриИзменении ()
// Процедура - обработчик события "ПриИзменении" поля ввода периода
регистрации.
Процедура ПериодРегистрацииПриИзменении (Элемент)
РаботаСДиалогами. ДатаКакМесяцПодобратьДатуПоТексту (Элемент.
Значение, ПериодРегистрации);
Элемент. Значение = РаботаСДиалогами. ДатаКакМесяцПредставление
(ПериодРегистрации);
// премия за текущий месяц
ПриСменеПериодаРегистрации ();
КонецПроцедуры // ПериодРегистрацииПриИзменении ()
// Процедура - обработчик события "Регулирование" поля ввода периода
регистрации.
Процедура ПериодРегистрацииРегулирование (Элемент, Направление,
СтандартнаяОбработка)
ПериодРегистрации = ДобавитьМесяц (ПериодРегистрации, Направление);
Элемент. Значение = РаботаСДиалогами. ДатаКакМесяцПредставление
(ПериодРегистрации);
ПриСменеПериодаРегистрации ();
КонецПроцедуры // ПериодРегистрацииРегулирование ()
// Процедура - обработчик события "Очистка" поля ввода периода
регистрации.
Процедура ПериодРегистрацииОчистка (Элемент, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
КонецПроцедуры // ПериодРегистрацииОчистка ()
// Процедура - обработчик события "НачалоВыбораИзСписка" поля ввода
периода регистрации.
Процедура ПериодРегистрацииНачалоВыбораИзСписка (Элемент,
СтандартнаяОбработка)
РаботаСДиалогами. НачалоВыбораИзСпискаПредставленияПериодаРегистрации
(Элемент, СтандартнаяОбработка, ПериодРегистрации, ЭтаФорма);
ПриСменеПериодаРегистрации ();
КонецПроцедуры // ПериодРегистрацииНачалоВыбораИзСписка ()
// Процедура - обработчик события "АвтоПодборТекста" поля ввода
периода регистрации.
Процедура ПериодРегистрацииАвтоПодборТекста (Элемент, Текст,
ТекстАвтоПодбора, СтандартнаяОбработка)
РаботаСДиалогами. ДатаКакМесяцАвтоПодборТекста (Текст,
ТекстАвтоПодбора, СтандартнаяОбработка);
КонецПроцедуры // ПериодРегистрацииАвтоПодборТекста ()
// Процедура - обработчик события "ОкончаниеВводаТекста" поля ввода
периода регистрации.
Процедура ПериодРегистрацииОкончаниеВводаТекста (Элемент, Текст,
Значение, СтандартнаяОбработка)
РаботаСДиалогами. ДатаКакМесяцОкончаниеВводаТекста (Текст, Значение,
СтандартнаяОбработка);
КонецПроцедуры // ПериодРегистрацииОкончаниеВводаТекста ()
Процедура ВидРасчетаПриИзменении (Элемент)
УправлениеВнешнимВидомФормы ();
ЧислоМесяцев = ВидРасчета. ЧислоМесяцев;
КонецПроцедуры // ВидРасчетаПриИзменении ()
Процедура ВидРасчетаНачалоВыбора (Элемент, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
// Предложим для выбора список расчетов, относящихся только к премиям.
ФормаВыбораВидаРасчета = ПланыВидовРасчета.
ДополнительныеНачисленияОрганизаций. ПолучитьФормуВыбора ("ФормаВыбора",
Элемент, "дляДокументаПриемНаРаботуВОрганизацию");
94
ФормаВыбораВидаРасчета. Отбор. ВидПремии. Значение= Перечисления.
ВидыПремии. НеПремия;
ФормаВыбораВидаРасчета. Отбор. ВидПремии. ВидСравнения= ВидСравнения.
НеРавно;
ФормаВыбораВидаРасчета. Отбор. ВидПремии. Использование= ИСТИНА;
ФормаВыбораВидаРасчета. Отбор. ЧислоМесяцев. Значение= 1; // за 1
месяц
ФормаВыбораВидаРасчета. Отбор. ЧислоМесяцев. ВидСравнения=
ВидСравнения. Равно;
ФормаВыбораВидаРасчета. Отбор. ЧислоМесяцев. Использование= ИСТИНА;
ФормаВыбораВидаРасчета. НачальноеЗначениеВыбора = Элемент. Значение;
ФормаВыбораВидаРасчета. Открыть ();
КонецПроцедуры // ВидРасчетаНачалоВыбора ()
// Процедура - обработчик события "ПриИзменении" поля ввода
перерассчитываемого документа.
Процедура ПерерассчитываемыйДокументПриИзменении (Элемент)
ОбновитьВидимостьПоПерерассчитываемомуДокументу ();
КонецПроцедуры // ПерерассчитываемыйДокументПриИзменении ()
// Процедура - обработчик события "НачалоВыбора" поля ввода
перерассчитываемого документа.
Процедура ПерерассчитываемыйДокументНачалоВыбора (Элемент,
СтандартнаяОбработка)
ПроцедурыУправленияПерсоналом.
ОткрытьФормуВыбораПерерассчитываемогоДокумента (Элемент,
СтандартнаяОбработка, ДокументОбъект);
КонецПроцедуры // ПерерассчитываемыйДокументНачалоВыбора ()
// // // // // // // // // // // // // // // // // // // // // // //
// // // // // // // // // // // // // // //
// ПРОЦЕДУРЫ - ОБРАБОТЧИКИ СОБЫТИЙ ТАБЛИЧНОГО ПОЛЯ Начисления
// Процедура - обработчик оповещения о выборе, присланного формой рег-
ра сведений
Процедура НачисленияОбработкаВыбора (Элемент, ВыбранноеЗначение,
СтандартнаяОбработка)
Если ТипЗнч (ВыбранноеЗначение) <> Тип ("СправочникСсылка.
ПредседательиОрганизаций") Тогда
Возврат;
КонецЕсли;
СтандартнаяОбработка = Ложь;
Если Начисления. НайтиСтроки (Новый Структура ("Председатель",
ВыбранноеЗначение)). Количество () = 0 Тогда
СтрокаТабличнойЧасти = Начисления. Добавить ();
СтрокаТабличнойЧасти. Председатель = ВыбранноеЗначение;
СтрокаТабличнойЧасти. Физлицо = ВыбранноеЗначение. Физлицо;
СтрокаТабличнойЧасти. Авторасчет = Истина;
// АБС
СтрокаТабличнойЧасти. КТУ = 1;
// -АБС
КонецЕсли;
КонецПроцедуры // НачисленияОбработкаВыбора ()
// Процедура - обработчик события "ПриВыводеСтроки" ТЧ
Процедура НачисленияПриВыводеСтроки (Элемент, ОформлениеСтроки,
ДанныеСтроки)
Если ДанныеСтроки. Сторно Тогда
ОформлениеСтроки. ЦветТекста = Новый Цвет (255, 0, 0);
КонецЕсли;
ЯчейкаСКартинкой = ОформлениеСтроки. Ячейки. Картинка;
ЯчейкаСКартинкой. ОтображатьКартинку = Истина;
ЯчейкаСКартинкой. ИндексКартинки = Число (ДанныеСтроки. Авторасчет);
КонецПроцедуры // НачисленияПриВыводеСтроки ()
// Процедура - обработчик события "ПриПолученииДанных"
Процедура НачисленияПриПолученииДанных (Элемент, ОформленияСтрок)
РаботаСДиалогами. УстановитьЗначенияКолонкиТабельныйНомерСтрока
(ЭлементыФормы. Начисления, ОформленияСтрок);
КонецПроцедуры // НачисленияПриПолученииДанных ()
95
// Процедура - обработчик события "ПриНачалеРедактирования" ТЧ
Процедура НачисленияПриНачалеРедактирования (Элемент, НоваяСтрока,
Копирование)
Если НоваяСтрока И Не Копирование Тогда
Элемент. ТекущиеДанные. Авторасчет = Истина;
// АБС
Элемент. ТекущиеДанные. КТУ = 1;
// -АБС
КонецЕсли;
КонецПроцедуры // НачисленияПриНачалеРедактирования ()
// Процедура - обработчик события "ПриАктивизацииСтроки"
Процедура НачисленияПриАктивизацииСтроки (Элемент)
ДанныеСтроки = Элемент. ТекущиеДанные;
// запомним текущее физлицо
Если ДанныеСтроки = Неопределено Тогда
мСтароеФизлицо = Справочники. ФизическиеЛица. ПустаяСсылка ();
Иначе
мСтароеФизлицо = ДанныеСтроки. Председатель. Физлицо;
КонецЕсли;
ТекущаяСтрока = Элемент. ТекущаяСтрока;
Если Элемент. ТекущаяСтрока <> Неопределено Тогда
мСтарыйРезультат = Элемент. ТекущаяСтрока. Результат;
КонецЕсли;
КонецПроцедуры // НачисленияПриАктивизацииСтроки ()
// Процедура - обработчик события "ПриОкончанииРедактирования"
Процедура НачисленияПриОкончанииРедактирования (Элемент, НоваяСтрока,
ОтменаРедактирования)
Если НЕ ОтменаРедактирования Тогда
мСтароеФизлицо = Элемент. ТекущиеДанные. Председатель. Физлицо;
КонецЕсли;
КонецПроцедуры // НачисленияПриОкончанииРедактирования ()

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Agile-методология в управлении проектами на примере ООО «Ресурсный центр «Академия КлассИнфо»
Aвтoмaтизaция пpoцecca вeдeния инфopмaциoннoй бaзы o дoлжнocтяx и вaкaнcияx c укaзaниeм тpeбoвaний к уpoвню знaний и нaвыкoв кaндидaтoв для гpуппы кaдpoв вoйcкoвoй чacти 3474»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
Cовершенствование управления рентабельности предприятия (на примере гуипп «бендерская типография «полиграфист»)
Event - менеджмент: реализация проекта (на примере ООО "АГРОПАК")