Документ «Табель учёта рабочего времени»

Фиксирует фактически отработанное и неотработанное время сотрудников по дням месяца и передаёт эти данные в расчёт зарплаты — основу для исчисления ИПН, ОПВ, СО и ВОСМС. Используется табельщиками, кадровиками и расчётчиками ежемесячно по каждому подразделению.

ЗУП для Казахстана, ред. 3.1 · v3.1.2.24 · обновлено 2026-06

🎯 Что это и зачем

Документ «Табель учёта рабочего времени» — первичный источник данных о явках и отсутствиях сотрудников. По каждому сотруднику в каждый день периода вводятся часы и вид времени (явка, ночные, командировка, прогул и т.д. — из справочника ВидыИспользованияРабочегоВремени). Введённый табель имеет приоритет над графиком работы: его движения формируют данные табельного и сводного учёта, которые затем использует расчёт зарплаты за период.

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

Кто работает: табельщики, кадровики, расчётчики зарплаты — как правило, ежемесячно (или за часть месяца при расчёте аванса) по каждому подразделению организации.

🧭 Где найти в программе

Раздел «Кадры» → пункт «Табель учёта рабочего времени». Откроется журнал документов; новый создаётся кнопкой «Создать».

📌 Заметка. Точное расположение пункта в меню зависит от настроек интерфейса и прав пользователя. Если в разделе «Кадры» пункта нет — ищите через «Все функции» или в разделе расчёта зарплаты. Расположение в карте объекта конфигурации не определено (metadata.forms = []).

👤 Часть 1. Для пользователя

Три сценария: от ввода полного месячного табеля до корректировки и сменной работы.

Урок 1. Табель за полный месяц по подразделению

Когда: ежемесячная фиксация фактического времени, когда факт отличается от графиков или в организации принят табельный метод учёта.

  1. Создаём новый документ «Табель учёта рабочего времени».
  2. Заполняем Организацию (обязательна — ShowError) — определяет список доступных подразделений и сотрудников.
  3. Указываем Подразделение (необязательно; пустое значение = табель без разреза подразделения).
  4. Выставляем Период регистрации (ПериодРегистрации) — месяц, за который вводится время; типичное значение — первое число месяца.
  5. Выбираем Период ввода данных о времени (ПериодВводаДанныхОВремени, обязателен — ShowError) — перечисление «Периоды ввода данных о времени»; выбирайте до ручной правки дат границ.
  6. Проверяем или заполняем Дату начала периода и Дату окончания периода (оба поля обязательны — ShowError); они задают привязку нумерованных колонок «день N» в матрице.
  7. В табличной части «Данные о времени» добавляем сотрудников. По каждому дню N заполняем пару ЧасовN + ВидВремениN — часы без вида (или вид без часов) неинтерпретируемы для расчёта.
  8. При необходимости по дням указываем ТерриторияN и УсловияТрудаN.
  9. Заполняем подписантов печатной формы: Руководитель / ДолжностьРуководителя, РаботникКадровойСлужбы / ДолжностьРаботникаКадровойСлужбы, Исполнитель («Ответственное лицо») / ДолжностьИсполнителя и основания подписей.
  10. Проводим документ.
📷 Скриншот: шапка документа «Табель учёта рабочего времени»
Шапка: Организация, Подразделение, Период регистрации, Период ввода данных о времени, даты границ периода.
💡 Подсказка. Порядок заполнения шапки важен: сначала Организация, затем Период регистрации, затем Период ввода данных о времени (перечисление), и только потом при необходимости корректируем даты границ вручную. Поле КраткийСоставДокумента (подпись «Сотрудники») вычисляется автоматически — не редактировать.
⚠️ Важно. Обязательны четыре поля шапки: Организация, ДатаНачалаПериода, ДатаОкончанияПериода, ПериодВводаДанныхОВремени — без любого из них документ не проведётся. Часы и вид времени вводите только для дней внутри указанного периода; колонки N вне диапазона дат оставляйте пустыми.

Урок 2. Табель за часть месяца (аванс / первая половина)

Когда: время вводится не сразу за полный месяц — например, для расчёта аванса за первую половину месяца или за произвольный отрезок.

  1. Создаём документ, заполняем Организацию и Период регистрации.
  2. В поле Период ввода данных о времени выбираем нужное значение перечисления ПериодыВводаДанныхОВремени — например, «первая половина месяца».
  3. Проверяем, что ДатаНачалаПериода / ДатаОкончанияПериода соответствуют выбранному отрезку (например, 1–15 число).
  4. В ТЧ «Данные о времени» заполняем колонки ЧасовN / ВидВремениN только для дней внутри выбранного периода; дни вне границ оставляем пустыми.
  5. Проводим.
📌 Заметка. После проведения частичного табеля время за остаток месяца будет взято из графика работы или из последующего табеля за вторую часть месяца. Два табеля за один месяц по одному подразделению — нормальная практика при расчёте аванса.
💡 Подсказка. Номер колонки N всегда отсчитывается от ДатаНачалаПериода: если период начинается 1-го числа, то Часов1 = 1-е число, Часов15 = 15-е число. Если период начинается 16-го, то Часов1 = 16-е число и т.д.

Урок 3. Корректирующий табель и сменная работа

Когда: после сдачи табеля обнаружились ошибки у части сотрудников, либо сотрудники работают посменно с переходящими сменами.

Корректирующий табель:

  1. Создаём новый документ — не правим исходный.
  2. В реквизите Исправленный документ (ИсправленныйДокумент) выбираем исходный табель (тип жёсткий — только «Табель учёта рабочего времени»).
  3. В ТЧ «Сотрудники с исправлениями» (СотрудникиСИсправлениями) перечисляем сотрудников, по которым вносятся правки.
  4. В ТЧ «Данные о времени» вводим правильные данные только по этим сотрудникам за те же дни.
  5. Проводим.

Сменная работа с переходящими сменами:

  1. Создаём табель, заполняем шапку стандартно.
  2. В ТЧ «Смены» по строке сотрудника указываем в колонках СменаN смену (справочник СменыРаботыСотрудников) на каждый отработанный день N.
  3. Для переходящих смен (ночная смена через полночь) решаем отнесение часов: флаг ОтражатьЧасыВДеньНачалаСменыN = Истина — все часы в день начала смены; Ложь — «хвост» смены пометить в ТЧ «Данные о времени» флагом ПереходящаяЧастьСменыN.
  4. Ночные часы оформляем отдельным видом времени в ВидВремениN — это влияет на доплаты за ночные/праздничные при расчёте зарплаты.
  5. Сверяем согласованность ТЧ «Смены» и ТЧ «Данные о времени» по дням, проводим.
⚠️ Важно. Если по периоду уже рассчитана зарплата, корректнее использовать механизм корректирующего табеля (реквизит ИсправленныйДокумент + ТЧ СотрудникиСИсправлениями), чтобы история изменений сохранилась. Для открытого периода без начислений можно просто перепровести исходный документ.
💡 Подсказка. Перед расчётом зарплаты откройте список табелей и ориентируйтесь по колонке «Сотрудники» (КраткийСоставДокумента) — в ней автоматическая сводка состава, удобная для сверки полноты покрытия подразделений.

🛠 Часть 2. Для программиста

Состав объекта, регистры-приёмники движений и логика проведения. Конфигурация ЗУП для Казахстана 3.1, релиз 3.1.2.24.

Структура объекта

Тип объекта — документ. Нумерация: тип номера String, длина 11, периодичность Year. В шапке 19 реквизитов; 5 табличных частей. Ядро — ТЧ ДанныеОВремени с матрицей 156 колонок (5 групп × 31 день + поле «Сотрудник»). Ниже — полный состав шапки и все ТЧ.

Реквизиты шапки

ИмяТипОбяз.Назначение
ПериодРегистрацииxs:dateTimeНетМесяц отражения данных в учёте; определяет период движений. Типичное значение — первое число месяца табеля.
ОрганизацияСправочникСсылка.ОрганизацииДаОрганизация, по которой ведётся табель; задаёт список подразделений и сотрудников.
ПодразделениеСправочникСсылка.ПодразделенияОрганизацийНетПодразделение табеля; пустое значение = табель без разреза.
ДатаНачалаПериодаxs:dateTimeДаНачало табелируемого периода — определяет, какому дню соответствует колонка «1».
ДатаОкончанияПериодаxs:dateTimeДаОкончание периода — задаёт число активных дневных колонок.
ПериодВводаДанныхОВремениПеречислениеСсылка.ПериодыВводаДанныхОВремениДаУправляющее перечисление — за какой отрезок вводится время; задаёт и контролирует границы периода.
ИсправленныйДокументДокументСсылка.ТабельУчетаРабочегоВремениНетВключает режим корректирующего табеля; работает в паре с ТЧ СотрудникиСИсправлениями. Для обычного табеля оставлять пустым.
РуководительСправочникСсылка.ФизическиеЛицаНетПодписант-руководитель для печатной формы.
ДолжностьРуководителяСправочникСсылка.ДолжностиНетДолжность руководителя (подпись «Должность» — совпадает с синонимами двух других полей).
ОснованиеПодписиРуководителя(тип не указан)НетОснование подписи руководителя.
РаботникКадровойСлужбыСправочникСсылка.ФизическиеЛицаНетПодписант от кадровой службы.
ДолжностьРаботникаКадровойСлужбыСправочникСсылка.ДолжностиНетДолжность кадровика (синоним «Должность»).
ОснованиеПодписиРаботникаКадровойСлужбы(тип не указан)НетОснование подписи кадровика.
ИсполнительСправочникСсылка.ФизическиеЛицаНетСоставитель табеля; синоним «Ответственное лицо» — не путать с полем Ответственный.
ДолжностьИсполнителяСправочникСсылка.ДолжностиНетДолжность исполнителя (синоним «Должность»).
ОснованиеПодписиИсполнителя(тип не указан)НетОснование подписи исполнителя.
КраткийСоставДокументаxs:stringНетСиноним «Сотрудники» — вычисляемая сводка состава ТЧ для списка документов. Не редактировать вручную.
ОтветственныйСправочникСсылка.ПользователиНетОтветственный пользователь ИБ.
Комментарийxs:stringНетПроизвольный комментарий.
⚠️ Внимание: неоднозначные синонимы. Три разных реквизита — ДолжностьРуководителя, ДолжностьРаботникаКадровойСлужбы, ДолжностьИсполнителя — имеют одинаковый синоним «Должность» в UI. Реквизит Исполнитель подписан «Ответственное лицо», а КраткийСоставДокумента — «Сотрудники». Для DOM-селекторов агента используйте только имена реквизитов, не синонимы.

Табличные части

ТЧ ДанныеОВремени (синоним «Данные о времени») — ядро документа. 156 колонок: Сотрудник + 5 групп по 31 колонке. Имена строятся по шаблону «ИмяГруппы + N», N = 1…31 (все 31 присутствуют).

Имя (серия)ТипНазначение
СотрудникСправочникСсылка.СотрудникиСотрудник строки (один сотрудник — одна строка матрицы).
Часов1…Часов31xs:decimalКоличество часов за день N периода. Всегда вводить в паре с ВидВремениN.
ВидВремени1…ВидВремени31СправочникСсылка.ВидыИспользованияРабочегоВремениВид использования рабочего времени (явка, ночные, отпуск, командировка и т.п.) за день N.
Территория1…Территория31СправочникСсылка.ТерриторииВыполненияРаботТерритория выполнения работ в день N; заполняется только при ведении территориального учёта.
УсловияТруда1…УсловияТруда31СправочникСсылка.УсловияТрудаУсловия труда в день N.
ПереходящаяЧастьСмены1…ПереходящаяЧастьСмены31xs:booleanПризнак: часы дня N — переходящая часть смены, начавшейся накануне (критично для ночных смен).

ТЧ СотрудникиСИсправлениями (синоним «Сотрудники с исправлениями») — список сотрудников корректирующего табеля.

ИмяТипНазначение
СотрудникСправочникСсылка.СотрудникиСотрудник, данные которого исправляются в паре с ИсправленныйДокумент.

ТЧ ФизическиеЛица (синоним «Физические лица») — служебный список затронутых физлиц (для отборов/блокировок); агентом не заполняется.

ИмяТипНазначение
ФизическоеЛицоСправочникСсылка.ФизическиеЛицаФизлицо, фигурирующее в документе.

ТЧ Смены (синоним «Смены») — посменная детализация. 63 колонки: Сотрудник + 2 группы по 31 колонке.

Имя (серия)ТипНазначение
СотрудникСправочникСсылка.СотрудникиСотрудник строки.
Смена1…Смена31СправочникСсылка.СменыРаботыСотрудниковСмена, отработанная в день N.
ОтражатьЧасыВДеньНачалаСмены1…ОтражатьЧасыВДеньНачалаСмены31xs:booleanДля переходящей смены дня N: относить ли все часы к дню начала смены (Истина) или делить по дням (Ложь).

ТЧ ДополнительныеРеквизиты (синоним «Дополнительные реквизиты») — типовой механизм доп. реквизитов (БСП).

ИмяТипНазначение
СвойствоПланВидовХарактеристикСсылка.ДополнительныеРеквизитыИСведенияВид доп. реквизита.
Значение(составной)Значение доп. реквизита.
ТекстоваяСтрокаxs:stringТекстовое значение доп. реквизита.

Движения по регистрам

Документ объявлен регистратором по 6 регистрам — 5 регистров накопления и 1 регистр сведений. Собственных налоговых регистров (ИПН/ОПВ/СО/ВОСМС) у табеля нет — влияние на налоги происходит позже, через расчётные документы начислений.

РегистрТипНазначение
ДанныеТабельногоУчетаРабочегоВремениСотрудниковНакопленияОсновной регистр табельного учёта — собственно часы и виды времени по дням.
ДанныеОперативногоУчетаРабочегоВремениСотрудниковНакопленияОперативные данные времени (используются для текущих запросов и отчётов).
ДанныеСводногоУчетаРабочегоВремениСотрудниковНакопленияСводный учёт времени — агрегированные данные за период.
ДанныеИндивидуальныхГрафиковСотрудниковНакопленияДанные индивидуальных графиков; табель корректирует их при вытеснении.
ВытесняемоеПлановоеВремяСотрудниковНакопленияФиксирует, какое плановое время графика вытесняется фактом табеля.
ПараметрыПериодовСтажаПФРСведенийНаследие РФ-типовой ПФР — российский пенсионный фонд; в КЗ не используется. Специальных действий не требует.
📌 Проверка после проведения. Убедитесь, что движения появились в ДанныеТабельногоУчетаРабочегоВремениСотрудников и ДанныеСводногоУчетаРабочегоВремениСотрудников — это подтвердит, что время за период зафиксировано и будет учтено расчётом зарплаты (и далее — в базах ИПН/ОПВ/СО/ВОСМС через начисления).

Как формируется проведение — реальный код (3.1.2.24)

⚠️ Важно об источнике. В использованной XML-выгрузке конфигурации модули объекта отсутствуют (секции bsl_static / bsl_summaries пусты), поэтому дословный текст процедуры ОбработкаПроведения и обработчиков ПриИзменении привести нельзя. Ниже — реконструкция по метаданным (состав регистров-приёмников и обязательность реквизитов): это не цитата исходного кода, а корректная по структуре схема.

Структура обязательности (из fill_value_required: ShowError) — поля, которые платформа проверяет автоматически перед записью:

// Реконструкция по metadata: 4 реквизита с проверкой заполнения (ShowError).
// Имена — дословно из метаданных.
ПроверяемыеРеквизиты =
    "Организация,
     ДатаНачалаПериода,
     ДатаОкончанияПериода,
     ПериодВводаДанныхОВремени";
// Дополнительные прикладные проверки задаёт ОбработкаПроверкиЗаполнения (в выгрузке нет).

Схема проведения (реконструкция по составу регистров-приёмников):

// Реконструкция по metadata.register_records (6 регистров). Не дословный код модуля.
Процедура ОбработкаПроведения(Отказ, РежимПроведения)

    // 1. Основной табельный учёт: часы и виды времени из ТЧ ДанныеОВремени.
    Движения.ДанныеТабельногоУчетаРабочегоВремениСотрудников;

    // 2. Оперативный и сводный учёт времени (для отчётов и текущих запросов).
    Движения.ДанныеОперативногоУчетаРабочегоВремениСотрудников;
    Движения.ДанныеСводногоУчетаРабочегоВремениСотрудников;

    // 3. Индивидуальные графики и вытеснение планового времени фактом.
    Движения.ДанныеИндивидуальныхГрафиковСотрудников;
    Движения.ВытесняемоеПлановоеВремяСотрудников;

    // 4. Наследие РФ-типовой: стаж ПФР (в КЗ не используется, движение пустое).
    Движения.ПараметрыПериодовСтажаПФР; // RU-наследие, не требует действий в КЗ

    // 5. Запись наборов записей всех регистров.
    Движения.Записать();

КонецПроцедуры

Зависимости

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

ЗависимостьЧто используется
Справочники времениВидыИспользованияРабочегоВремени — виды в колонках ВидВремениN; СменыРаботыСотрудников — смены в ТЧ «Смены»
Справочники аналитикиТерриторииВыполненияРабот, УсловияТруда — дневная аналитика
Справочники кадровСотрудники, ФизическиеЛица, Организации, ПодразделенияОрганизаций, Должности, Пользователи
ПеречислениеПериодыВводаДанныхОВремени — управляющее перечисление шапки
СамоссылкаДокумент.ТабельУчетаРабочегоВремени через реквизит ИсправленныйДокумент — механизм корректирующего табеля
БСПМеханизм «Дополнительные реквизиты и сведения» (ТЧ ДополнительныеРеквизиты)
Регистры графиковДанныеИндивидуальныхГрафиковСотрудников — чтение плановых данных графика при вытеснении
📌 Заметка. Документы-основания (based_on) и список «кто создаётся на основании этого» (inverse_based_on) в метаданных пусты — ввод на основании других документов не предусмотрен; другие документы на основании табеля также не создаются. Связь «табель → корректирующий табель» реализована реквизитом ИсправленныйДокумент (самоссылка), а не механизмом ввода на основании.

🔗 Связанные разделы