Йерархично товарене номенклатура на Excel-файл

Изправени пред задачата за зареждане на данни от Excel-файл в 1C, като се отчита йерархията е показано на файла. Сам по себе си процеса на прехвърляне на данни от Excel в затруднения не представлява 1s. В мрежата много лечения и код примери, които ви позволяват да комуникирате с Excel. Но се изкачи много форуми, не намерих ясно обяснение за това как да стартирате от гледна точка на йерархията, при условие, че броят на нивата на самата йерархия е произволни и различни нива на групи са в същата колона, и всяко ниво на му. Искам да споделя това, което се случи с мен. Може ли някой да дойде по-удобно.

Глобални единични променливи:

По този начин, лечението се състои от 3 процедури:

Първата процедура се отваря прозорец, за да изберете от което аз открих е да отидете изтегляне. Тук всичко е много просто:

След като изберете файла, когато натиснете бутона потрепва тази процедура:

Ето, аз ще напиша малко обяснение. Първо, създаване на дърво. Дървото ние поставяме йерархия на файл. Можете да създадете необходимата за по-нататъшната работа на полето в дървото. Следваща четем от файл и инициализиране на първия елемент на нашето дърво.

Третата процедура - рекурсивно дърво. Когато пълзи създавате групи и елементи, в директорията

Тук най-важното нещо - този имот OutlineLevel: "ExcelList.Rows (Textra) .OutlineLevel;". Тя съдържа ниво групиране на текущия ред. Според нея, независимо дали линията е включен може да се определи по някакъв група или не, както и ниво в йерархията, което означава, че броят на групи.

Клоните на дърветата, които отговарят на директорията, ще бъдат премахнати от дървото, така че не се razrostalos до ужасни размери.