Настроить МетодКластеризации: КСредних

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

Параметр найден у реально созданного анализатора нужного вида; значение перечисления присваивается его свойству Значение. Весь источник подготовлен отдельно.

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

Серверная процедура собственной учебной обработки; дополнительные функции размещаются отдельно в том же серверном модуле.

Подготовка

  1. Создайте собственную учебную обработку с серверной процедурой ВыполнитьПример. Основной код без заголовка вставьте в тело этой процедуры.

  2. Каждый урок — отдельная настройка. Код не обращается к данным рабочей конфигурации, не записывает базу и не создаёт внешние файлы.

  3. Функцию УчебныеДанныеАнализа из дополнительного блока поместите отдельно в том же серверном модуле. Она возвращает шесть вымышленных покупок с кодом, товаром, временем и суммой.

  4. Показан синтаксис настройки соответствующего вида анализа на собственном источнике. Выполнить не вызывается: кластеризация, прогноз и поиск шаблонов не объявляются уже рассчитанными.

Данные = УчебныеДанныеАнализа();
Анализ = Новый АнализДанных;
Анализ.ТипАнализа = Тип("АнализДанныхКластеризация");
Анализ.ИсточникДанных = Данные;
Параметр = Анализ.Параметры.Найти("МетодКластеризации");
Если Параметр = Неопределено Тогда
    Параметр = Анализ.Параметры.Найти("ClusterizationMethod");
КонецЕсли;
Если Параметр = Неопределено Тогда
    ВызватьИсключение "Параметр отсутствует у выбранного вида анализа";
КонецЕсли;
Параметр.Значение = МетодКластеризации.КСредних;
Сообщить(Параметр.Имя + ": " + Строка(Параметр.Значение));
Сообщить("Источник: " + Строка(Данные.Количество()) + " учебных строк; расчёт не запускался");
Та же серверная форма или общий модуль: собственные шесть строк источника
Функция УчебныеДанныеАнализа()
    Данные = Новый ТаблицаЗначений;
    Данные.Колонки.Добавить("Код", Новый ОписаниеТипов("Строка"));
    Данные.Колонки.Добавить("Товар", Новый ОписаниеТипов("Строка"));
    Данные.Колонки.Добавить("ДатаСобытия", Новый ОписаниеТипов("Дата"));
    Данные.Колонки.Добавить("Сумма", Новый ОписаниеТипов("Число"));
    Для Номер = 1 По 6 Цикл
        СтрокаДанных = Данные.Добавить();
        СтрокаДанных.Код = "Покупка " + Строка(Номер);
        СтрокаДанных.Товар = ?(Номер <= 3, "Книга", "Альбом");
        СтрокаДанных.ДатаСобытия = Дата(2026, 10, 14) + Номер * 3600;
        СтрокаДанных.Сумма = Номер * 100;
    КонецЦикла;
    Возврат Данные;
КонецФункции

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

  1. ТипАнализа установлен до обращения к Параметры: состав этой коллекции зависит от выбранного вида.

  2. Найти получает параметр по документированному русскому имени или его английскому варианту; отсутствие не маскируется фиктивным параметром.

  3. Значение получает МетодКластеризации.КСредних. Для реального расчёта дополнительно согласуйте роли колонок и остальные параметры своего анализа.

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

  1. Сообщение содержит настоящее имя параметра и присвоенное значение.

  2. Источник содержит шесть строк. Это подтверждает подготовку данных, а не получение кластеров или правил.

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

Конкретное значение использовано для настройки реально созданного объекта; результат расчёта не выдумывается.

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

  1. Это подготовка настройки. Она сама не является рассчитанным отчётом, моделью прогноза или анализом рабочей базы.

  2. Имена полей и источник берутся из подготовки. Не передавайте неизвестный объект и не добавляйте проверку имени конфигурации вместо правильного контекста.

  3. Меняя роль колонки или тип анализа, пересмотрите остальные роли и параметры перед отдельным вызовом Выполнить.

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

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

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

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

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