Конфигурирование программы "1С:Предприятие" на основе предприятия сельскохозяйственной отрасли
Дипломная работа - Компьютеры, программирование
Другие дипломы по предмету Компьютеры, программирование
, 1);
Если Флаг = 1 тогда
ЖрнЗарплата. ВвестиРасчет (Сотрудник, ВидРасчета. СдельныйНарядГруппойСРКиСК, ДатаДок, ДатаДок, Расценка*Количество);
иначе
ЖрнЗарплата. ВвестиРасчет (Сотрудник, ВидРасчета. СдельныйНарядГруппой, ДатаДок, ДатаДок, Расценка*Количество);
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЦикла;
КонецПроцедуры;
Модуль формы НарядИндивидуальныйНаГруппу
Перем ОбработчикСообщений; // обработчик сообщения при проверке и проведении документа
Перем СписокДействий; // список действий, выполняемых по кнопке Действия
Перем ПроведенВПрошлом; // = 1 - документ проведен в прошлом периоде
СуммаПоНаряду = 0;
ВыбратьСтроки();
Пока ПолучитьСтроку() = 1 Цикл
СуммаПоНаряду = СуммаПоНаряду + Расценка * Количество;
КонецЦикла;
Возврат глЧислоВФорматеПользователя(СуммаПоНаряду);
КонецФункции
глОчиститьСообщения(ОбработчикСообщений);
Если Выбран() = 0 Тогда
глДобавитьСообщение (ОбработчикСообщений, Документ не записан., ТекущийДокумент(), Сотрудник)
КонецЕсли;
Если Сотрудник. Выбран()=0 Тогда
глДобавитьСообщение (ОбработчикСообщений, Не выбран сотрудник! Проведение документа невозможно., ТекущийДокумент(), Сотрудник)
КонецЕсли;
Если КоличествоСтрок() = 0 Тогда
глДобавитьСообщение (ОбработчикСообщений, Список выполненных работ пуст. Проведение документа не возможно., ТекущийДокумент(), КодНормы)
Иначе
ВыбратьСтроки();
Пока ПолучитьСтроку() = 1 Цикл
Если (ШаблонПроводки. Наименование = Распределять пропорционально расчетной базе) Тогда
глДобавитьСообщение (ОбработчикСообщений, Неверно указан шаблон проводки в строке №"+НомерСтроки, ТекущийДокумент(), ШаблонПроводки)
КонецЕсли;
// Если УчетНалогаНаПрибыль. ВидРасхода=Перечисление. ВидыРасходов. ПропорциональноРаспределять Тогда
// глДобавитьСообщение (ОбработчикСообщений, В данных учета налога на прибыль выбран вид расхода Распределять пропорционально расчетной базе в строке №"+НомерСтроки, ТекущийДокумент(), УчетНалогаНаПрибыль);
// КонецЕсли;
Если КодНормы. Выбран() = 0 Тогда
глДобавитьСообщение (ОбработчикСообщений, Не выбран вид работ в строке №"+НомерСтроки, ТекущийДокумент(), КодНормы)
КонецЕсли;
КонецЦикла;
КонецЕсли;
Возврат глПустойОбработчик(ОбработчикСообщений)
КонецФункции // Проверка
Процедура ПриВыбореРаботы()
Расценка = КодНормы. Расценка. Получить(ДатаДок);
ШаблонПроводки = КодНормы. ШаблонПроводки;
// УчетНалогаНаПрибыль = КодНормы. УчетНалогаНаПрибыль;
КонецПроцедуры
Процедура ПровестиИзФормы (НажатаКнопкаОК=0)
ПриЗаписиПерепроводить(0);
Записать();
Если ПроведенВПрошлом<>1 Тогда
ПриЗаписиПерепроводить(1);
Если Проверка()=1 Тогда
Если Провести (, ОбработчикСообщений)=0 Тогда
глДобавитьСообщение (ОбработчикСообщений, Документ не проведен., ТекущийДокумент());
КонецЕсли;
КонецЕсли;
глОткрытьОбработчик (ОбработчикСообщений, Вид()+НомерДок);
КонецЕсли;
// если вызвали через кнопку ОК, то закроем форму
// и обработчик соообщений пуст
Если (НажатаКнопкаОК=1) и (глПустойОбработчик(ОбработчикСообщений)=1) Тогда
Форма. Закрыть();
КонецЕсли;
Процедура ВводНового(Копирование)
Если Копирование=1 Тогда
Возврат;
КонецЕсли;
глВводНовогоДокумента(Контекст);
КонецПроцедуры // ВводНового
Процедура ПриОткрытии()
Перем ПараметрыКоманды; // параметры команды при открытии
// если открыли для печати
Если глВыполнитьКомандуФормы (Контекст, Печать, ")=1 Тогда
Предупреждение (У документа " +ПредставлениеВида()+""
отсутствует печатная форма… Вывести на печать
документы данного вида невозможно., 10);
СтатусВозврата(0);
Возврат;
КонецЕсли;
// инициализация обработчика сообщений
ОбработчикСообщений = глСоздатьОбработчикСообщений (глПредставлениеДокумента(Контекст));
// заполним список команд для кнопки Действия
СписокДействий. ДобавитьЗначение (Структура подчиненности);
СписокДействий. ДобавитьЗначение (Движения документа);
СписокДействий. ДобавитьЗначение (Перейти в журнал);
// если открыли для заполнения
Если глВыполнитьКомандуФормы (Контекст, Заполнить, ПараметрыКоманды)=1 Тогда
глЗаполнитьДокумент (ПараметрыКоманды, Контекст);
КонецЕсли;
СписокНередактируемыхКонтролов = СоздатьОбъект (СписокЗначений);
СписокНередактируемыхКонтролов. ДобавитьЗначение (НомерДокумента);
СписокНередактируемыхКонтролов. ДобавитьЗначение (ДатаДок);
СписокНередактируемыхКонтролов. ДобавитьЗначение (Сотрудник);
СписокНередактируемыхКонтролов. ДобавитьЗначение (КодНормы);
СписокНередактируемыхКонтролов. ДобавитьЗначение (Расценка);
СписокНередактируемыхКонтролов. ДобавитьЗначение (Количество);
ПроведенВПрошлом = глПроведенВПрошлом (Контекст, СписокНередактируемыхКонтролов);
Если ПроведенВПрошлом=1 Тогда
Форма.кнПровести. Видимость(0);
Форма.кнИсправить. Видимость(1);
ПриЗаписиПерепроводить(0);
Иначе
Форма.кнИсправить. Видимость(0);
ПриЗаписиПерепроводить(1);
КонецЕсли;
НомерДокумента = НомерДок;
глКонтекстОткрытойФормы (Документ, Контекст);
Конец