Коллеги, вот небольшая инструкция как выгрузить данные из файла qvf (Qlik Sense) со структурой таблиц. Надеюсь, многим окажется полезным.
Создайте новый проект Qlik Sense и перейдите в секцию Main.
Настройте новое соединение выбрав "Create new connection"
Выберите директорию, где лежит исходный файл. Назовите новое соединение "Source"
Внесите данный скрипт в самое начало секции "Main":
//Не забывайте, что для загрузки Binary этот оператор должен быть САМЫМ ПЕРВЫМ
Binary [lib://Source/Executive Performance Mgmt.qvf]; //введите имя исходного файла
for i=0 to NoOfTables() - 1 //получаем кол-во таблиц
LET vTable = TableName(i); //имя очередной таблицы
LET vTable1 = 'lib://Source/Data/' & vTable & '.qvd'; //формируем путь, куда записываем данные из исходного файла. Например, назовите директорию с данными "Data"
STORE $(vTable) INTO $(vTable1); //Сохраняем...
next
//exit Script; //раскомментируйте, если хотите оставить таблицы в новом файле
//иначе - удаляем таблицы
LET j = NoOfTables();
do while j > 0
LET vTable = TableName(0);
drop table '$(vTable)';
LET j = NoOfTables();
loop
exit Script;
SET ThousandSep=' '; //вот - начало старой секции Main. Скрипт должен вставляться ДО неё.
Запустите загрузку. Вы получите полный список загруженных таблиц в указанной директории. Немного изменив скрипт исходного документа, проставив актуальный connection и указанную директорию - в данном примере "Data", вы сможете загружать данные таблицы обратно.
PS. Не все данные можно загрузить обратно, если в скрипте загрузки оригинального документа было прописано явное преобразование, например:
LOAD
zEMPKEY,
"Employee Name",
"Employee Total Compensation",
GeoMakePoint(EmployeeLatitude, EmployeeLongitude) as EmployeeGeoPoint //эти данные, увы, не загрузятся.
FROM [lib://Source/Data/Employees.qvd]
Но зато большинство данных можно вытянуть.
Удачи!
С Уважением,
Георгий