Прочитать поле разделителя таблицы ЖурналДокументов.УчебныйЖурналОбласти

Учебные задачи

УчебнаяОбластьТаблицы — реальный общий реквизит-разделитель участвующих метаданных. Обычный неразделяющий УчебныйИсточник и параметр запроса с похожим именем такого поля не создают.

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

Собственная серверная процедура в отдельной учебной базе; установка области предшествует созданию / проведению данных.

Подготовка

  1. Создайте собственный документ УчебнаяЗапискаЖурнала: строковый номер 12 с автонумерацией, проведение не требуется.

  2. Создайте журнал документов УчебныйЖурналОбласти и включите только УчебнаяЗапискаЖурнала. Разделитель добавляется именно документу, входящему в состав журнала, не произвольной графе журнала.

  3. Этот пример выполняется только в отдельной своей учебной клиент-серверной базе с разделением данных. Не меняйте разделители рабочей конфигурации.

  4. Создайте параметры сеанса УчебнаяОбластьТаблицы (Число 10.0) и УчебнаяОбластьТаблицыИспользуется (Булево).

  5. Создайте общий реквизит УчебнаяОбластьТаблицы типа Число 10.0: РазделениеДанных = Разделять, ИспользованиеРазделяемыхДанных = НезависимоИСовместно. Значение / использование разделения свяжите с указанными параметрами сеанса; Автоиспользование = Не использовать.

  6. В состав разделителя включите: Документ.УчебнаяЗапискаЖурнала. Разделение пользователей, аутентификации и расширений не включается.

  7. После обновления учебной базы сначала выполните блок установки области в серверной процедуре, затем источник данных по его подписи, затем основной запрос. В уже созданных данных другой области разделитель задним числом не заменяется.

Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ
| Данные.УчебнаяОбластьТаблицы КАК Область
|ИЗ ЖурналДокументов.УчебныйЖурналОбласти КАК Данные
|ГДЕ Данные.УчебнаяОбластьТаблицы = &Область";
Запрос.УстановитьПараметр("Область", 1);
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
    Сообщить("Область собственных данных: " + Строка(Выборка.Область));
КонецЦикла;
Сначала в своей серверной процедуре: установить область до создания данных
ОбластьУрока = 1;
ПараметрыСеанса.УчебнаяОбластьТаблицы = ОбластьУрока;
ПараметрыСеанса.УчебнаяОбластьТаблицыИспользуется = Истина;
Сообщить("Установлена своя область: " + Строка(ОбластьУрока));
Сообщить("Собственные данные создавайте после этой подготовки");
После установки своей области, перед запросом: собственный документ журнала
Документ = Документы.УчебнаяЗапискаЖурнала.СоздатьДокумент();
Документ.Дата = Дата(2026, 10, 15);
Документ.Записать();
СвояСсылка = Документ.Ссылка;
Сообщить("Свой документ журнала: " + Строка(СвояСсылка));

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

  1. Настраиваем свой разделитель с требуемым видом использования и точным составом.

  2. До создания собственного документа / записи устанавливаем область 1, затем выполняем указанный источник данных.

  3. Запрос выбирает и выводит именно поле таблицы с условием по области; РАЗЛИЧНЫЕ не превращает пустую выборку в выдуманный результат.

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

  1. При наличии созданных собственных данных / рассчитанной виртуальной таблицы выведена область 1.

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

  3. Источник и запрос не работают с бухгалтерскими / расчётными регистрами типовой конфигурации.

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

Общий реквизит показан в настоящей таблице только при выполнении её условий доступности.

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

  1. Не добавляйте в запрос имя общего реквизита, не являющегося подходящим разделителем: такого поля может не быть.

  2. Запрос не снимает ограничения разделения данных и не читает все области базы.

  3. При сборке HTML BSL, настройка сеанса и запись собственных учебных данных в 1С не выполнялись.

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

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

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

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

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