Основная страница

Глава 17.
Виды и группы расчетов


Важнейшим свойством системы 1С:Предприятие является возможность определения произвольных алгоритмов расчета. Конкретные алгоритмы расчетов зависят от области применения программы. Для расчета заработной платы, например, это будут начисления и удержания; для задачи учета акций — это алгоритмы расчета дивидендов по акциям разного типа и т.д.

Для алгоритмизации расчетов в системе 1С:Прсднриятие служит понятие видов расчетов.

Виды расчетов в системе 1С:Предприятие

Виды расчетов в системе 1С:Предприятие — это специальный тип объектов метаданных, основное свойство которых — наличие алгоритма обработки данных. Результатом действия этого алгоритма является заполнение реквизита «Результат» журнала расчетов. Понятие видов расчета неразрывно связано с понятием журналов расчетов, так как журнал расчетов — единственное место, где «срабатывают» алгоритмы видов расчетов. Один из предопределенных реквизитов журнала расчетов является реквизитом типа «Вид расчета» и предназначен для хранения ссылки на конкретный вид расчета. С использованием алгоритма именно этого вида расчета будет выполняться вычисление результата расчета при выполнении системной операции «Рассчитать».

Группы расчетов. Понятие группы расчетов имеет в системе 1С:Предприятие вспомогательное значение. Единственное предназначение групп расчетов — упорядочивание и классификация видов расчета для тех областей применения программы 1С:Предприятие, где количество различных алгоритмов обработки данных и, следовательно, видов расчетов значительно. Тесная взаимосвязь между этими двумя понятиями объясняет то, что они рассматриваются в одной главе данного Руководства.

Управление списками видов расчетов и групп расчетов

Вся работа с объектами метаданных типа «Вид расчета» и «Группа расчетов» ведется в окне «Конфигурация — Метаданные». Для видов расчетов отведена ветвь дерева метаданных, которая начинается у фразы «Виды расчетов», а для групп расчетов — ветвь «Группы расчетов». Приемы создания, редактирования свойств и удаления видов расчетов и групп расчетов совпадают с общими приемами управления объектами метаданных, изложенными в главе «Метаданные», стр. Ошибка! Закладка не определена..

Свойства вида расчета

В этом параграфе будут описаны уникальные свойства видов расчетов, в дополнение к общим свойствам объектов метаданных, о которых говорилось в п. «Свойства объектов метаданных» на стр. Ошибка! Закладка не определена..

Свойства вида расчета редактируются в окне редактирования «Вид расчета».

Приоритет. Особого пояснения требует свойство «Приоритет», которое является одной из важных характеристик вида расчета.

Дело в том, что для многих предметных областей применения программы 1С:Предприятие очень важным бывает очередность, в которой выполняются те или иные расчеты. Например, в случае расчета заработной платы, как минимум, важно сначала рассчитать начисления, а затем удержания.

Для организации последовательности выполнения расчетов служит понятие их приоритета. Этот параметр может принимать значение от 0 до 999 и действует следующим образом: чем меньше приоритет расчета, тем раньше он выполняется. Это отражается в последовательности расположения записей журнала расчетов — записи с видами расчетов меньшего приоритета располагаются перед записями с видами расчетов большего приоритета.

Вытесняющие расчеты. Представление о вытесняющих расчетах в системе 1С:Предприятие связано со следующими практическими предпосылками.

В некоторых случаях требуется автоматизировать предметные области, в которых расчет каких-либо величин может вестись взаимно исключающими способами. Возвращаясь вновь к задаче расчета заработной платы, рассмотрим пример расчета следующих начислений: оплата рабочих дней по окладу, оплата дней болезни по больничному листу и оплата дней отпуска.

Очевидно, что в этом случае выполняется условие взаимоисключения перечисленных видов расчета — нельзя, например, одновременно и болеть и работать, т. е. получать и оклад, и деньги по больничному листу. Такие расчеты взаимно исключают друг друга во времени и система должна гарантировать, что ввод одного из них приведет к исключению другого.

Заметим, что взаимное исключение видов расчета ограничивается одним объектом расчета — болезнь одного сотрудника не исключает оплату по окладу другого сотрудника.

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

Механизм управления взаимоисключающими расчетами настраивается в окне «Настройка вытеснения», открывающегося при нажатии соответствующей кнопки в окне «Вид расчета».

В этом окне все виды расчета, включая определяемый, помещены в два списка, «Вытесняет виды расчета» и «Вытесняется видами расчета». Назначение их очевидно из вышесказанного.

Необходимо только отметить, что вполне возможна ситуация, когда некоторому виду расчета флажок устанавливается в обоих списках (взаимовытесняющие виды расчета). Например, форма оплаты труда работника может быть на какой-то период заменена с оплаты по окладу на оплату по тарифу и последний вид расчета должен вытеснить первый; столь же обычно и обратное.

При установке флажка самому определяемому виду расчета в одном из списков флажок в другом списке устанавливается автоматически (самовытесняющий вид расчета). Например, работника на время перевели на другой оклад.

Описанный механизм полностью определяется при редактировании свойств вида расчета, хотя, собственно, этот механизм работает при вводе новых записей журналов расчета. Это еще раз иллюстрирует тесную взаимосвязь понятия журнала расчетов и вида расчета.

Управление входимостью расчетов в группы

Механизм группировки видов расчета предназначен для выделения видов расчета по тем или иным признакам, что облегчает дальнейшую работу с ними. Это позволяет, например, определив группу расчетов «Начисления» и, определив входимость в нес конкретных видов расчета, оперировать затем понятием этой группы, а не перебирать все входящие в нее расчеты отдельно.

Использование окна редактирования «Вид расчета». Для редактирования входимости расчета в те или иные группы используются два списка в окне редактирования вида расчета. В левом списке отражены группы, в которые редактируемый вид расчета включен, в правом списке — группы, в которые вид расчета не включен.

Для переноса группы или нескольких групп расчетов из правого списка в левый, т. е. для включения редактируемого вида расчета в требуемую группу или набор групп, выделите требуемые группы в правом окне и нажмите кнопку .

Для переноса группы или нескольких групп расчетов из левого списка в правый, т. е. для исключения редактируемого вида расчета из некоторой группы или набора групп, выделите требуемые группы в левом окне и нажмите кнопку .

Использование окна редактирования «Группа расчетов». Объединением видов расчетов в группы, о котором говорилось выше можно управлять не только при редактировании свойств вида расчета, но и при редактировании группы расчетов. Это позволяет, например, создав новую группу расчетов, сразу определить набор видов расчета, входящих в нес, а не указывать входимость расчетов в новую группу путем редактирования каждого расчета.

Для редактирования входимости расчетов в данную группу используются два списка в окне редактирования «Группа расчетов». В левом списке отражены виды расчета, которые включены в данную группу, в правом списке — виды расчета, которые не включены в данную группу.

Для переноса вида расчета или нескольких видов расчетов из правого списка в левый, т. е. для включения их в редактируемую группу, выделите требуемые виды расчетов в правом окне и затем нажмите кнопку .

Для переноса вида расчета или нескольких видов расчетов из левого списка в правый, т. е. для исключения их из редактируемой группы, выделите требуемые расчеты в левом окне и затем нажмите кнопку .

Модуль расчета

Модуль расчета, как правило, содержит предопределенную процедуру ПровестиРасчет. Основная задача процедуры расчета — описать, каким образом при выполнении операции расчета журнала расчетов должно вычисляться значение «Результат». Кроме того, вид расчета может влиять на другие данные системы, например, изменять содержимое справочников.

Для редактирования модуля расчета используется текстовый редактор, который можно вызвать на экран одним из следующих способов:

·        в окне редактирования вида расчета нажмите кнопку «Модуль расчета»;

или

·        выберите наименование вида расчета в окне «Конфигурация — Метаданные», нажатием правой кнопки мыши вызовите на экран контекстное меню и в этом меню выберите пункт «Модуль расчета».

Подробно порядок работы с текстовым редактором описан в главе «Редактор текстов».

Правила перерасчета

«Правила перерасчета» являются вспомогательными объектами метаданных, предназначенными для автоматического отслеживания актуальности результатов проведенных расчетов при вводе новых записей журнала расчетов, удалении существующих или ручном исправлении результата расчета.

При создании правила перерасчета в Конфигураторе определяются виды расчетов, при редактировании которых правило перерасчета «срабатывает», и виды расчетов, которые должны быть перерассчитаны при срабатывании данного правила.

Список видов расчета, на основании которых срабатывает конкретное правило перерасчета, условно называется ведущие виды расчета. Список видов расчета, которые должны быть перерассчитаны при срабатывании конкретного правила, условно называется зависимые виды расчета.

Например, для организации правильного перерасчета доплат к основным начислениям следует в качестве ведущих видов расчета указать те, на основании которых считаются доплаты (оклад, тариф, сдельная оплата), а в качестве зависимых видов расчета следует указать собственно перерассчитываемые доплаты.

После ввода в систему такого правила перерасчетов журнал расчетов будет вести себя описанным ниже образом. При этом сначала рассмотрим случай для взаимосвязи видов расчета в одном расчетном периоде.

Итак, если в журнале расчетов появится новая (в результате проведения документа), исчезнет (при отмене проведения) или будет исправлена существующая запись с одним из «ведущих» видов расчета (в нашем примере — оклад, тариф, сдельная оплата), то будет снят признак «Рассчитана» со всех записей, соответствующих доплатам, если найдутся таковые, с тем же периодом действия, что и введенная, удаленная или исправленная запись.

Если при этом вводится запись с периодом действия не в текущем расчетном периоде, а в одном из прошлых (например, расчет оклада задним числом за прошлый месяц), то система введет записи-перерасчеты для всех доплат соответствующего прошлого периода.

Правило перерасчета может быть трех типов: перерасчет записей текущего периода, перерасчет записей того же периода, или перерасчет записей будущих периодов.

В первом случае перерассчитываются заданные виды расчетов с только текущего периода в независимости от того, какой период действия имеют изменяемые записи журнала расчетов.

Во втором случае перерассчитываются заданные виды расчетов с тем же периодом действия, что и новая введенная запись.

В третьем — перерассчитываются записи одного или нескольких будущих расчетных периодов.

Например, если построить правило перерасчета больничных листов, то в качестве ведущих расчетов будут назначены виды начислений, базовые для больничного листа, в качестве зависимых — все виды больничного листа, а тип правила перерасчета будет определен как «перерасчет будущих периодов», причем количество периодов — это число месяцев используемых при исчислении среднего заработка с целью расчета больничного листа.

Другой пример — правило перерасчета подоходного налога. При этом тип перерасчета — «только текущий период», а ведущие виды расчета — все облагаемые налогом начисления.

Управление списком правил перерасчета

Вся работа с объектами метаданных типа «Правила перерасчета» ведется в окне «Конфигурация — Метаданные». Для правил перерасчета отведена отдельная ветвь дерева метаданных, которая расположена «внутри» ветви «Виды расчетов» и начинается у ключевого слова «Правила перерасчета». Приемы создания, редактирования свойств и удаления правил перерасчета совпадают с общими приемами управления объектами метаданных, изложенными в главе «Метаданные» на стр. Ошибка! Закладка не определена..

Свойства правил перерасчета

В этом параграфе будут описаны специфические свойства правил перерасчета, в дополнение к общим свойствам объектов метаданных, о которых говорилось в п. «Свойства объектов метаданных» на стр. Ошибка! Закладка не определена..

Свойства правил перерасчета редактируются в окне редактирования «Правило перерасчета».

При вводе видов расчета. В этом списке необходимо пометить ведущие виды расчетов (см. выше).

Необходимо пересчитать. В этом списке необходимо отметить зависимые виды расчета (см. выше).

Период в котором будут проводится перерасчеты, как уже упоминалось выше, выбирается из следующих возможных значений:

...только в текущем периоде журнала расчетов

ввод, редактирование или удаление строк журнала расчетов, соответствующих одному из ведущих видов расчета, приведет к перерасчету строк журнала с зависимыми видами расчета только в текущем периоде. Это значит, что какой бы период действия не имела изменяемая строка журнала, будет снят признак «рассчитанности» с соответствующих записей текущего периода журнала расчетов;

...в том же периоде журнала расчетов

ввод, редактирование или удаление строк журнала расчетов, соответствующих одному из ведущих видов расчета, приведет к перерасчету строк журнала с зависимыми видами расчета, относящихся к тому же периоду действия, что и измененная запись. Это значит, что какой бы период действия не имела изменяемая строка журнала, будет введена запись-перерасчет (для прошлых периодов) или снят признак «рассчитанности» (для текущего периода) для соответствующих записей журнала, имеющих тот же период действия;

...в следующих n периодах журнала расчетов

ввод, редактирование или удаление строк журнала расчетов, соответствующих одному из ведущих видов расчета, приведет к перерасчету строк журнала с зависимыми видами расчета, относящихся к будущим (относительно измененной записи) периодам действия, что и измененная запись. Это значит, что при изменении записи журнала расчетов, действующей в одном из прошлых периодов (т. е. «задним числом»), будут введены записи-перерасчеты (для прошлых периодов) или снят признак «рассчитанности» (для текущего периода) для соответствующих записей журнала, имеющих один из последующих n периодов действия.






Перейти  к оглавлению: Конфигурирование и администрирование