Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

ЗУП 3. Расчетная база за период

ЗУП 3. Расчетная база за период
Я
   2S
 
20.08.18 - 08:25
Подсобите, есть ли функция в ЗУП, которая позволяет получить расчетную базу за произвольный период? Аналог 77 глПолучитьБазуВР().
 
 
   Фрэнки
 
1 - 20.08.18 - 08:26
(0) а где ее нужно получать (в каком контексте)?
   мистер игрек
 
2 - 20.08.18 - 08:28
(0) А разве в регистре расчета нет такого?
   2S
 
3 - 20.08.18 - 08:42
(1) требуется собрать базу для премии, но премия берется за произвольный период, т.е. не полный месяц. Стандартной настройки не нашел.
(2)хм, это как?
   2S
 
4 - 20.08.18 - 08:43
(2) есть запись "оплата по окладу" с 01.01 по 20.01
Период премии с 10.01 по 15.01, вот и нужно выцепить базу за этот период
   Фрэнки
 
5 - 20.08.18 - 08:47
(3) теперь задачу понял :)
вот какая интересная процедура попалась на глаза

Процедура ПроверитьНаличиеБазовыхВидовРасчета(ВидРасчетаОбъект, Отказ) Экспорт
    
    // Проверяем, что если в формуле присутствует показатель Расчетная база, список базовых начислений не пуст.

    
    РасчетнаяБаза = ОбщегоНазначенияКлиентСервер.ПредопределенныйЭлемент("Справочник.ПоказателиРасчетаЗарплаты.РасчетнаяБаза");
    
    Если ВидРасчетаОбъект.Показатели.Найти(РасчетнаяБаза, "Показатель") <> Неопределено
        И ВидРасчетаОбъект.БазовыеВидыРасчета.Количество() = 0 Тогда
        ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
            НСтр("ru = 'Не заполнен список базовых начислений.'"), , "БазовыеВидыРасчета", , Отказ);
    КонецЕсли;
    
КонецПроцедуры

это в общем модуле РасчетЗарплатыРасширенный
   2S
 
6 - 20.08.18 - 08:49
(5) как это связно с сабжем?
   Фрэнки
 
7 - 20.08.18 - 08:51
(6) если где-то будет найдено что-то готовое, то оно будет использовать некоторые процедуры или функции, в параметрах которых будет торчать тип "Справочник.ПоказателиРасчетаЗарплаты.РасчетнаяБаза"
   Фрэнки
 
8 - 20.08.18 - 08:53
(6) т.к. готового решения у меня нет, но стало интересно - а как бы я решил такую задачу - полез смотреть.
   2S
 
9 - 20.08.18 - 09:01
(8) спасибо
может еще и решишь возмездно? :)
   мистер игрек
 
10 - 20.08.18 - 09:08
Не это?
Отбор = Новый Структура();
Ресурсы = Новый Массив(1);
Ресурсы[0] = "РаспределениеОсновныхНачислений.Результат";
Измерения = Новый Структура("ФизЛицо,Организация,Отдел,Должность");
Измерения.Вставить("ФизЛицо","РаспределениеОсновныхНачислений.Физлицо");
Измерения.Вставить("Организация","РаспределениеОсновныхНачислений.Организация)";
Измерения.Вставить("Отдел","РаспределениеОсновныхНачислений.Отдел");
Измерения.Вставить("Должность","РаспределениеОсновныхНачислений.Должность");
Разрезы = Новый Массив(1);
Разрезы[0] = "РаспределениеОсновныхНачислений.СпособРаспределения";

Регистр = РегистрыРасчета.ОсновныеНачисленияСотрудников;
НаборЗаписей = Регистр.СоздатьНаборЗаписей();
ДокументыНачислений = Запрос.Выполнить().Выгрузить();
Для Каждого Документ Из ДокументыНачислений Цикл
    Отбор.Вставить("Регистратор",Документ.Регистратор);
    Данные = Регистр.ПолучитьБазу(Отбор,Ресурсы,Измерения,Разрезы);
    БазовыеДанныеСвод = Данные.Скопировать();
    БазовыеДанныеСвод.Свернуть("НомерСтроки","Результат");
    НаборЗаписей.Отбор.Регистратор.Значение = Документ.Регистратор;
    НаборЗаписей.Прочитать();
    ОсновныеДанные = НаборЗаписей.Выгрузить();

    // обработка строк набора записей


    // ...


КонецЦикла;
 
 Рекламное место пустует
   2S
 
11 - 20.08.18 - 09:16
(10)
хм, что такое запрос и где отбор по периодам, не читается
   мистер игрек
 
12 - 20.08.18 - 09:18
Есть метод ПолучитьБазу()
   El_Duke
 
13 - 20.08.18 - 09:52
(3) В начале прошлого года делал так
Создал ВР Премия, указал из чего состоит расчетная база и прочие настройки. В доке Премия указывал свой ВР, в разделе Прериод, по итогам указывал произвольный период. И все работало, проверял, база собиралась верно.
Будет ли работать сейчас, учитывая нынешнее качество типовых - надо проверять
   Фрэнки
 
14 - 20.08.18 - 10:06
(13) Опередил

(9) Только что проверил через создания нового ВР и с использованием типового документа Премия. Расчетная база подтягивается точно за тот период, который указан в шапке документа.
   2S
 
15 - 20.08.18 - 10:35
(14) о как, значит "золотые руки растут из жопы".
Понял, спасибо, проверю
   El_Duke
 
16 - 20.08.18 - 10:52
(15) Не факт
В прошлом же году по весне в очередном из релизов был адский баг, который всю схему из (13) выводил из строя.
Суть бага - документ не реагировал на переключатель Период, по итогам ...
Указание своего произвольного интервала ничего не давало. Исправили через пару релизов. Так что не всегда руки из опы виноваты.
   VladRd
 
17 - 20.08.18 - 13:00
А так просто не получится? Если выгрузить из вида начисления "Премия" базовые виды начислений в массив БазовыеВидыРасчета и сотрудников в массив Сотрудники...

ВЫБРАТЬ
    ОсновныеНачисленияРаботниковОрганизаций.Сотрудник,
    СУММА(ОсновныеНачисленияРаботниковОрганизаций.Результат) КАК СуммаБаза
ИЗ
    РегистрРасчета.ОсновныеНачисленияРаботниковОрганизаций КАК ОсновныеНачисленияРаботниковОрганизаций
ГДЕ
    ОсновныеНачисленияРаботниковОрганизаций.Сотрудник В(&Сотрудники)
    И ОсновныеНачисленияРаботниковОрганизаций.ВидРасчета В(&БазовыеВидыРасчета)
    И ОсновныеНачисленияРаботниковОрганизаций.БазовыйПериодНачало >= &БазовыйПериодНачало
    И ОсновныеНачисленияРаботниковОрганизаций.БазовыйПериодКонец <= &БазовыйПериодКонец

СГРУППИРОВАТЬ ПО
    ОсновныеНачисленияРаботниковОрганизаций.Сотрудник

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует