Для выполнения примера в теге HEAD html-страницы добавьте ссылки на следующие js и css-файлы:
PP.js;
PP.Metabase.js;
PP.TabSheet.js;
файл с ресурсами (например, resources.ru);
PP.css.
В теге BODY добавьте элемент DIVc идентификатором «div1».
В теге SCRIPT добавьте следующий скрипт:
// Укажем путь к корневой папке, содержащей файлы ресурсов
PP.resourceManager.setRootResourcesFolder("../resources/");
PP.setCurrentCulture(PP.Cultures.ru);
//при открытии репозитория
function _onMetabaseOpened(sender, args) {
//на странице появится соответствующее сообщение
document.getElementById("div1").innerHTML = document.getElementById("div1").innerHTML + "репозиторий открыт.";
}
//при успешном завершении импорта и при завершении импорта с ошибкой на странице появятся соответствующие сообщения
function _onImportCompleted(sender, args) {
document.getElementById("div1").innerHTML = document.getElementById("div1").innerHTML + "Импорт завершился";
if (args.CubeInfo)
document.getElementById("div1").innerHTML = document.getElementById("div1").innerHTML + " успешно.Идентификатор объекта: " + args.CubeInfo.i + "<br/> Имя файла: " + importDataWizard.getCubeImport().getFileName() + ".";
else
document.getElementById("div1").innerHTML = document.getElementById("div1").innerHTML + " с ошибкой. Идентификатор ошибки: \"" + args.ErrorInfo.id + "\". Текст ошибки: \"" + args.ErrorInfo.message + "\"";
}
//соединение с репозиторием
var mb = new PP.Mb.Metabase(
{
PPServiceUrl: "PPService.axd?action=proxy",
Id: "PPRepository",
UserCreds: { UserName: "user", Password: "password" }
});
document.getElementById("div1").innerHTML = "Открытие репозитория...";
mb.open(_onMetabaseOpened);
//сервис для работы с объектом импорта
var dataImportService = new PP.Mb.DataImportService({ Metabase: mb });
//событие генерируется при окончании иморта
dataImportService.ImportCompleted.add(_onImportCompleted, dataImportService);
//создаем мастер импорта данных
var importDataWizard = new PP.Mb.Ui.ImportDataWizard({
ParentNode: document.body,
CubeImport: dataImportService.openCubeImport(),
FileUploadUrl: "PPService.axd?action=import",
DefaultImportFolderDesc: { k: 11574, i: null, n: null, c: 0 } // Разместить результат импорта в папке с ключом 11574
});
importDataWizard.show();
importDataWizard.updateSize();
После выполнения примера на странице будет открыт мастер импорта данных. После прохождения всех шагов мастера, нажатия кнопки «Готово» на последнем шаге, на html-странице будет выведено сообщение об успешном или неуспешном выполнении импорта.
См. также: