ПерерасчетЗапись.<Имя перерасчета>.<Имя общего реквизита>

Свойства · <Имя общего реквизита>

Тип: Произвольный. Набор свойств содержит значения общих реквизитов, входящих в объект метаданных. Но только тех общих реквизитов, которые или не являются разделителями (РазделениеДанных = НеИспользовать), или являются разделителями (РазделениеДанных = Разделять) и имеют настройку разделения ИспользованиеРазделяемыхДанных = НезависимоИСовместно. Доступ к значению осуществляется по имени, как оно задано в Конфигураторе.

Полное описание, параметры и ограничения

ПерерасчетЗапись.<Имя перерасчета>.<Имя общего реквизита> (RecalculationRecord.<Recalculation name>.<Имя общего реквизита>)

ПерерасчетЗапись.<Имя перерасчета> (RecalculationRecord.<Recalculation name>)

<Имя общего реквизита> (<Имя общего реквизита>)

Доступен, начиная с версии 8.2.

Использование:
Только чтение.
Описание:
Тип: Произвольный.
Набор свойств содержит значения общих реквизитов, входящих в объект метаданных. Но только тех общих реквизитов, которые или не являются разделителями (РазделениеДанных = НеИспользовать), или являются разделителями (РазделениеДанных = Разделять) и имеют настройку разделения ИспользованиеРазделяемыхДанных = НезависимоИСовместно.
Доступ к значению осуществляется по имени, как оно задано в Конфигураторе.
Доступность:

Сервер, толстый клиент, внешнее соединение.

Использование в версии:

Доступен, начиная с версии 8.2.

Методическая информация

Практические примеры

Прочитать readonly-область своей записи перерасчёта

Свой разделитель задаётся контекстом собственного сеанса и метаданными. Поле общего реквизита записи перерасчёта не присваивается напрямую.

Где и как запускать

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

Подготовка

  1. Работайте только в собственной пустой учебной конфигурации. В Конфигураторе создайте ПланВидовРасчета УчебныеВидыРасчета; не добавляйте эти учебные объекты в рабочую базу.

  2. Код — строковый длиной 10, наименование длиной 100. Для справочника, плана обмена и плана видов характеристик включите автонумерацию. Для счетов и видов расчёта код назначается явно в примере.

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

  4. Добавьте реквизиты Комментарий (Строка 100), Лимит (Число 15.2 с разрешённым отрицательным знаком), ЗапретУдаления (Булево). Не делайте их автоматически обязательными: дополнительные правила описаны отдельными обработчиками.

  5. Для этой диагностики дополнительно создайте документ УчебныйРасчетНастроек с разрешённым проведением. Создайте регистр расчёта УчебныеНачисленияНастроек, периодичность Месяц, план видов расчёта УчебныеВидыРасчета, регистратор УчебныйРасчетНастроек, ресурс Результат типа Число 12.2.

  6. У регистра расчёта УчебныеНачисленияНастроек добавьте измерение КодКниги Строка 40. Создайте перерасчёт УчебнаяПроверка с измерением КодКниги, свяжите его с одноимённым основным измерением регистра.

  7. Объект перерасчёта — собственный документ УчебныйРасчетНастроек. Остальные механизмы расчёта оставьте выключенными. Источник ниже создаёт собственные вид расчёта, документ и начисление 750 только внутри отменяемой транзакции.

  8. Только собственная клиент-серверная учебная база с разделением. Параметры сеанса УчебнаяОбластьПерерасчета Число 10.0 и УчебнаяОбластьПерерасчетаИспользуется Булево.

  9. Общий реквизит УчебнаяОбластьПерерасчета: РазделениеДанных=Разделять, ИспользованиеРазделяемыхДанных=НезависимоИСовместно; значение / использование связаны с указанными параметрами сеанса. Автоиспользование выключено; включите свои УчебныйРасчетНастроек и УчебныеНачисленияНастроек в состав.

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

  11. В отличие от записи последовательности, общий реквизит ПерерасчетЗапись доступен только для чтения. Он берётся у действительно записанного и перечитанного своего набора; BSL при сборке HTML не выполнялся.

Процедура ПроверитьОбластьПерерасчета() Экспорт
    Если ТранзакцияАктивна() Тогда
        ВызватьИсключение "Нужна отдельная команда вне чужой транзакции";
    КонецЕсли;
    НачатьТранзакцию();
    Попытка
        Набор = ПодготовитьСвойРазделенныйПерерасчет();
        Сообщить("Область своей записи: " + Строка(Набор[0].УчебнаяОбластьПерерасчета));
        ОтменитьТранзакцию();
    Исключение
        ОтменитьТранзакцию();
        ВызватьИсключение;
    КонецПопытки;
КонецПроцедуры
Тот же модуль: записать и перечитать только собственный набор в области 1
Функция ПодготовитьСвойРазделенныйПерерасчет()
    ПараметрыСеанса.УчебнаяОбластьПерерасчета = 1;
    ПараметрыСеанса.УчебнаяОбластьПерерасчетаИспользуется = Истина;
    ВидРасчета = ПланыВидовРасчета.УчебныеВидыРасчета.СоздатьВидРасчета();
    ВидРасчета.Код = Лев(Строка(Новый УникальныйИдентификатор), 8);
    ВидРасчета.Наименование = "Учебное начисление";
    ВидРасчета.Записать();
    Документ = Документы.УчебныйРасчетНастроек.СоздатьДокумент();
    Документ.Дата = Дата(2026, 10, 14);
    Документ.Записать();
    Набор = РегистрыРасчета.УчебныеНачисленияНастроек.СоздатьНаборЗаписей();
    Набор.Отбор.Регистратор.Установить(Документ.Ссылка);
    Запись = Набор.Добавить();
    Запись.ПериодРегистрации = Дата(2026, 10, 1);
    Запись.ВидРасчета = ВидРасчета.Ссылка;
    Запись.Активность = Истина;
    Запись.Результат = 750;
    Запись.КодКниги = "BOOK-001";
    Набор.Записать();
    Менеджер = РегистрыРасчета.УчебныеНачисленияНастроек.Перерасчеты.УчебнаяПроверка;
    Набор = Менеджер.СоздатьНаборЗаписей();
    Набор.Отбор.ОбъектПерерасчета.Установить(Документ.Ссылка);
    Запись = Набор.Добавить();
    Запись.ОбъектПерерасчета = Документ.Ссылка;
    Запись.КодКниги = "BOOK-001";
    Набор.Записать();
    Набор.Прочитать();
    Возврат Набор;
КонецФункции

Разбор по шагам

  1. Подготовьте свою модель перерасчёта и разделитель.

  2. В области 1 создайте свой источник и перечитайте ограниченный набор.

  3. Прочитайте настоящий общий реквизит, не присваивая readonly-поле, и отмените опыт.

Как проверить результат

  1. Источник относится только к ссылке нового собственного объекта перерасчёта.

  2. Код не присваивает Набор[0].УчебнаяОбластьПерерасчета и не запускает расчёт зарплаты; область у записи появляется из настоящего разделённого контекста.

Ожидаемый результат

Есть полный собственный источник readonly-свойства и явная граница отменяемого опыта.

На что обратить внимание

  1. Не подставляйте рабочий регистр расчёта. Общий реквизит без включения в состав не создаёт нужное поле динамически.

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

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.