Dashboard hazırlama

%appdata%App/GEODI/GUI/Custom/ES/Dashboard veya uygulama yanındaki GUI/Custom/ES/Dashboard altındaki klasörlere atacağınız klasörüne atacağınız html veya jsettings uzantılı tanım dosyası ile dashboardları hazırlayabilirsiniz. tanım dosyası dahsboard için görüntü adı, yetki gibi özellikleri  belirlemekte kullanılmaktadır. 

Tanım dosyası örnek formata uygun olmalı, __type bilgisi örnekteki gibi kullanılmalıdır. Açıklama satırı içermemeli, kullanılmayacak özellikler içeriğinden silinmelidir.

MyDashboard.jSettings
{
    ID:"MyDashBoard",
	DisplayName:"[$.en:My Dashboard;tr:Benim Panelim]",
	 IconName:"Layer/newspaper",
    __type: "Factory.ActionFactory:HTMLReporter",
	ActionTargets:"*",
	ConditionMacro:'c.HasPermission("DECE.SYSTEMMANAGER")'
}

(warning) Atılacak html dosyanın adı veya yolu jSettings dosyası ile aynı olmayacaksa TemplateFile değeri de json içeriğinde belirtilmelidir. Örnek :   TemplateFile:"%AppData%\\App\\GEODI\\GUI\\Custom\\ES\\DashboardTemplates\\MyDashboard.html"

(warning) Dashboard ID değeri "m_" ile başlatılırsa dahsboard linki arayüzde alt menüde değil ana sekmelerde görüntülenir.

MyDashboard.html
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="[=c.GetCurrentLanguage(true)]">
	<head>
		<meta charset="utf-8" />
		<title>GEODI</title>
		<dcc:item factoryname="IncludeScriptResource" src="~/GUI/js/jquery-2.1.3.min.js" />
		<dcc:item factoryname="IncludeScriptResource" src="~/GUI/js/bootstrap.min.js" />
		<dcc:item factoryname="IncludeScriptResource" src="~/GUI/js/GeodiQueryJS.js" />
		<dcc:item factoryname="IncludeScriptResource" src="~/GUI/js/GeodiGenericJS.js" />
		<dcc:item factoryname="IncludeScriptResource" src="~/GUI/js/PlatformCommunication.js" />
		<dcc:item factoryname="IncludeCssResource" src="~/GUI/css/GeodiStyle.css" />
		<dcc:item factoryname="GeodiSessionInfoHtmlPageItem" />
		<dcc:item factoryname="IncludeScriptResource" src="~/GUI/js/moment.js" />
		<dcc:CultureInfoWriter formattype="DateTime" />
		<dcc:item factoryname="IncludeScriptResource" src="~/GUI/js/GeodiHelpManager.js" />
	</head>
	<body>
		<div class=container style="background-color:#fff">
			.....
		</div>
	</body>
</html>

(warning) Dashboard içerisinden sorguya "window.parent.CurrentQueryContainer.CurrentQuery" scripti ile ile erişilebilir.


Sorgu değiştiğinde PCCommand eventi tetiklenir. 

  $(window).on("PCCommand",
           function (e, obj) {
               if (obj.Command == "ExecutedQuery") {
                   UpdateMyGUI(window.parent.CurrentQueryContainer.CurrentQuery);
               }
           });