ПеречислимыеСвойстваОбъектовМетаданных.СерииКодовСправочника

Свойства · CatalogCodesSeries

Тип: СерииКодовСправочника. Содержит варианты диапазона проверки кода на уникальность и автоматического присвоения кодов элементов справочника.

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

ПеречислимыеСвойстваОбъектовМетаданных.СерииКодовСправочника (MetadataObjectEnumeratedProperties.CatalogCodesSeries)

ПеречислимыеСвойстваОбъектовМетаданных (MetadataObjectEnumeratedProperties)

СерииКодовСправочника (CatalogCodesSeries)

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

Использование:
Только чтение.
Описание:
Тип: СерииКодовСправочника.
Содержит варианты диапазона проверки кода на уникальность и автоматического присвоения кодов элементов справочника.
Доступность:

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

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

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

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

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

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

В КА2 Progress код Номенклатура строковый. Учебный внешний код 000123 сохраняем как строку: превращение в число убирает ведущие нули.

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

Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.

Подготовка

  1. Запускайте в учебной копии конфигурации. Примеры читают структуру метаданных, но не создают объекты, не записывают регистры и не проводят документы.

  2. Сверяйте вывод с деревом конфигурации в Конфигураторе. Имена, длины и настройки в УНФ, КА2, БП, УТ 11 и УТ 10.3 могут различаться.

  3. Имена объектов взяты из XML КА2 Progress: C:\claude\KA2\Progress\XML_CF_KA2_PROGRESS. Исходные XML не изменяйте. Выполняйте код только в своей учебной копии соответствующей конфигурации.

  4. В другой конфигурации предварительно найдите аналогичный объект в Конфигураторе и замените только строку имени в поиске. Отсутствие имени обрабатывается до чтения свойств; оно не доказывает отсутствие аналогичной возможности.

  5. Каждый урок запускайте отдельно. Код не вызывает бизнес-функции модулей и обработчики команд, не переключает привилегированный режим и не меняет параметры сеанса.

Варианты = Метаданные.СвойстваОбъектов;
Описание = Метаданные.Справочники.Найти("Номенклатура");
Если Описание = Неопределено Тогда
    ВызватьИсключение "В учебной конфигурации отсутствует Справочники.Номенклатура";
КонецЕсли;
КодИзОбмена = "000123";
Если Описание.ТипКода = Варианты.ТипКодаСправочника.Строка Тогда
    КодДляПоиска = КодИзОбмена;
    Сообщить("Строковый код: ведущие нули сохранены");
ИначеЕсли Описание.ТипКода = Варианты.ТипКодаСправочника.Число Тогда
    КодДляПоиска = Число(КодИзОбмена);
    Сообщить("Числовой код: формат строки не является значением");
Иначе
    ВызватьИсключение "Неожиданный тип кода: изучите метаданные перед обменом";
КонецЕсли;
Сообщить(Описание.ТипКода = Варианты.ТипКодаСправочника.Строка);
Сообщить(КодДляПоиска = "000123");
Сообщить(Число(КодИзОбмена) = 123);
Сообщить(Описание.СерииКодов = Варианты.СерииКодовСправочника.ВоВсемСправочнике);
Сообщить("Основное представление: " + Строка(Описание.ОсновноеПредставление));
Если Описание.ОсновноеПредставление = Варианты.ОсновноеПредставлениеСправочника.ВВидеНаименования Тогда
    Сообщить("Пользователь видит наименование, но поиск по коду остаётся отдельной операцией");
КонецЕсли;

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

  1. Находим реальное описание Номенклатура из предоставленного XML и проверяем наличие.

  2. СвойстваОбъектов предоставляет типизированные системные значения метаданных, не пользовательское перечисление товаров.

  3. Выбираем преобразование по фактическому ТипКода; текущий строковый код оставляем без преобразования.

  4. СерииКодов определяет область уникальности, ОсновноеПредставление — видимое представление; это разные свойства.

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

  1. В предоставленном XML четыре сравнения Истина: строковый код, сохранённое 000123, отдельно полученное число 123 и серия всего справочника.

  2. В другой версии конфигурации сначала сверяйте ТипКода и СерииКодов; пример не ищет и не создаёт товар.

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

Подготовлена корректная типизация входящего кода без потери ведущих нулей.

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

  1. Не передавайте число 123 вместо строкового кода 000123 по привычке.

  2. Совпадение кода в данной серии ещё не является внешним идентификатором Avito или другого сервиса.

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

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

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

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

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