РегистрНакопленияМенеджер.<Имя регистра накопления>.ПолучитьРежимРазделенияИтогов

Методы · GetTotalsSplittingMode

Получает флаг включенности механизма разделителя итогов.

Синтаксис

ПолучитьРежимРазделенияИтогов()
Полное описание, параметры и ограничения

РегистрНакопленияМенеджер.<Имя регистра накопления>.ПолучитьРежимРазделенияИтогов (AccumulationRegisterManager.<Accumulation register name>.GetTotalsSplittingMode)

РегистрНакопленияМенеджер.<Имя регистра накопления> (AccumulationRegisterManager.<Accumulation register name>)

ПолучитьРежимРазделенияИтогов (GetTotalsSplittingMode)

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

Синтаксис:
ПолучитьРежимРазделенияИтогов()
Возвращаемое значение:
Тип: Булево.

Описание:

Получает флаг включенности механизма разделителя итогов.

Доступность:

Сервер, толстый клиент, внешнее соединение, мобильное приложение (сервер), мобильный автономный сервер.

См. также:
РегистрНакопленияМенеджер.<Имя регистра накопления>, метод УстановитьРежимРазделенияИтогов

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

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

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

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

Различить использование, текущие итоги, разделение и диапазон собственного регистра

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

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

Полный серверный модуль своей новой ПУСТОЙ УчебныеОстатки85, платформа 8.5.1.1343. Административные настройки собственного регистра; здесь не запускался.

Подготовка

  1. Создайте НОВУЮ пустую файловую базу, имя корневой конфигурации УчебныеОстатки85. Не добавляйте эти объекты в УТ/КА2/УНФ/БП. Режим управления блокировкой данных конфигурации — Управляемый.

  2. Документы → Добавить: УчебноеДвижение85. Номер: Строка длиной 40, автонумерация выключена. Модули объекта и менеджера оставьте пустыми; не добавляйте обработчики, подписки и обязательные пользовательские реквизиты.

  3. Регистры накопления → Добавить: УчебныеОстатки85. Вид регистра Остатки. Единственное измерение КодТовара: Строка 50, индексировать, проверка заполнения Показывать ошибку. Единственный ресурс Количество: Число 12,3, неотрицательное. Дополнительных реквизитов нет.

  4. В списке регистраторов выберите только собственный документ УчебноеДвижение85. Оставьте модули регистра пустыми, использование итогов включённым. Планы обмена, разделители, историю данных и фоновые задания для урока не создавайте.

  5. Корневой режим совместимости Не использовать; платформа именно 8.5.1.1343. Единственный регистр — собственный УчебныеОстатки85 вида Остатки, единственный документ — УчебноеДвижение85. База новая пустая, не копия рабочей.

  6. Для этого блока никакие документы и движения не создавайте. Запрос проверяет отсутствие записей своего регистра до административного вызова. Других пользователей, обменов, расширений и фоновых заданий нет.

  7. Создайте серверный общий модуль УчебныеИтогиПримеры. Вставьте весь модуль одного урока, вызовите ВыполнитьПример() Экспорт из собственной серверной команды обработки; обновите конфигурацию БД.

  8. Это операции настройки/обслуживания регистра, не проведение документа. Откат движений не обещает восстановить все настройки/внутренние таблицы итогов.

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

  10. При переключении булевых флагов исходное значение читается заранее и восстанавливается при успехе/ошибке. Если восстановление само завершилось ошибкой, код сообщает об этом явно; успешное восстановление не выдумывается.

  11. Примеры здесь не запускались в 1С. Ваши настройки, документы и итоги этим заполнением не изменялись.

  12. У своего УчебныеОстатки85 добавьте макет УчебнаяПамяткаИтогов типа Текстовый документ: первая строка OWN-TOTALS-85, вторая Пустой учебный регистр, не рабочая база. Обновите БД.

Процедура ВыполнитьПример() Экспорт
    Если Метаданные.Документы.Количество() <> 1
        Или Метаданные.РегистрыНакопления.Количество() <> 1
        Или Метаданные.Документы.Найти("УчебноеДвижение85") = Неопределено Тогда
        ВызватьИсключение "Разрешены только собственный учебный документ и регистр";
    КонецЕсли;
    Описание = Метаданные.РегистрыНакопления.Найти("УчебныеОстатки85");
    Если Описание = Неопределено Тогда
        ВызватьИсключение "Сначала создайте собственный учебный регистр";
    КонецЕсли;
    Если Описание.ВидРегистра <> Метаданные.СвойстваОбъектов.ВидРегистраНакопления.Остатки
        Или Описание.Измерения.Количество() <> 1
        Или Описание.Ресурсы.Количество() <> 1
        Или Описание.Реквизиты.Количество() <> 0
        Или Описание.Измерения.Найти("КодТовара") = Неопределено
        Или Описание.Ресурсы.Найти("Количество") = Неопределено Тогда
        ВызватьИсключение "Нужен регистр остатков с КодТовара и Количество";
    КонецЕсли;
    Менеджер = РегистрыНакопления.УчебныеОстатки85;
    Если Метаданные.РежимСовместимости <> Метаданные.СвойстваОбъектов.РежимСовместимости.НеИспользовать Тогда
        ВызватьИсключение "Нужен собственный стенд без старого режима совместимости";
    КонецЕсли;
    Если ТранзакцияАктивна() Тогда
        ВызватьИсключение "Не вызывайте административный опыт внутри чужой транзакции";
    КонецЕсли;
    Проверка = Новый Запрос;
    Проверка.Текст = "ВЫБРАТЬ КОЛИЧЕСТВО(*) КАК Строк
    |ИЗ РегистрНакопления.УчебныеОстатки85";
    Данные = Проверка.Выполнить().Выгрузить();
    Если Данные.Количество() <> 1 Тогда
        ВызватьИсключение "Не получена собственная контрольная строка";
    КонецЕсли;
    Если Данные[0].Строк <> 0 Тогда
        ВызватьИсключение "В собственном регистре уже есть движения: этот пустой административный опыт запрещён";
    КонецЕсли;
    ИспользуютсяИтоги = Менеджер.ПолучитьИспользованиеИтогов();
    ИспользуютсяТекущие = Менеджер.ПолучитьИспользованиеТекущихИтогов();
    Разделение = Менеджер.ПолучитьРежимРазделенияИтогов();
    Минимум = Менеджер.ПолучитьМинимальныйПериодРассчитанныхИтогов();
    Максимум = Менеджер.ПолучитьМаксимальныйПериодРассчитанныхИтогов();
    Сообщить(ТипЗнч(ИспользуютсяИтоги) = Тип("Булево"));
    Сообщить(ТипЗнч(ИспользуютсяТекущие) = Тип("Булево"));
    Сообщить(ТипЗнч(Разделение) = Тип("Булево"));
    Сообщить(ТипЗнч(Минимум) = Тип("Дата"));
    Сообщить(ТипЗнч(Максимум) = Тип("Дата"));
    Сообщить("Использование итогов: " + Строка(ИспользуютсяИтоги));
    Сообщить("Текущие итоги: " + Строка(ИспользуютсяТекущие));
    Сообщить("Разделение итогов: " + Строка(Разделение));
    Сообщить("Фактический минимум: " + Строка(Минимум));
    Сообщить("Фактический максимум: " + Строка(Максимум));
    Сообщить("Никакой флаг/диапазон не изменён; остаток товара здесь не вычислялся");
КонецПроцедуры

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

  1. Подготовить новую пустую УчебныеОстатки85, проверить вид Остатки и отсутствие чужой транзакции.

  2. Запросом проверить ноль движений своего регистра; никаких рабочих источников нет.

  3. Прочитать три независимых флага: общее использование, текущие итоги и разделение.

  4. Прочитать две фактические даты рассчитанных итогов; значения заранее не угадываются.

  5. Проверить типы и вывести значения. Настройки не менять и текущий остаток товара этим паспортом не подменять.

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

  1. Пять проверок типов Истина.

  2. Показаны фактические три флага и две даты своего пустого регистра.

  3. Ни один setter или пересчёт в этом уроке не вызван.

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

Читаемый паспорт собственной схемы итогов без административных изменений.

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

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

  2. ПолучитьИспользованиеИтогов и ПолучитьИспользованиеТекущихИтогов — разные настройки. Текущие итоги применимы только к Остатки.

  3. Булево возвращаемое значение метода не объявляется исходным состоянием или измеренным ускорением без отдельного контракта.

  4. Типизированные даты/флаги и явные проверки не являются доказательством запуска в 1С; здесь выполнялись только статические проверки.

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

Изменить только разделение итогов собственного пустого регистра

Разделение связано с параллельными записями итогов, а не с разделителями данных конфигурации. Здесь один сеанс и никаких обещаний ускорения.

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

Полный серверный модуль своей новой ПУСТОЙ УчебныеОстатки85, платформа 8.5.1.1343. Административные настройки собственного регистра; здесь не запускался.

Подготовка

  1. Создайте НОВУЮ пустую файловую базу, имя корневой конфигурации УчебныеОстатки85. Не добавляйте эти объекты в УТ/КА2/УНФ/БП. Режим управления блокировкой данных конфигурации — Управляемый.

  2. Документы → Добавить: УчебноеДвижение85. Номер: Строка длиной 40, автонумерация выключена. Модули объекта и менеджера оставьте пустыми; не добавляйте обработчики, подписки и обязательные пользовательские реквизиты.

  3. Регистры накопления → Добавить: УчебныеОстатки85. Вид регистра Остатки. Единственное измерение КодТовара: Строка 50, индексировать, проверка заполнения Показывать ошибку. Единственный ресурс Количество: Число 12,3, неотрицательное. Дополнительных реквизитов нет.

  4. В списке регистраторов выберите только собственный документ УчебноеДвижение85. Оставьте модули регистра пустыми, использование итогов включённым. Планы обмена, разделители, историю данных и фоновые задания для урока не создавайте.

  5. Корневой режим совместимости Не использовать; платформа именно 8.5.1.1343. Единственный регистр — собственный УчебныеОстатки85 вида Остатки, единственный документ — УчебноеДвижение85. База новая пустая, не копия рабочей.

  6. Для этого блока никакие документы и движения не создавайте. Запрос проверяет отсутствие записей своего регистра до административного вызова. Других пользователей, обменов, расширений и фоновых заданий нет.

  7. Создайте серверный общий модуль УчебныеИтогиПримеры. Вставьте весь модуль одного урока, вызовите ВыполнитьПример() Экспорт из собственной серверной команды обработки; обновите конфигурацию БД.

  8. Это операции настройки/обслуживания регистра, не проведение документа. Откат движений не обещает восстановить все настройки/внутренние таблицы итогов.

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

  10. При переключении булевых флагов исходное значение читается заранее и восстанавливается при успехе/ошибке. Если восстановление само завершилось ошибкой, код сообщает об этом явно; успешное восстановление не выдумывается.

  11. Примеры здесь не запускались в 1С. Ваши настройки, документы и итоги этим заполнением не изменялись.

  12. У своего УчебныеОстатки85 добавьте макет УчебнаяПамяткаИтогов типа Текстовый документ: первая строка OWN-TOTALS-85, вторая Пустой учебный регистр, не рабочая база. Обновите БД.

Процедура ВыполнитьПример() Экспорт
    Если Метаданные.Документы.Количество() <> 1
        Или Метаданные.РегистрыНакопления.Количество() <> 1
        Или Метаданные.Документы.Найти("УчебноеДвижение85") = Неопределено Тогда
        ВызватьИсключение "Разрешены только собственный учебный документ и регистр";
    КонецЕсли;
    Описание = Метаданные.РегистрыНакопления.Найти("УчебныеОстатки85");
    Если Описание = Неопределено Тогда
        ВызватьИсключение "Сначала создайте собственный учебный регистр";
    КонецЕсли;
    Если Описание.ВидРегистра <> Метаданные.СвойстваОбъектов.ВидРегистраНакопления.Остатки
        Или Описание.Измерения.Количество() <> 1
        Или Описание.Ресурсы.Количество() <> 1
        Или Описание.Реквизиты.Количество() <> 0
        Или Описание.Измерения.Найти("КодТовара") = Неопределено
        Или Описание.Ресурсы.Найти("Количество") = Неопределено Тогда
        ВызватьИсключение "Нужен регистр остатков с КодТовара и Количество";
    КонецЕсли;
    Менеджер = РегистрыНакопления.УчебныеОстатки85;
    Если Метаданные.РежимСовместимости <> Метаданные.СвойстваОбъектов.РежимСовместимости.НеИспользовать Тогда
        ВызватьИсключение "Нужен собственный стенд без старого режима совместимости";
    КонецЕсли;
    Если ТранзакцияАктивна() Тогда
        ВызватьИсключение "Не вызывайте административный опыт внутри чужой транзакции";
    КонецЕсли;
    Проверка = Новый Запрос;
    Проверка.Текст = "ВЫБРАТЬ КОЛИЧЕСТВО(*) КАК Строк
    |ИЗ РегистрНакопления.УчебныеОстатки85";
    Данные = Проверка.Выполнить().Выгрузить();
    Если Данные.Количество() <> 1 Тогда
        ВызватьИсключение "Не получена собственная контрольная строка";
    КонецЕсли;
    Если Данные[0].Строк <> 0 Тогда
        ВызватьИсключение "В собственном регистре уже есть движения: этот пустой административный опыт запрещён";
    КонецЕсли;
    ИсходныйФлаг = Менеджер.ПолучитьРежимРазделенияИтогов();
    Если ТипЗнч(ИсходныйФлаг) <> Тип("Булево") Тогда
        ВызватьИсключение "Не получен собственный исходный флаг";
    КонецЕсли;
    ИзменениеНачато = Ложь;
    Попытка
        ИзменениеНачато = Истина;
        Менеджер.УстановитьРежимРазделенияИтогов(Не ИсходныйФлаг);
        Сообщить(Менеджер.ПолучитьРежимРазделенияИтогов() = Не ИсходныйФлаг);
        Менеджер.УстановитьРежимРазделенияИтогов(ИсходныйФлаг);
        Если Менеджер.ПолучитьРежимРазделенияИтогов() <> ИсходныйФлаг Тогда
            ВызватьИсключение "Не подтверждено восстановление собственного флага";
        КонецЕсли;
        ИзменениеНачато = Ложь;
        Сообщить(Менеджер.ПолучитьРежимРазделенияИтогов() = ИсходныйФлаг);
    Исключение
        ИсходнаяОшибка = ОписаниеОшибки();
        Если ИзменениеНачато Тогда
            Попытка
                Менеджер.УстановитьРежимРазделенияИтогов(ИсходныйФлаг);
                Если Менеджер.ПолучитьРежимРазделенияИтогов() <> ИсходныйФлаг Тогда
                    Сообщить("Восстановление собственного флага разделение итогов не подтверждено");
                КонецЕсли;
            Исключение
                Сообщить("Восстановление собственного флага разделение итогов завершилось ошибкой; проверьте учебный стенд");
            КонецПопытки;
        КонецЕсли;
        ВызватьИсключение ИсходнаяОшибка;
    КонецПопытки;
КонецПроцедуры

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

  1. Проверить пустой собственный регистр без параллельных пользователей.

  2. Прочитать исходный флаг разделения, независимо от использования итогов.

  3. Отметить намерение изменения до процедуры установки.

  4. Переключить и повторно прочитать флаг; не выдумывать измерение параллельности по одному сеансу.

  5. Вернуть исходный флаг; неуспех восстановления выводится явно.

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

  1. Проверки переключения и возврата Истина.

  2. Никакие разделители данных или права не изменяются.

  3. Производительность не измерялась.

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

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

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

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

  2. ПолучитьИспользованиеИтогов и ПолучитьИспользованиеТекущихИтогов — разные настройки. Текущие итоги применимы только к Остатки.

  3. Булево возвращаемое значение метода не объявляется исходным состоянием или измеренным ускорением без отдельного контракта.

  4. Типизированные даты/флаги и явные проверки не являются доказательством запуска в 1С; здесь выполнялись только статические проверки.

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

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

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

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

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