Для выполнения примера создайте html-страницу и выполните следующие действия:
1. В теге HEAD добавьте ссылку на файл dashboard.nocache.js. В приложении должны располагаться в одной директории папки «dashboard» (с исполняемыми файлами для конструктора аналитических панелей) и «build» (с исходными файлами веб-приложения Prognoz Platform 8). Данные папки можно взять из корневой папки установленного веб-приложения Prognoz Platform 8.
2. В теге SCRIPT добавьте код для создания конструктора аналитических панелей:
<script type="text/javascript">
var serviceUrl = "PPService.axd?action=proxy";
var exportUrl = "PPService.axd?action=export";
var importUrl = "PPService.axd?action=import";
var kapBox;
function OpenKap(connId) {
metabase = new PP.Mb.Metabase(
{
Id: "Metabase",
PPServiceUrl: serviceUrl,
ExportUrl: exportUrl,
ImportUrl: importUrl,
ConnectionOdId: { id: connId }
});
kapBox = new Kap.KapBox({
Metabase: metabase,//репозиторий Prognoz Platform 8, к которому будет осуществляться подключение
ParentNode: "DashboardBox",//DOM-вершина, в которую будет помещаться компонент KapBox
ImagePath: "../build/img/",//путь к папке с картинками
ResourcesPath: "../resources/"//путь к папке с ресурсами
});
}
// Создадим функцию для подключения к репозиторию
function onModuleInit() {
if (PP.App.isMetabaseOpened()) {
OpenKap(PP.App.getConnectionId());
} else {
PP.Ui.getConfig().setChart(PP.AppConfig.Chart); // устанавливаем глобальную настройку для диаграммы
//тестовая точка входа для автономного запуска компонента KapBox
var metabaseLogin = new PP.Mb.Metabase({ PPServiceUrl: serviceUrl,
Id: "PrognozPlatform7_systest",
UserCreds: { UserName: "sa", Password: "Qwerty1" }
});
metabaseLogin.Error.add(function (sender, args) {
alert(args.ResponseText);
});
metabaseLogin.open(function (sender, args) {
//запоминаем открытую метабазу на случай перезагрузки страницы
var connectionId = metabaseLogin.getConnectionId();
PP.App.setStorage("ConnectionId", connectionId);
PP.App.setStorage("ConnectOdId", { id: connectionId });
PP.App.setStorage("IsMbOpened", true);
OpenKap(connectionId);
});
}
}
</script>
Примечание. Через функцию onModuleInit() обязательно должно осуществиться подключение к базе данных. Функция вызывается до создания KapBox и Metabase.
3. В теге BODY добавьте элемент DIV, в котором будет размещаться конструктор аналитических панелей:
<body style="height: 100%;"> <div id="DashboardBox" style="width: 100%; height: 100%;"> </div> </body>
После выполнения примера на странице будет размещен конструктор аналитических панелей. Чтобы открыть аналитическую панель из репозитория или создать новую используйте пункты главного меню «Документ > Открыть» и «Документ > Новый документ» соответственно. На рисунке ниже представлен конструктор аналитических панелей с открытой панелью в рабочей области:

См. также: