Конфигурирование программы "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);

КонецЕсли;

НомерДокумента = НомерДок;

глКонтекстОткрытойФормы (Документ, Контекст);

Конец