|
ЗУП 3. Расчетная база за период | ☑ | ||
---|---|---|---|---|
0
2S
20.08.18
✎
08:25
|
Подсобите, есть ли функция в ЗУП, которая позволяет получить расчетную базу за произвольный период? Аналог 77 глПолучитьБазуВР().
|
|||
1
Фрэнки
20.08.18
✎
08:26
|
(0) а где ее нужно получать (в каком контексте)?
|
|||
2
мистер игрек
20.08.18
✎
08:28
|
(0) А разве в регистре расчета нет такого?
|
|||
3
2S
20.08.18
✎
08:42
|
(1) требуется собрать базу для премии, но премия берется за произвольный период, т.е. не полный месяц. Стандартной настройки не нашел.
(2)хм, это как? |
|||
4
2S
20.08.18
✎
08:43
|
(2) есть запись "оплата по окладу" с 01.01 по 20.01
Период премии с 10.01 по 15.01, вот и нужно выцепить базу за этот период |
|||
5
Фрэнки
20.08.18
✎
08:47
|
(3) теперь задачу понял :)
вот какая интересная процедура попалась на глаза Процедура ПроверитьНаличиеБазовыхВидовРасчета(ВидРасчетаОбъект, Отказ) Экспорт // Проверяем, что если в формуле присутствует показатель Расчетная база, список базовых начислений не пуст. РасчетнаяБаза = ОбщегоНазначенияКлиентСервер.ПредопределенныйЭлемент("Справочник.ПоказателиРасчетаЗарплаты.РасчетнаяБаза"); Если ВидРасчетаОбъект.Показатели.Найти(РасчетнаяБаза, "Показатель") <> Неопределено И ВидРасчетаОбъект.БазовыеВидыРасчета.Количество() = 0 Тогда ОбщегоНазначенияКлиентСервер.СообщитьПользователю( НСтр("ru = 'Не заполнен список базовых начислений.'"), , "БазовыеВидыРасчета", , Отказ); КонецЕсли; КонецПроцедуры это в общем модуле РасчетЗарплатыРасширенный |
|||
6
2S
20.08.18
✎
08:49
|
(5) как это связно с сабжем?
|
|||
7
Фрэнки
20.08.18
✎
08:51
|
(6) если где-то будет найдено что-то готовое, то оно будет использовать некоторые процедуры или функции, в параметрах которых будет торчать тип "Справочник.ПоказателиРасчетаЗарплаты.РасчетнаяБаза"
|
|||
8
Фрэнки
20.08.18
✎
08:53
|
(6) т.к. готового решения у меня нет, но стало интересно - а как бы я решил такую задачу - полез смотреть.
|
|||
9
2S
20.08.18
✎
09:01
|
(8) спасибо
может еще и решишь возмездно? :) |
|||
10
мистер игрек
20.08.18
✎
09:08
|
Не это?
Отбор = Новый Структура(); Ресурсы = Новый Массив(1); Ресурсы[0] = "РаспределениеОсновныхНачислений.Результат"; Измерения = Новый Структура("ФизЛицо,Организация,Отдел,Должность"); Измерения.Вставить("ФизЛицо","РаспределениеОсновныхНачислений.Физлицо"); Измерения.Вставить("Организация","РаспределениеОсновныхНачислений.Организация)"; Измерения.Вставить("Отдел","РаспределениеОсновныхНачислений.Отдел"); Измерения.Вставить("Должность","РаспределениеОсновныхНачислений.Должность"); Разрезы = Новый Массив(1); Разрезы[0] = "РаспределениеОсновныхНачислений.СпособРаспределения"; Регистр = РегистрыРасчета.ОсновныеНачисленияСотрудников; НаборЗаписей = Регистр.СоздатьНаборЗаписей(); ДокументыНачислений = Запрос.Выполнить().Выгрузить(); Для Каждого Документ Из ДокументыНачислений Цикл Отбор.Вставить("Регистратор",Документ.Регистратор); Данные = Регистр.ПолучитьБазу(Отбор,Ресурсы,Измерения,Разрезы); БазовыеДанныеСвод = Данные.Скопировать(); БазовыеДанныеСвод.Свернуть("НомерСтроки","Результат"); НаборЗаписей.Отбор.Регистратор.Значение = Документ.Регистратор; НаборЗаписей.Прочитать(); ОсновныеДанные = НаборЗаписей.Выгрузить(); // обработка строк набора записей // ... КонецЦикла; |
|||
11
2S
20.08.18
✎
09:16
|
(10)
хм, что такое запрос и где отбор по периодам, не читается |
|||
12
мистер игрек
20.08.18
✎
09:18
|
Есть метод ПолучитьБазу()
|
|||
13
El_Duke
гуру
20.08.18
✎
09:52
|
(3) В начале прошлого года делал так
Создал ВР Премия, указал из чего состоит расчетная база и прочие настройки. В доке Премия указывал свой ВР, в разделе Прериод, по итогам указывал произвольный период. И все работало, проверял, база собиралась верно. Будет ли работать сейчас, учитывая нынешнее качество типовых - надо проверять |
|||
14
Фрэнки
20.08.18
✎
10:06
|
(13) Опередил
(9) Только что проверил через создания нового ВР и с использованием типового документа Премия. Расчетная база подтягивается точно за тот период, который указан в шапке документа. |
|||
15
2S
20.08.18
✎
10:35
|
(14) о как, значит "золотые руки растут из жопы".
Понял, спасибо, проверю |
|||
16
El_Duke
гуру
20.08.18
✎
10:52
|
(15) Не факт
В прошлом же году по весне в очередном из релизов был адский баг, который всю схему из (13) выводил из строя. Суть бага - документ не реагировал на переключатель Период, по итогам ... Указание своего произвольного интервала ничего не давало. Исправили через пару релизов. Так что не всегда руки из опы виноваты. |
|||
17
VladRd
20.08.18
✎
13:00
|
А так просто не получится? Если выгрузить из вида начисления "Премия" базовые виды начислений в массив БазовыеВидыРасчета и сотрудников в массив Сотрудники...
ВЫБРАТЬ ОсновныеНачисленияРаботниковОрганизаций.Сотрудник, СУММА(ОсновныеНачисленияРаботниковОрганизаций.Результат) КАК СуммаБаза ИЗ РегистрРасчета.ОсновныеНачисленияРаботниковОрганизаций КАК ОсновныеНачисленияРаботниковОрганизаций ГДЕ ОсновныеНачисленияРаботниковОрганизаций.Сотрудник В(&Сотрудники) И ОсновныеНачисленияРаботниковОрганизаций.ВидРасчета В(&БазовыеВидыРасчета) И ОсновныеНачисленияРаботниковОрганизаций.БазовыйПериодНачало >= &БазовыйПериодНачало И ОсновныеНачисленияРаботниковОрганизаций.БазовыйПериодКонец <= &БазовыйПериодКонец СГРУППИРОВАТЬ ПО ОсновныеНачисленияРаботниковОрганизаций.Сотрудник |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |