Как да използвате изчислителни регистри в 1C 8
Регистри за изчисление 1C 8.3 е системен обект, предназначен да съхранява резултатите от сложни периодични изчисления на заплатите.
Изчислителният регистър е доста специфичен обект на системата поради предназначението си. Понякога програмистите на 1C с доста голям опит в решаването на счетоводни проблеми и оперативни счетоводни задачи никога не са имали опит с решаването на проблеми със сложни периодични изчисления.
Свойства и настройка на изчислителния регистър в 1C 8.2
Регистрите за изчисление се отличават с изобилие от нови свойства, които няма да видите в други обекти на системата:
На първо място, за регистъра на изчисленията е задължително да се посочи планът на видовете изчисления, който съхранява информация за видовете такси / удръжки.
Период на валидност е флаг, който показва поддръжка за периодичността на регистъра за изчисление. Отговаря за активността на стандартните атрибути PeriodAction, PeriodActionStart, PeriodActionEnd.
Базов период — флаг, отговорен за използването на механизма за изчисление въз основа на базови периоди. База за изчисление - друг вид изчисление, въз основа на което се изчислява текущият запис. Отговаря за активността на стандартните атрибути BasePeriodEnd и BasePeriodStart.
Периодичност е атрибут, който показва честотата на изчисленията. В зависимост от този атрибут, стойността на атрибута Период на регистрация се задава в началото на периода на фактуриране.
График на регистъра на изчисленията 1C 8
Пример за диаграма, която съхранява информация в часове:
От графиката става ясно, че 4, 5, 9 е почивен ден, а 6, 7, 8 са осемчасови работни дни.
Попълването на графика в системата обикновено се извършва чрез произволна обработка. Пример за програмен код на процедурата за попълванеграфични изкуства:
Тази процедура ще запълни делничните дни с 8 и уикендите с 0.
Измерение и атрибут на регистъра на изчисленията могат да бъдат свързани със стойност на диаграма. Това е необходимо за получаване на данни в необходимите раздели. Например в работен график стойностите могат да бъдат посочени в контекста на служителите. Тези. колко служители, толкова графици. За правилното изчисление ще е необходимо да посочите връзката с графиката в палитрата със свойства на регистъра за изчисление:
Пример за създаване на записи в регистъра за изчисления 1C
Силно се препоръчва всички сложни периодични изчисления да бъдат разделени на 2 етапа: подготовка на таблици въз основа на документа и изчисляване на данни въз основа на тази таблица, извършвани отна сървъра.
Нека да разгледаме типичен начин за създаване на записи в регистъра на заплатите.
Първият етап е формирането на предварителни записи:
При тази обработка на публикуването подготвихме предварителни записи за бъдеща обработка, записахме ги и ги прехвърлихме за изчисление към процедурата на общия модул „Изчисляване на RFP“ с директивата за изпълнение на сървъра.
Вторият етап е самото изчисление:
Обърнете внимание на параметрите на конструкцията Additional.Write(, True). Зададеният параметър номер 2 -Само запис ви позволява да оптимизирате записа на набор от записи, като деактивирате преизчисляването на общите суми при повторно записване в общ модул.