Задача и предварительные условия

Разверните месяцы бюджетной книги и запишите четыре значения в учебный куб с явным сопоставлением каждого измерения.

В примере используются демонстрационные данные и настройки. Проверьте ожидаемый результат в своей среде до подключения рабочих получателей. Идентификаторы demo_* условны: выберите собственные учебные подключения или источники в редакторе. JSON ниже показывает структуру блоков и связей, а не готовый архив потока для переноса.

Учебные входные данные

ПродуктJanFeb
Tea100120
Coffee8090

Блоки, связи и точные настройки

Поясняющая схемаУвеличить ↗17. IBM Planning Analytics: бюджет Excel в куб. Схема примера 17: 3 блока, 2 связи. Идентификаторы узлов и порты настроенной схемы сохранены.
Схема потока 17

Схема примера 17: блоков — 3, связей — 2. Идентификаторы узлов и порты настроенной схемы сохранены.

Добавьте перечисленные блоки в конструкторе, откройте свойства каждого и задайте эти значения. Имена demo_* обозначают учебные источники и подключения.

БлокНастройка
1
Файл
src
  • Роль: source
  • Источник: demo_pa_budget
  • Настройки чтения:
    • Лист: Budget
    • Диапазон: A1:C3
    • Первая строка — заголовок: так
2
Разворот столбцов в строки
unpivot
  • Ключевые столбцы: Product
  • Столбец периода: Month
  • Столбец значения: Amount
3
Подключение
pa
  • Роль: target
  • Подключение: demo_pa
  • Тип объекта: cube
  • Куб: DemoBudget
  • Действие получателя: write
  • Сопоставление:
    • Измерения:
        • Измерение: Year
        • Иерархия: Year
        • Тип: constant
        • Значение: 2026
        • Измерение: Month
        • Иерархия: Month
        • Тип: column
        • Значение: Month
        • Измерение: Product
        • Иерархия: Product
        • Тип: column
        • Значение: Product
        • Измерение: Scenario
        • Иерархия: Scenario
        • Тип: constant
        • Значение: Budget
        • Измерение: Measure
        • Иерархия: Measure
        • Тип: constant
        • Значение: Revenue
    • Поле значения: Amount
    • Тип значения: number
    • Десятичный разделитель: .
    • Пустое значение: error
    • Повторные координаты: error
    • Ячеек в порции: 10000
  • Запись в куб:
    • Режим: replace

Связи портов

  • src out → unpivot in
  • unpivot out → pa in
Полная конфигурация схемы в JSON
{
  "version": 3,
  "nodes": [
    {
      "id": "src",
      "type": "file",
      "label": "src",
      "config": {
        "role": "source",
        "source_id": "demo_pa_budget",
        "options": {
          "sheet": "Budget",
          "range": "A1:C3",
          "header": true
        }
      }
    },
    {
      "id": "unpivot",
      "type": "unpivot",
      "label": "unpivot",
      "config": {
        "id_columns": [
          "Product"
        ],
        "period_column": "Month",
        "unpivot_value_column": "Amount"
      }
    },
    {
      "id": "pa",
      "type": "connection",
      "label": "pa",
      "config": {
        "role": "target",
        "connection_id": "demo_pa",
        "object_type": "cube",
        "cube": "DemoBudget",
        "target_mode": "write",
        "mapping": {
          "bindings": [
            {
              "dimension": "Year",
              "hierarchy": "Year",
              "kind": "constant",
              "value": "2026"
            },
            {
              "dimension": "Month",
              "hierarchy": "Month",
              "kind": "column",
              "value": "Month"
            },
            {
              "dimension": "Product",
              "hierarchy": "Product",
              "kind": "column",
              "value": "Product"
            },
            {
              "dimension": "Scenario",
              "hierarchy": "Scenario",
              "kind": "constant",
              "value": "Budget"
            },
            {
              "dimension": "Measure",
              "hierarchy": "Measure",
              "kind": "constant",
              "value": "Revenue"
            }
          ],
          "value_column": "Amount",
          "value_type": "number",
          "decimal": ".",
          "blank": "error",
          "duplicates": "error",
          "portion_cells": 10000,
          "response_seconds": 120
        },
        "cube_write": {
          "mode": "replace"
        }
      }
    }
  ],
  "edges": [
    {
      "source": "src",
      "target": "unpivot",
      "source_port": "out",
      "target_port": "in"
    },
    {
      "source": "unpivot",
      "target": "pa",
      "source_port": "out",
      "target_port": "in"
    }
  ]
}

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

YearMonthПродуктScenarioПоказательЗначение
2026JanTeaBudgetВыручка100
2026FebTeaBudgetВыручка120
2026JanCoffeeBudgetВыручка80
2026FebCoffeeBudgetВыручка90

Четыре ячейки получают значения 100, 120, 80 и 90. Replace устанавливает значения именно этих ячеек. Предварительная очистка куба не включена.

Запуск и проверка

  1. В учебном кубе DemoBudget создайте измерения Year, Month, Product, Scenario и Measure с показанными элементами; используйте конечные элементы, доступные для записи.
  2. Загрузите Excel и предварительно проверьте сопоставление: 4 координаты, нет неизвестных элементов или дублей.
  3. Выполните запись в учебный куб; проверьте ячейки IBM PA и сумму 390.
  4. Повторите поток с теми же данными: replace должен сохранить значения, а не удвоить бюджет.

Частые ошибки

  • Если у куба есть дополнительное измерение, его тоже нужно сопоставить.
  • Имена Month/Jan/Feb и Product/Tea/Coffee должны соответствовать реальным элементам или таблицам соответствий.
  • mode=add добавляет к текущим ячейкам и может удвоить значения при повторе; здесь явно выбран replace.
  • При duplicates=error повторную координату нужно исправить или намеренно агрегировать до записи.