Готовишься к экзамену?
Полнофункциональный тренажер @bot_1cnik_bot с полноценным обучением, режимом экзамена и подробной статистикой.
В 1С при настройке автозаполнения документа «Ведомость в кассу» строки с сотрудниками и суммами хранятся в табличной части. Какие подчиненные объекты может иметь объект метаданных «Табличная часть»?
Только реквизиты табличной части (колонки таблицы)
Правильно: табличная часть описывается набором реквизитов (колонок), по которым и хранится информация в строках. Именно реквизиты задают состав данных каждой строки табличной части (например, сотрудник, сумма к выплате, период и т.п.).
Вложенные табличные части внутри табличной части
Неправильно: табличная часть не поддерживает «табличные части внутри табличных частей» как подчиненные объекты метаданных; структура строки задается реквизитами, а не вложенными таблицами.
Отдельные формы табличных частей (как самостоятельные подчиненные объекты)
Неправильно: формы относятся к прикладному объекту в целом (документу, справочнику и т.д.). Табличная часть отображается в форме объекта как элемент управления, но собственных «форм табличной части» как подчиненного объекта метаданных у табличной части нет.
Реквизиты и вложенные табличные части
Неправильно: из перечисленного табличная часть может иметь только реквизиты; вложенные табличные части в составе табличной части не допускаются.
И реквизиты, и вложенные табличные части, и формы табличных частей
Неправильно: табличная часть ограничивается реквизитами (колонками). Вложенные табличные части и «формы табличных частей» не являются ее подчиненными объектами метаданных.
Пояснение
Связь с «Ведомостью в кассу» простая: табличная часть ведомости - это таблица, где каждая строка соответствует сотруднику (или физлицу) и сумме к выплате. Автозаполнение по кнопке «Заполнить» формирует именно строки табличной части, заполняя ее реквизиты (колонки) данными.
Как это выглядит на практике:
- Ведомость имеет табличную часть с колонками (реквизитами) вроде «Сотрудник/Физлицо», «К выплате», иногда - «Подразделение», «Вид дохода» и т.п. Конкретный набор колонок зависит от конфигурации и настроек.
- При нажатии «Заполнить» программа подбирает строки по данным учета: обычно это остаток сумм к выплате за выбранный месяц/вид выплаты с учетом уже оформленных ведомостей.
Почему важно понимать, что у табличной части подчинены только реквизиты:
1) Если нужно «добавить данные» в строки ведомости (например, служебную отметку, комментарий, внешний идентификатор), это делается добавлением реквизита табличной части (новой колонки) и заполнением его значений.
2) Если нужно изменить логику автозаполнения (например, фильтровать сотрудников, пересчитывать суммы, проставлять дополнительные признаки), вы работаете со строками табличной части и ее реквизитами - а не создаете «табличную часть внутри табличной части».
Мини-сценарий доработки после автозаполнения:
- Пользователь нажал «Заполнить», ведомость сформировала строки.
- Доработка (в расширении/обработке) проходит по строкам и, например, заполняет новый реквизит «Примечание» или снимает строки, которые не должны попадать в выплату по внутреннему правилу.
Типовые проверки, если ведомость не заполняется или заполняется не всеми:
- У сотрудника должен подходить способ (место) выплаты: для кассовой ведомости - выплата через кассу; при несоответствии сотрудник может не попасть в заполнение.
- В шапке ведомости должны быть корректны месяц выплаты/месяц начисления и вид выплаты; несоответствие часто приводит к пустому заполнению.
- По сотруднику должна быть сумма к выплате (если выплата уже отражена другой ведомостью за тот же период, остаток может быть нулевым).
Итог: табличная часть - это «таблица строк», а ее структура определяется реквизитами. Именно их вы видите как колонки в «Ведомости в кассу», и именно они заполняются при автозаполнении.