ПерерасчетЗапись.<Имя перерасчета>.<Имя измерения>

Свойства · <Dimension name>

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

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

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

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

<Имя измерения> (<Dimension name>)

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

Использование:
Чтение и запись.
Описание:
Тип: Произвольный.
Набор свойств содержит значения измерений перерасчета. Доступ к значению осуществляется по имени, как оно задано в конфигурации.
Доступность:

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

Примечание:
Тип свойства определяется измерением или реквизитом родительского регистра расчета. В качестве типа допускается использовать любые типы, кроме УникальныйИдентификатор, ДвоичныеДанные и строки неограниченной длины.
Использование в версии:

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

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

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

Получить свой перерасчёт по имени и заполнить КодКниги

Менеджер получен из существующего собственного регистра, измерение создано в его метаданных. Набор перерасчёта остаётся в памяти.

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

Собственная серверная процедура в отдельной учебной конфигурации; источник создаёт только свои объекты.

Подготовка

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

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

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

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

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

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

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

  8. Обе процедуры разместите отдельно в своём серверном общем модуле. Вызовите экспортную ПроверитьСвойПерерасчет из отдельной команды вне внешней транзакции. Создаются собственный документ и начисление, но подготовленный набор перерасчёта НЕ записывается. Весь источник отменяется в обеих ветках драйвера.

  9. Не подставляйте реальные регистры начислений и документы. BSL и запись источника при сборке HTML не выполнялись.

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

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

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

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

  3. Добавьте строку в памяти и прочитайте настоящий КодКниги до записи перерасчёта.

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

  1. КодКниги возвращает BOOK-001 потому, что поле создано и заполнено в реальной строке.

  2. Оба описания менеджера перерасчётов относятся к документированному доступу через Перерасчеты.УчебнаяПроверка. Код не назначает сам менеджер в readonly-свойство.

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

Имя менеджера и динамическое измерение имеют собственный настоящий источник.

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

  1. Набор перерасчёта в памяти ещё не означает регистрацию необходимости пересчёта в базе.

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

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

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

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

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