Завдання та передумови

Підготувати широкий бюджетний шаблон Excel до завантаження в модель із виміром періоду.

Приклад містить навчальні дані та налаштування. Виберіть власні тестові джерела й підключення замість ідентифікаторів demo_*, відтворіть очікуваний результат і лише потім використовуйте робочі об’єкти.

Навчальні вхідні дані

ProductJanFeb
Tea100120
Coffee8090

Блоки, зв’язки й точні налаштування

Пояснювальна схемаЗбільшити ↗02. Excel: місяці з колонок у рядки. Топологія прикладу 02: 3 блоки, 2 зв’язки. Збережено ідентифікатори вузлів і порти налаштованого графа.
Схема потоку 02

Топологія прикладу 02: 3 блоки, 2 зв’язки. Збережено ідентифікатори вузлів і порти налаштованого графа.

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

БлокНалаштування
1
Файл
src
  • Роль: source
  • Джерело: demo_budget_xlsx
  • Параметри читання:
    • Аркуш: Budget
    • Діапазон: A1:C3
    • Перший рядок — заголовок: так
2
Розгортання колонок (Unpivot)
unpivot
  • Ключові колонки: Product
  • Колонка періоду: Month
  • Колонка значення: Amount
3
Вивантаження даних
out
  • Формат: xlsx
  • Ім’я файлу: budget_long
  • Призначення: download
  • Роздільник: ;
  • Часовий пояс: Europe/Kyiv

Зв’язки портів

  • src out → unpivot in
  • unpivot out → out in
Повна конфігурація графа JSON
{
  "version": 3,
  "nodes": [
    {
      "id": "src",
      "type": "file",
      "label": "src",
      "config": {
        "role": "source",
        "source_id": "demo_budget_xlsx",
        "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": "out",
      "type": "export",
      "label": "out",
      "config": {
        "format": "xlsx",
        "filename": "budget_long",
        "destination": "download",
        "delimiter": ";",
        "timezone": "Europe/Kyiv"
      }
    }
  ],
  "edges": [
    {
      "source": "src",
      "target": "unpivot",
      "source_port": "out",
      "target_port": "in"
    },
    {
      "source": "unpivot",
      "target": "out",
      "source_port": "out",
      "target_port": "in"
    }
  ]
}

Очікуваний результат

ProductMonthAmount
TeaJan100
TeaFeb120
CoffeeJan80
CoffeeFeb90

Вихід містить 4 рядки; сума Amount дорівнює 390. Усі колонки, крім Product, стають значеннями Month.

Запуск і перевірка

  1. Створіть budget.xlsx з аркушем Budget і наведеною таблицею в A1:C3.
  2. Вкажіть Product як єдину ідентифікаційну колонку; назви Month та Amount мають бути новими.
  3. Запустіть потік і перевірте файл budget_long.xlsx: 4 рядки та загальна сума 390.

Типові помилки

  • Якщо випадково додати Jan до id_columns, цей місяць не буде розгорнутий.
  • Службова колонка Comment також стане періодом, якщо не прибрати її перед розворотом.
  • Назви Month/Amount не можуть збігатися між собою або з Product.