Ссылка
на вид расчета
1-й вариант:
ВР = ВидРасчета.НаРуки;
ВР = ВидРасчета.Премия;
2-й вариант:
ВР = ВидРасчета.ПолучитьАтрибут("НаРуки");
Пример, определим
сумму "по окладу" текущего сотрудника:
ПоОкладу = 0;
ЖЗ = СоздатьОбъект("ЖурналРасчетов.Зарплата");
ДатаНач = '01.01.2002';
ЖЗ. ВыбратьПериодПоОбъекту(ТекСотр, ДатаНач);
Пока ЖЗ.ПолучитьЗапись()=1 Цикл
....Если ЖЗ.ВидРасч = ВидРасчета.ПоОкладу Тогда
.........ПоОкладу = ПоОкладу + ЖЗ.Результат;
....КонецЕсли;
КонецЦикла;
Вхождение
вида расчета в группу
Посчитаем все
начисления текущего сотрудника за январь:
1-й вариант:
ВсегоНачислено = 0;
ЖЗ.ВыбратьЗаписиПоОбъекту (ТекСотр, ДатаНач, ДатаКон);
Пока ЖЗ.ПолучитьЗапись()=1 Цикл
....Если ЖЗ.ВидРасч.ВходитВГруппу(ГруппаРасчетов.ВсеНачисления)=1
Тогда
..........ВсегоНачислено = ВсегоНачислено + ЖЗ.Результат;
....КонецЕсли;
КонецЦикла;
2-й вариант:
ВсегоНачислено = 0;
ЖЗ.ВыбратьЗаписиПоОбъекту (ТекСотр, ДатаНач, ДатаКон);
Пока ЖЗ.ПолучитьЗапись()=1 Цикл
....Если ГруппаРасчетов.ВсеНачисления.СодержитВидРасчета(ЖЗ.ВидРасч)=1
Тогда
..........ВсегоНачислено = ВсегоНачислено + ЖЗ.Результат;
....КонецЕсли;
КонецЦикла;
Перебор
видов расчета, входящих в группу
Для Ном=1 По
ГруппаРасчетов.ВсеНачисления.Количество() Цикл
....ВР = ГруппаРасчетов.ВсеНачисления.ПолучитьРасчет(Ном);
....Сообщить(ВР.Код);
КонецЦикла;
Перебор
всех видов расчета
Для Ном=1 По
Метаданные.ВидРасчета() Цикл
....кфгВР = Метаданные.ВидРасчета(Ном);
....ВР = ВидРасчета.ПолучитьАтрибут(кфгВР.Идентификатор);
КонецЦикла;
Перебор
групп расчета
Для Ном=1 По
Метаданные.ГруппаРасчета() Цикл
....кфгГруппаРасч = Метаданные.ГруппаРасчета(Ном);
....//недоработка фирмы 1С. По имени группы расчета нельзя получить
саму группу расчета как объект.
....//если помечтать, то можно было бы сделать вот так:
....// ГруппаРасч = ГруппаРасчета.ПолучитьАтрибут(кфгГруппаРасч.Идентификатор);
КонецЦикла;
Еще я совсем
не понимаю, почему группа расчетов не является типообразующим
объектом в 1С. Т.е. нельзя, например, завести реквизит справочника
и указать его тип "ГруппаРасчетов.ВсеНачисления". Нельзя
в диалоге поместить поле типа "ГруппаРасчета", чтобы пользователь
мог самостоятельно выбрать группу расчетов так же, как он выбирает
вид расчета. Будем надеяться, что в версии 8.0 фирма 1С исправит
эти упущения.
|