Правила подачи иерархических справочников
-----------------------------------------
1. В иерархическом справочнике для каждого элемента должны присутствовать поля Parent_ID и (опционально) Hierarchy_level.
2. В полe Parent_ID для каждого элемента выводить ID его предка.
3. В поле Hierarchy_level выводить порядковый номер уровня иерархии элемента, отсчитываемый от верхнего уровня. Если поле Hierarchy_level не задано, то уровни иерархии будут сформированы автоматически, начиная с 1.
4. Для элемента самого верхнего уровня поле Parent_ID оставить пустым.
5. Если задано поле Hierarchy_level, то для элемента самого нижнего уровня оставить его пустым.
6. Для каждого уровня иерархии будет создано отдельное измерение с именем "ИмяБазовогоИзмерения_УровеньИерархии".
7. Чтобы указать заголовки уровней иерархии, следует указать их в спецификации с соответствующими именами. Тип загрузчика можно не указывать.
8. Если заголовки уровней иерархии не будут указаны явно, то они получат заголовки по умолчанию "ЗаголовокБазовогоИзмерения.Гр.УровеньИерархии".
9. В файле с данными справочника поля свойств элементов должны быть озаглавлены "@ИмяИзмерения".
10. Если для элементов предусмотрены свойства, то они могут быть указаны только для элементов самого нижнего уровня. Для элементов более высоких уровней поля свойств оставить пустыми.

Правила подачи исходных данных фактов
-------------------------------------
1. Заголовки измерений указываются без префикса @.
2. Данные в файле должны быть отсортированы по следующему ключу:
-- все непараметрические измерения в порядке следования в спецификации, кроме периодического
-- затем периодическое измерение
3. Для параллельной загрузки все факты следует разбить на несколько файлов, в количестве, кратном количеству ядер кластера, по ключу (все непараметрические измерения в порядке следования в спецификации, кроме периодического).


ТЕСТОВЫЙ КУБ 1С
----------------
Моделируем отчёт о продажах торговой компании, осуществляющей продажи организациям через торговых представителей, организованных по городам и регионам.

Измерения:
Даты (days) -- даты продаж, периодическое измерение, календарное измерение, плоский список, значения заданы в файле days.csv.
Товары (items) -- товарные позиции, 4-х уровневое дерево в иерархическом справочнике, заголовки уровней по умолчанию (Товары.Гр.1, Товары.Гр.2, Товары.Гр.3, Товары), значения заданы в файле items.csv. Поле Hierarchy_level не задано.
Базовые единицы (bu) -- базовые единицы товара, свойство товара, значения заданы в соответствующем поле в справочнике товаров.
Менеджеры (managers) -- торговые представители, 3-х уровневое дерево в иерархическом справочнике, заголовки уровней явно указаны в спецификации (Регионы, Города, Менеджеры), значения заданы в файле managers.csv, поле Hierarchy_level задано.
Контрагенты (contragents) -- клиенты, плоский список, значения заданы в файле contragents.csv.
Форма (forms) -- организационная форма клиента, свойство клиента, значения заданы в соответствующем поле в справочнике клиентов

Параметры:
Продажи, р. (sales_rub) -- продажи в рублях
Продажи, б.е. (sales_bu) -- продажи в базовых единицах
Ставка НДС (vat) -- ставка НДС, действующая для продажи данного товара данному контрагенту в данный день. Параметрическое измерение, значения заданы в файле vat.csv.

Исходные данные фактов находятся в файле facts_0.csv, поля:
managers -- кто осуществил продажу, код торгового представителя
contragents -- кому была осуществлена продажа, код клиента
items -- какой товар был продан, код товара
days -- когда была осуществлена продажа, код даты
sales_rub -- объём продажи в рублях
sales_bu -- объём продажи в базовых единицах
vat -- какая была ставка НДС, код ставки НДС



