Различить полнотекстовый поиск и историю данных артикула

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

Обе настройки у Артикул включены, но они решают разные задачи. Чтение свойства не означает, что поисковый индекс или история уже актуальны.

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

Полный серверный общий модуль учебной копии КА2 Progress. Только схема и собственные значения в памяти.

Подготовка

  1. Используйте отдельную учебную копию КА2 Progress, соответствующую C:\claude\KA2\Progress\XML_CF_KA2_PROGRESS. Названия и настройки проверены по реальным Catalogs/Номенклатура.xml и Catalogs/ВидыПодарочныхСертификатов.xml.

  2. Создайте серверный общий модуль УчебныеЗадачи, вставьте полный модуль одного урока и вызовите ВыполнитьПример() из своего серверного обработчика учебной команды.

  3. Примеры читают схему и создают значения только в памяти. Они не создают и не записывают товары, не меняют метаданные, не запускают заполнение объекта или перестроение поискового индекса.

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

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

  1. ПолнотекстовыйПоиск включает участие данных поля в полнотекстовом поиске. Это не запуск обновления индекса и не обычный индекс СУБД.

  2. ИсторияДанных описывает участие поля в механизме истории данных, а не историю выпадающего выбора пользователя.

  3. Индексирование отдельно относится к индексированию данных реквизита. Три свойства нельзя объединять одним флагом Быстрый поиск.

  4. Реальный Артикул — строка длиной 50. Учебное 000123 остаётся строкой и сохраняет ведущие нули; поле не приравнивается к коду справочника.

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

  1. Семь контрольных Истина для исходных настроек и собственного строкового артикула.

  2. Нет записи артикула, обновления индекса или изменения настроек истории.

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

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

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

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

  2. Не преобразуйте цифровой на вид артикул в Число.

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

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

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

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

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