Главная » 1С Предприятие » КАЛЕНДАРИ И ПРАЗДНИКИ

0

Наша   задача  употребить  календари   1С  для  вычисления общего  числа рабочих дней  и часов. Учет рабочего  времени  осуществляется по табелю, который мы  оформим как  самостоятельный документ 1С.

7.5.1.   СОЗДАНИЕ КАЛЕНДАРЯ

Пусть  на  нашем виртуальном предприятии  имеются  служащие  и  рабочие.  Создадим для  этих категорий  свои  календари.  Войдем  в  конфигурацию, откроем  подменю Календарь и разместим в нем  календари Служащие_2  и Рабочие_2  (рис. 7.31).

Рис. 7.38. Обновленный диалог формы элемента справочника Сотрудники_2

Календарь обязательный для  заполнения  реквизит справочника, поэтому  модуль формы элемента,  его  предопределенную  процедуру ПриЗаписи  (разд.  5.3.4.2), дополним следующей проверкой:

если Календарь.Выбран() = 0 тогда Предупреждение("3адайте  Календарь");

СтатусВозврата(0);          //      Данные не записываются; форма  не закрывается

// Перемещаемся на элемент диалога Календарь Активизировать("Календарь", 0);

возврат; конецЕсли;

Формы  списка  (основную   и  для  ввода) справочника  Сотрудники_2  оставим  без изменений.

Ускорим  ввод начальных значений  нового реквизита,  запустив  в  обработке  Проба  программу,  назначающую работникам  с  высшим и  неоконченным  высшим  образованием календарь Служащие_2, а всем прочим Рабочие_2.

процедура Выполнить() перем сСотр_2; ОчиститьОкноСообщений();

сСотр_2  =  СоздатьОбьект("Справочник.Сотрудники_2"); сСотр_2.ВыбратьЭлементы();

пока сСотр_2.ПолучитьЭлемент() = 1 цикл

если (сСотр_2.0бразование.Наименование = "Высшее")  или (сСотр_2.0бразование.Наименование = "Неоконченное высшее") тогда

сСотр_2.Календарь =  Календари.Служащие_2;

иначе

сСотр_2. Календарь = Календари.Рабочие_2; конецЕсли;

// Не забываем сохранить изменения сСотр_2.3аписать();

конецЦикла; // пока Предупреждение("Готово.");

// Просмотр результата. Для просмотра необходимо в открытой форме  списка

// войти  в режим редактирования элемента ОткрытьФорму("Справочник.Сотрудники_2");

конецПроцедуры // Выполнить

7.6. ТАБЕЛЬ

Источник: Бартеньев О. В. 1С:Предприятие:  программирование для  всех.  Базовые объекты и расчеты на одной дискете. М.: Диалог-МИФИ, 2005. 464 с.

По теме:

  • Комментарии