Тип: РежимАвтонумерацииОбъектов. Режим автонумерации прикладных объектов конфигурации.
Полное описание, параметры и ограничения
ПеречислимыеСвойстваОбъектовМетаданных.РежимАвтонумерацииОбъектов (MetadataObjectEnumeratedProperties.ObjectAutonumerationMode)
ПеречислимыеСвойстваОбъектовМетаданных (MetadataObjectEnumeratedProperties)
РежимАвтонумерацииОбъектов (ObjectAutonumerationMode)
Доступен, начиная с версии 8.1.
Использование:
Только чтение.
Описание:
Тип: РежимАвтонумерацииОбъектов.
Режим автонумерации прикладных объектов конфигурации.
Доступность:
Сервер, толстый клиент, внешнее соединение.
Использование в версии:
Доступен, начиная с версии 8.1.
Методическая информация
Практические примеры
Проверить политику освобождения номеров перед разработкой обмена
Режим относится к автоматически полученным номерам незаписанных объектов. Он не обещает безразрывную нумерацию и не превращает номер документа во внешний идентификатор запроса.
Где и как запускать
Полный серверный модуль соответствующей учебной копии КА2 или УТ 10.3. Никаких операций перепроведения или изменения настроек.
Подготовка
Последовательность ПартионныйУчет взята из C:\claude\UT10_3\XML_UT_10_3\Sequences\ПартионныйУчет.xml. Используйте отдельную учебную копию именно этой УТ 10.3 на установленной платформе 8.5.1.1343, не рабочую базу.
Для первых двух уроков о режимах конфигурации используйте отдельную копию КА2 Progress. Для последующих пяти — копию указанной УТ 10.3. Не смешивайте имена и настройки разных конфигураций.
В серверном общем модуле УчебныеЗадачи разместите полный модуль одного урока и вызовите ВыполнитьПример() из своей серверной команды. В обычной конфигурации можно вызвать серверную процедуру из собственной учебной обработки.
Только чтение схемы и собственные значения в памяти: нет проведения, восстановления последовательности, изменения границ, назначения номеров или переключения совместимости.
Процедура ВыполнитьПример() Экспорт
Варианты = Метаданные.СвойстваОбъектов;
Режим = Метаданные.РежимАвтонумерацииОбъектов;
Если Режим = Варианты.РежимАвтонумерацииОбъектов.ОсвобождатьАвтоматически Тогда
Сообщить("Автоматически полученные номера незаписанных объектов могут переиспользоваться по установленной политике");
ИначеЕсли Режим = Варианты.РежимАвтонумерацииОбъектов.НеОсвобождатьАвтоматически Тогда
Сообщить("Автоматическое освобождение таких номеров не включено");
Иначе
ВызватьИсключение "Неизвестный режим автонумерации";
КонецЕсли;
УчебныйЗапрос = Новый Структура("Идентификатор,НомерДокумента", "guide-request-01", "000123");
Сообщить(УчебныйЗапрос.Идентификатор <> УчебныйЗапрос.НомерДокумента);
Сообщить(ТипЗнч(УчебныйЗапрос.НомерДокумента) = Тип("Строка"));
Сообщить("Для защиты от повторной загрузки нужен отдельный контракт внешнего идентификатора, не предположение по номеру");
КонецПроцедурыРазбор по шагам
Читаем фактический РежимАвтонумерацииОбъектов конфигурации, сравнивая с контейнером вариантов. Не заявляем заранее значение, которое не сериализовано явно в предоставленном XML.
Оба варианта определяют переиспользование автоматически полученных номеров, если объект ещё не записан. Это не команда освобождения уже существующего документа.
Учебная структура содержит отдельный идентификатор запроса и строковый номер. Номер 000123 сохраняет ведущие нули и не подменяет guide-request-01.
Реальная идемпотентность обмена требует внешнего стабильного ключа и соответствующего контроля записи. Этот диагностический урок не создаёт документ или журнал ключей.
Как проверить результат
Выведена одна ветка реального режима и две контрольные Истина для собственной учебной структуры.
Ни один номер не получен, не освобождён и не изменён.
Ожидаемый результат
Ученик понимает границы политики автонумерации и не строит защиту обмена на неверном предположении о номере.
На что обратить внимание
Пропуск номера сам по себе не доказывает потерю документа.
Автонумерация не гарантирует уникальность внешнего запроса интеграции.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.