Собственно процесс расчета записей каждого поднабора состоит в получении всех необходимых данных для расчета каждой записи и вычислении значений ресурсов этой записи по формуле, определяемой способом расчета данной записи. Например, для расчета записи об окладе нужно будет получить данные графика этой записи, для расчета премии необходимо будет рассчитать базу и так далее.
Ниже приведен пример процедуры, осуществляющей расчет набора записей одного приоритета. Для каждой записи при помощи функции ПолучитьДанныеДляРасчета() возвращается структура данных, которая передается в процедуру РассчитатьЗапись().
Расчет набора записей одного приоритета
В функции ПолучитьДанныеДляРасчета() должны быть прописаны алгоритмы, при помощи которых можно получить данные для расчета записи с любым способом расчета, существующим в конфигурации. Ниже приведен пример функции, которая получает данные для трех способов расчета:
Получение данных для трех видов расчета
В данном случае для расчета записей со способом ПоМесячнойСтавке система получит данные графика за период действия и фактический период действия, для способа ПроцентомОтБазы будет получена расчетная база записи, а для способа ПоСдельнойВыработке будут рассчитаны обороты по соответствующему регистру накопления за интервал периода действия записи. Способ расчета ФиксированнойСуммой не требует получения данных.
Функция ПолучитьДанныеДляРасчета() возвращает структуру, содер- жащую различные поля в зависимости от способа расчета, применяемого в данной записи
Расчет значений ресурсов записи
После того как данные для расчета получены, необходимо прописать в модуле формулу для заполнения реквизитов каждой записи в соответствии со способом расчета. В данном случае эту функцию выполняет процедура РассчитатьЗапись(). В процедуре РассчитатьЗапись() для каждого возмож- ного способа расчета описывается формула, позволяющая из реквизитов записи и полученных данных рассчитать значения ресурсов этой записи.
Процедура расчета записей
При расчете записей следует учитывать, что сторно-записи рассчитываются в общем порядке. Поэтому в ресурсы сторно-записи должно попадать отрицательное значение результата расчета. Например, сторно- запись отменяет начисленный оклад за период 5 дней. При расчете такой записи по формуле система получит сумму оклада за 5 дней, например, 1200 руб. В ресурс сторно-записи в этом случае должно быть записано значение -1200.
17 правил для составления оптимального ЗАПРОСа к данным базы 1С 52 Для формирования и выполнения запросов к таблицам базы данных в платформе 1С используется специальный объект языка программирования Запрос . Создается этот объект вызовом конструкции Новый Запрос . Запрос удобно использовать, когда требуется получZIP-архив Создание 0 Для того чтобы записать файлы в ZIP-архив необходимо выполнить несколько простых действий:
* Создать архив с необходимыми параметрами, в который будут помещаться файлы.
* Поместить в архив необходимые файлы.
* Записать архив.
Создание объекта ЗаАвтоматическая установка ширины колонки табличного документа. 0 Процедура, которая " примерно" делает автоширину колонок (навроде, как если бы выделить все колонки и дважды щелкнуть мышкой по границе заголовка колонки). Привожу текст, работает неахти, но лучше чем ничего:
Процедура РасчетШириныКолонок(ТабличныйБиблиотека кода: Сравнить две таблицы значений 0
//Сравнивает две таблицы значений
//
Функция ТаблицыЗначенийРавны(ТаблицаЗначений1, ТаблицаЗначений2) Экспорт
Если ТипЗнч(ТаблицаЗначений1) Тип("ТаблицаЗначений") ИЛИ ТипЗнч(ТаблицаЗначений2) Тип("ТаблицаЗначений") Тогда
ВозвВ ЗУП не исчисляются суммы районного коэффициента и северной надбавки? 1 В Зарплата и управление персоналом 8 почему при расчете среднего заработка для начисления очередного отпуска не исчисляются суммы районного коэффициента и северной надбавки?
При исчислении среднего заработка во всех случаях, в том числе для оплаты оПосмотреть все результаты поиска похожих
Как сформировать сторно-запись регистра расчета, Метод «ПолучитьДополнение() 1 Сторно-записи, «прикрывающие» фактический период действия вводимой записи с более поздним периодом регистрации, могут быть сформированы вручную стандартными методами формирования записей регистра расчета. В этом случае разработчик должен самостоятельПрочитать, просмотреть, выбрать записи регистра расчета 0
// Просуммируем записи удержаний неявок по физлицу
НаборЗаписей = РегистрыРасчета.УдержанияРаботниковОрганизаций.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Регистратор.Значение = ВыбДокНачисл;
НаборЗаписей.Отбор.физлицо.Установить(Физлицо);
НСторнирование уже произведенных расчетов прошлых периодов? 0 Аналогично делается сторнирование по регистрам накопления и бухгалтерии
Пример для регистра расчета ОсновныеНачисленияРаботниковОрганизации:
ТаблицаСторноЗаписей = Движения.ОсновныеНачисленияРаботниковОрганизации.ПолучитьДополнение();
Для каждКак очистить регистр расчета?! 0
Запрос=Новый Запрос;
Запрос.Текст = " ВЫБРАТЬ РАЗЛИЧНЫЕ
| УправленческиеНачисления.Регистратор
|ИЗ
| РегистрРасчета.УправленческиеНачисления КАК УправленческиеНачисления" ;
РезультатЗапроса = Запрос.Выполнить();
Выборка = РезультатЗапрКак определяется период регистрации регистра расчета? 0 Есть три варианта ответов:
1. автоматически в момент ввода информации в регистр из документа-регистратора
2. программно в момент ввода информации в регистр из документа-регистратора
3. вручную после ввода записи в регистр расчета
Считается, чтоПосмотреть все в категории Регистры расчета