`;
$("#ViewerHeader_" + containerid).find(".card-header-right .div_appconfigurations").html(html);
var apphtml = "";
var createhtml = "";
var childapphtml = "";
if (Installedappid !== undefined && Installedappid != 0) {
$("#layout-list-settings_" + containerid).html('
');
instance.appmanager.getListAppConfigurations(Installedappid).then(function (response) {
for (let i = 0; i < (response.result ? response.result.length : 0); i++) {
instance.appCnfigType = Number(response.result[i].AppConfigType);
if (Number(response.result[i].SettingUrlType) == Unibase.Platform.Apps.Enums.SettingUrlType.Component && Number(response.result[i].AppConfigType) == Unibase.Platform.Apps.Enums.AppConfigeType.List && response.result[i].Ungrouped == false) {
$(".config_dropdown").removeClass("hidden");
jsfiles.push(response.result[i].SettingUrl);
var jsfunction = response.result[i].JsFunction;
filecachelper.loadJsFile(response.result[i].SettingUrl, function () { });
apphtml += '
';
}
if (Number(response.result[i].SettingUrlType) == Unibase.Platform.Apps.Enums.SettingUrlType.Component && Number(response.result[i].AppConfigType) == Unibase.Platform.Apps.Enums.AppConfigeType.List && response.result[i].Ungrouped == true) {
$(".config_dropdown").removeClass("hidden");
jsfiles.push(response.result[i].SettingUrl);
var jsfunction = response.result[i].JsFunction;
filecachelper.loadJsFile(response.result[i].SettingUrl, function () { });
createhtml += '
';
}
if (Number(response.result[i].SettingUrlType) == Unibase.Platform.Apps.Enums.SettingUrlType.JsFunction && Number(response.result[i].AppConfigType) == Unibase.Platform.Apps.Enums.AppConfigeType.List && response.result[i].Ungrouped == false) {
$(".config_dropdown").removeClass("hidden");
jsfiles.push(response.result[i].SettingUrl);
var jsfunction = response.result[i].JsFunction;
filecachelper.loadJsFile(response.result[i].SettingUrl, function () { });
apphtml += '
';
}
if (Number(response.result[i].SettingUrlType) == Unibase.Platform.Apps.Enums.SettingUrlType.Form && Number(response.result[i].AppConfigType) == Unibase.Platform.Apps.Enums.AppConfigeType.List && response.result[i].Ungrouped == true) {
var onclickhtml = "Unibase.Platform.Helpers.NavigationHelper.Instance().loadForm(" + response.result[i].FormId + ", 0, " + response.result[i].AppConfigurationId + ")";
createhtml += '
';
if ($("#ViewerHeader_" + containerid).find(".card-header-right .create-btn").length == 0) {
$("#ViewerHeader_" + containerid).find(".card-header-right .create-place,.biz-header-center .create-place").html(createhtml);
}
}
if (Number(response.result[i].SettingUrlType) == Unibase.Platform.Apps.Enums.SettingUrlType.Form && Number(response.result[i].AppConfigType) == Unibase.Platform.Apps.Enums.AppConfigeType.List && response.result[i].Ungrouped == false) {
$(".config_dropdown").removeClass("hidden");
var onclickhtml = "Unibase.Platform.Helpers.NavigationHelper.Instance().loadForm(" + response.result[i].FormId + ", 0, " + response.result[i].AppConfigurationId + ")";
apphtml += '
';
}
if (Number(response.result[i].SettingUrlType) == Unibase.Platform.Apps.Enums.SettingUrlType.JsFunction && Number(response.result[i].AppConfigType) == Unibase.Platform.Apps.Enums.AppConfigeType.List && response.result[i].Ungrouped == true) {
var jsfunction = response.result[i].JsFunction;
filecachelper.loadJsFile(response.result[i].SettingUrl, function () { });
createhtml += '
';
}
if (Number(response.result[i].AppConfigType == Unibase.Platform.Apps.Enums.AppConfigeType.Settings && response.result[i].Ungrouped == true)) {
var onclickhtml = "Unibase.Platform.Helpers.NavigationHelper.Instance().loadList(" + response.result[i].LinkAppId + ", null) ";
createhtml += '
';
$("._bizgaze_detail_container").find(".card-header-top").find(".card-header-left").addClass("w-60").removeClass("w-70");
}
if (Number(response.result[i].SettingUrlType) == Unibase.Platform.Apps.Enums.SettingUrlType.Procedure && Number(response.result[i].AppConfigType) == Unibase.Platform.Apps.Enums.AppConfigeType.List && response.result[i].Ungrouped == false) {
var onclickhtml = "Unibase.Platform.Apps.Managers.AppManager.Instance().executeProc('" + response.result[i].LinkProcName + "')";
apphtml += '
';
}
if (Number(response.result[i].SettingUrlType) == Unibase.Platform.Apps.Enums.SettingUrlType.Procedure && Number(response.result[i].AppConfigType) == Unibase.Platform.Apps.Enums.AppConfigeType.List && response.result[i].Ungrouped == true) {
var onclick = "Unibase.Platform.Apps.Managers.AppManager.Instance().executeProc('" + response.result[i].LinkProcName + "')";
createhtml += '
';
}
if (response.result[i].IsChildApp) {
$(".config_dropdown").removeClass("hidden");
childapphtml += '
';
}
}
if (childapphtml.trim().length != 0) {
childapphtml += `
`;
}
$("#ViewerHeader_" + containerid).find(".card-header-right .create-place,.biz-header-center .create-place").html(createhtml);
$("#layout-list-settings-item_" + containerid + ":last").after(apphtml);
$("#layout-list-settings-item_" + containerid + ":last").before(childapphtml);
if (childapphtml.trim().length == 0 && apphtml.trim().length == 0) {
$(`#childAppsDivider_${containerid}`).remove();
}
});
$("#ViewerHeader_" + containerid).find(".create-icon").addClass("pl-1");
}
else {
$(`#dp_${containerid}_viewertypes`).find('.div_appconfigurations').addClass('d-none');
}
}
Configurationclick(id) {
var instance = this;
instance.appmanager.getAppConfiguration(id).then(function (response) {
var jsfunction = response.result.JsFunction;
instance.fileCacheHelper.loadJsFile(response.result.SettingUrl, function () { });
if (jsfunction != null && jsfunction != "") {
var split = jsfunction.split("Instance()");
var splitinstance = split[0] + "Instance()";
var jsinstance = eval(splitinstance);
var component = jsinstance;
var appSettingComponent = jsinstance;
if (appSettingComponent !== null && appSettingComponent !== undefined) {
appSettingComponent.appSettings.InstalledAppId = response.result.InstalledAppId;
}
if (component != null && component != undefined) {
instance.navigationHelper.popup(0, '', component, function () {
}, Platform.Helpers.Size.Large);
}
}
});
}
EditReport(ReportId, type, InstalledAppId, AppConfigType, containerId) {
const instance = this;
var reportId = 0;
if (ReportId == 0)
reportId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key.endsWith("reportid")).Value);
else
reportId = ReportId;
var reportbuilder = Unibase.Platform.Analytics.Reports.ReportBuilder.Instance();
if (type == 1)
reportbuilder.isduplicate = true;
else
reportbuilder.isduplicate = false;
reportbuilder.InstalledAppId = InstalledAppId;
reportbuilder.appConfigType = reportbuilder.appConfigType != 0 ? reportbuilder.appConfigType : AppConfigType;
instance.navigationHelper.showLoading();
instance.navigationHelper.popup(reportId, "", reportbuilder, function () {
if (containerId) {
reportbuilder.lastContainerId = containerId;
if (containerId.includes('div_dashboardportletwidget') || containerId.includes('div_portletwidget') || containerId.includes('div_kpireport') || containerId.includes('_previewreport_') || containerId.includes('_ViewAllByUniqueId_') || containerId.includes('fullscreen') || containerId == 'preview') {
if (containerId.includes('_viewall') || containerId.includes('_ViewAllByUniqueId_') || containerId.includes('fullscreen') || containerId.includes('_linkedreport_')) {
reportbuilder.isReportWidget = false;
return;
}
reportbuilder.isReportWidget = true;
if (containerId.includes('div_dashboardportletwidget') || containerId.includes('div_kpireport')) {
reportbuilder.reportWidgetType = 'dashboard';
}
else if (containerId.includes('div_portletwidget') || containerId.includes('div_kpireport') || containerId.includes('_previewreport_') || containerId == 'preview') {
reportbuilder.reportWidgetType = 'portlet';
reportbuilder.lastContainerId = "";
}
}
else {
reportbuilder.isReportWidget = false;
reportbuilder.reportWidgetType = '';
}
}
}, Unibase.Platform.Helpers.Size.ExtraLarge);
}
refreshStaticObj(ReportId) {
var reportId = 0;
if (ReportId == 0)
reportId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key.endsWith("reportid")).Value);
else
reportId = ReportId;
Unibase.Platform.Analytics.Managers.ReportManager.Instance().refreshStaticObj(reportId).then(function (response) {
if (response.status == Unibase.Data.Status.Success) {
MessageHelper.Instance().showSuccess(response.message, '');
}
else if (response.status == Unibase.Data.Status.Error) {
MessageHelper.Instance().showSuccess(response.message, '');
}
});
}
exportReport(ReportId) {
var instance = this;
var reportId = 0;
if (ReportId == 0)
reportId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key.endsWith("reportid")).Value);
if (reportId != 0) {
instance.navigationHelper.showLoading();
instance.reportManager.getReportById(reportId).then(function (rptresponse) {
var exportreportname = rptresponse.result.ReportName;
instance.reportManager.exportreport(reportId).then(function (response) {
var filename = exportreportname + ".xml";
var xmltext = response.result;
var pom = document.createElement('a');
var bb = new Blob([xmltext], { type: 'text/plain' });
pom.setAttribute('href', window.URL.createObjectURL(bb));
pom.setAttribute('download', filename);
pom.dataset.downloadurl = ['text/plain', pom.download, pom.href].join(':');
pom.draggable = true;
pom.classList.add('dragout');
pom.click();
instance.navigationHelper.hideLoading();
});
});
}
}
Export(reportid, containerid) {
var instance = this;
var _fileCacheHelper = this.fileCacheHelper;
_fileCacheHelper.loadJsFile('libs/xlsx/xlsx.full.min.js', function () {
Unibase.Platform.Analytics.Viewers.TableViewer.Instance().Export(reportid, $("#ReportTitle_" + containerid["id"]).text());
});
}
downloadReport(containerid, reportid, filterid, filters, datefilters) {
var instance = this;
this.dynamicFilters = filters;
this.dateFilters = datefilters;
$("#DownloadReport_" + containerid).unbind().click(function () {
instance.download(reportid, filterid, instance.dynamicFilters, filters, instance.dateFilters, instance.ViewerSettings.defaultViewerId);
});
}
download(reportid, filterid, dynamicfilters, inputparams, datefilters, viewerid) {
var instance = this;
instance.DetailParameters = [];
instance.getDetailInputParameters();
let { fromDate, toDate } = this.checkForReportDatePicker(reportid, instance.ContainerId);
let isdynamicfilters = instance.isIdentityFilter(dynamicfilters);
let listsearch = instance.ListSearchTerm;
var postData = {
ReportId: reportid,
FilterId: filterid,
Filter: dynamicfilters,
InputParameters: inputparams,
DateFilter: datefilters,
SearchTerm: listsearch ? listsearch.toString() : null,
FromDate: fromDate,
ToDate: toDate,
ViewerId: viewerid,
DetailInputParameters: instance.DetailParameters,
IsDynamicFilterApplied: isdynamicfilters,
IsPdf: instance.isPdf
};
Unibase.Platform.Analytics.Managers.ReportManager.Instance().startDownloadLargeFile(postData).then(function (response) {
if (response.status == Unibase.Data.Status.Success) {
MessageHelper.Instance().showSuccess(response.message, '');
}
});
}
downloadLargeFile(reportid) {
var instance = this;
var postData = {
ReportId: reportid,
Filter: instance.dynamicFilters
};
Unibase.Platform.Analytics.Managers.ReportManager.Instance().startDownloadLargeFile(postData).then(function (Response) {
});
}
reportPermissions(reportid) {
this.navigationHelper.popup(reportid, '', Unibase.Platform.Analytics.Components.ReportPermissions.Instance(), null, Platform.Helpers.Size.Auto);
}
viewerPermissions(containerId, viewerid, ev) {
if (ev != undefined)
ev.stopPropagation();
var obj = Unibase.Platform.Analytics.Components.ViewerPermissions.Instance();
if (containerId) {
var rv_ins = this.getReportViewerInstance(containerId);
if (rv_ins) {
obj.reportId = rv_ins.ReportId;
let viewer = rv_ins.viewerResponse.result.find(x => x.ViewerId == viewerid);
obj.viewerTypeId = viewer && viewer.ViewerTypeId;
this.navigationHelper.popup(viewerid, '', Unibase.Platform.Analytics.Components.ViewerPermissions.Instance(), null, Platform.Helpers.Size.Auto);
}
}
}
getDetailInputParameters() {
var instance = this;
var inpparams = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters;
for (var i = 0; i < inpparams.length; i++) {
var name = inpparams[i].Key.split("_")[2];
var val = (inpparams[i].Value) ? inpparams[i].Value.toString() : "";
instance.DetailParameters.push({ "Key": name, "Value": val });
}
}
saveViewAs(reportid) {
Unibase.Platform.Filters.Components.Filter.Instance().reportId = reportid;
Unibase.Platform.Filters.Components.EditFilter.Instance().reportId = reportid;
this.navigationHelper.popup(0, '', Unibase.Platform.Filters.Components.EditFilter.Instance(), null, Platform.Helpers.Size.Auto);
}
loadFilters(reportid, containerid) {
return __awaiter(this, void 0, void 0, function* () {
var instance = this;
let filterId = 1;
Unibase.Platform.Filters.Components.Filter.Instance().filtersContainerId = containerid;
instance.ReportId = reportid;
const filterParentEl = $(`#filters-list${containerid}`);
var html = '';
var IsAdmin = Unibase.Platform.Membership.Infos.Identity.getCurrentUser().isAdmin;
if (reportid != 0 && reportid != undefined) {
html += `
`;
yield instance.filtermanager.getReportFilters(reportid).then(function (response) {
return __awaiter(this, void 0, void 0, function* () {
if (response.result.length != 0) {
for (let i = 0; i < response.result.length; i++) {
var data = response.result[i];
html += `
`;
}
if (filterParentEl.hasClass('pinned-report-filters')) {
filterParentEl.find('.filter-item').remove();
filterParentEl.prepend(html);
instance.loadPinFiltersAutoComplete(containerid);
}
else {
filterParentEl.html(html);
}
$(`#card-header-filters${containerid}`).removeClass('d-none');
}
else {
$(`#card-header-filters${containerid}`).addClass('d-none');
filterParentEl.html('');
if (!instance.currentUser.isAdmin) {
$(`#editFilterOption${containerid}`).remove();
}
}
const navInstance = Unibase.Themes.Compact.Components.Nav.Instance();
navInstance.removeToolTipForFilterItem($("#" + containerid));
navInstance.setFiltersNavigation(containerid);
yield instance.loadDefaultFilter(reportid, containerid);
let filterOption = `#filters-list${containerid} .nav-item`;
$(filterOption).first().addClass('active-item');
$(filterOption).click(function () {
$(filterOption).removeClass('active-item');
$(this).addClass('active-item');
if (instance.layoutIndex == 2 || instance.layoutIndex == 3) {
$(".filters-dropdown-div-top-layout button.filterName").text($(this).attr('data-filtername'));
}
if (!instance.desktopMode)
$('.biz-wrapper').removeClass('biz__nav__toggle');
});
});
});
}
});
}
clearSearchFilter(reportid, containerid) {
$("#ViewerHeader_" + containerid).find(".txt_global_search").removeClass('contain-value');
$("#" + containerid).find("#ListSearch").val("").trigger("input");
}
editFilter(filterid, reportid) {
Unibase.Platform.Filters.Components.EditFilter.Instance().reportId = reportid;
this.navigationHelper.popup(filterid, '', Unibase.Platform.Filters.Components.EditFilter.Instance(), null, Platform.Helpers.Size.Auto);
}
filterPermissions(filterid) {
this.navigationHelper.popup(filterid, '', Unibase.Platform.Filters.Components.FilterPermission.Instance(), null, Platform.Helpers.Size.Auto);
}
applyFilter(filterid, reportid, containerid, isallrecords, statusname) {
var instance = this;
instance.navigationHelper.showLoading();
if (statusname == 'active' || statusname == 'inactive' || statusname == 'deleted') {
instance.statusFilters(statusname);
}
let rv_ins = instance.getReportViewerInstance(containerid);
if (rv_ins && rv_ins.PageSize)
instance.PageSize = rv_ins.PageSize;
instance.filterId = filterid;
instance._applyfilter(reportid, containerid);
instance.loadFilteredReport(reportid, filterid, containerid);
}
statusFilters(statusname) {
var instance = this;
let parVal = 0;
if (statusname == 'active') {
parVal = Unibase.Platform.Core.Enums.RowStatus.Active;
}
else if (statusname == 'inactive') {
parVal = Unibase.Platform.Core.Enums.RowStatus.InActive;
}
else if (statusname == 'deleted') {
parVal = Unibase.Platform.Core.Enums.RowStatus.Deleted;
}
instance.dynamicFilters.push({ ParameterName: "statusid", ParameterValue: parVal.toString(), ExpOp: Platform.Core.Enums.ExpressionOperator.Equals });
}
deleteFilter(filterid) {
var instance = this;
bootbox.confirm("Do you want to delete the filter?", function (result) {
if (result) {
instance.filtermanager.deleteFilter(filterid).then(function (response) {
if (response.status == Unibase.Data.Status.Success) {
MessageHelper.Instance().showSuccess(response.message, '');
$(`.liFilter_${filterid}`).remove();
$('#reportFiltersList .filter-item').each(function (i, e) {
$(e).find('.filter-index').text(i + 1);
});
let reportid = Unibase.Platform.Filters.Components.Editfilters.Instance().reportId;
Unibase.Platform.Filters.Managers.FilterManager.Instance().getReportFilters(reportid).then(function (response) {
return __awaiter(this, void 0, void 0, function* () {
if (response.result.length == 0) {
$('#staticFiltersCard').addClass('d-none');
if (!$('#dynamicFiltersCard').is(':visible'))
$('#noFiltersErrMsg').removeClass('d-none');
}
});
});
instance.navigationHelper.closePopUp();
}
else if (response.status == Unibase.Data.Status.Error) {
MessageHelper.Instance().showError(response.message, 'divEditFilterErrMsg');
}
});
}
});
}
sliceText(text) {
let newText = text.length > 10 ? text.slice(0, 10) + ' ...' : text;
return newText;
}
sliceTooltip(text) {
let tooltip = text.length > 15 ? text : '';
return tooltip;
}
addEditIcons_Filters(containerid, reportid) {
var instance = this;
instance.navigationHelper.popup(reportid, '', Unibase.Platform.Filters.Components.Editfilters.Instance(), null, Platform.Helpers.Size.Auto);
}
loadDefaultFilter(reportId, containerid) {
return __awaiter(this, void 0, void 0, function* () {
var instance = this;
let isInstance = false;
let reportViewerInstance = Unibase.Platform.Helpers.NavigationHelper.reportViewerInstance;
if (reportViewerInstance.length > 0)
isInstance = reportViewerInstance.find(rv => rv.childcontainerid == containerid) ? true : false;
if (!isInstance) {
reportViewerInstance.push({
instance: instance,
childcontainerid: containerid,
parentcontainerid: "_" + instance.parentContainerId
});
}
let rv_instance = instance.getReportViewerInstance(containerid);
yield instance.filtermanager.getDefaultFilterByReport(reportId).then(function (response) {
if (response.result != null && response.result != "") {
rv_instance.filterId = response.result.FilterId;
$('.defaultfilter_' + rv_instance.filterId).addClass("imchecked");
$('.defaultfilter_' + rv_instance.filterId).prop('checked', true);
$(`#ViewerHeader_${containerid} .filter-item.active`).removeClass('active');
$('.liFilter_' + rv_instance.filterId).addClass('active');
}
else {
$('.defaultfilter_1').addClass("imchecked");
$('.defaultfilter_1').prop('checked', true);
}
});
});
}
defaultFilter(filterid, reportid) {
return __awaiter(this, void 0, void 0, function* () {
if ($('.defaultfilter_' + filterid).hasClass("imchecked")) {
return false;
}
if (filterid == 1) {
$('.defaultfilter_' + filterid).addClass("imchecked");
this.deleteDefaultFilter(filterid, reportid);
return false;
}
yield Unibase.Platform.Filters.Components.Filter.Instance().saveDefaultFilter(reportid, Number(filterid));
$("input[type=radio][name=options]").removeClass("imchecked");
$('.defaultfilter_' + filterid).addClass("imchecked");
});
}
deleteDefaultFilter(filterid, reportid) {
return __awaiter(this, void 0, void 0, function* () {
var instance = this;
instance.filtermanager.deletedafultfilter(reportid).then(function (response) {
return __awaiter(this, void 0, void 0, function* () {
if (response.status == Unibase.Data.Status.Success) {
return MessageHelper.Instance().showSuccess(response.message, "divEditFiltersErrMsg");
}
else {
return MessageHelper.Instance().showError(response.message, "divEditFiltersErrMsg");
}
});
});
});
}
updateDefaultFilter(filterid, reportid) {
return __awaiter(this, void 0, void 0, function* () {
var instance = this;
yield instance.filtermanager.getReportFilters(reportid).then(function (response) {
return __awaiter(this, void 0, void 0, function* () {
if (response.result != null) {
for (var df = 0; df < response.result.length; df++) {
if (response.result[df].FilterId != filterid) {
if (response.result[df].IsDefault) {
$('.defaultfilter_' + filterid).removeClass("imchecked");
Unibase.Platform.Filters.Components.Filter.Instance().updateDefaultFilter(response.result[df].FilterId, false);
}
}
}
}
});
});
});
}
pinDynamicFiltersHandler(reportid, containerid) {
const instance = this;
if (instance.tabMode) {
$(`#card-header-filters${containerid}`).removeClass('d-none');
const filterParentEl = $(`#filters-list${containerid}`);
$(`#card-header-filters${containerid} .filter-nav-icon`).addClass('hidden');
filterParentEl.addClass('pinned-report-filters');
instance.loadPinFiltersAutoComplete(containerid);
$(`#dynamic-filters${containerid} .filter_design-row`).each(function (i, e) {
const classList = $(e).attr('class').split(' ');
$.each(classList, function (id, item) {
if (item.indexOf('col-') == 0) {
$(e).removeClass(item);
}
});
$(e).find('input.pl-0').removeClass('pl-0');
});
const filterEl = $(`#dynamic-filters${containerid} .filter_design-row`);
const filtersLength = filterEl.length;
filterEl.detach().appendTo(filterParentEl);
if (filtersLength) {
filterParentEl.removeClass('d-none');
instance.bindPinnedDynamicFiltersActionBtns(reportid, containerid);
}
filterParentEl.find('.filter_design-row').each(function (i, e) {
if ($(e).find('select').length) {
const selectContainer = $(e).find('select').data('select2').$container;
selectContainer.attr('style', `width:${selectContainer.width()}px !important`);
}
});
}
else {
$(`#dynamicFilterContentWrap_${containerid}`).children().not('.dynamic-filter-pin').detach().appendTo(`#bizPinnedDynamicFiltersBody_${containerid}`);
$(`#filter-dropdown-body${containerid}`).css('max-height', '').removeAttr('data-deductheight');
$(`#bizPinnedDynamicFilters_${containerid}`).removeClass('d-none');
}
$(`#unPinDynamicFiltersIcon_${containerid},#cardSearchBar${containerid}`).removeClass('d-none');
$(`#filter-icon${containerid}`).addClass('d-none');
$(`#biz-filter-dropdown${containerid}`).removeClass('show');
if (containerid.includes('div_dashboardportletwidget') || containerid.includes('div_portletwidget') && !instance.navigationHelper.isReportPopup(containerid)) {
$(`#ViewerHeader_${containerid} .card-header-left`).addClass('w-50');
$(`#ViewerHeader_${containerid} .txt_global_search`).show();
}
if (!$(`#ViewerHeader_${containerid} .filter_design-row`).length) {
instance.loadDynamicFilters(reportid, containerid);
}
}
unPinDynamicFiltersHandler(containerid) {
const instance = this;
if (instance.tabMode) {
const filterParentEl = $(`#filters-list${containerid}`);
filterParentEl.removeClass('pinned-report-filters');
filterParentEl.find('.filter_design-row,.pinned-filters-action-btns,.static-filters-select-wrap').remove();
filterParentEl.find('.filter-item').removeClass('d-none');
if (!filterParentEl.find('.filter-item').length) {
filterParentEl.addClass('d-none');
}
else {
Unibase.Themes.Compact.Components.Nav.Instance().setFiltersNavigation(containerid);
}
}
else {
$(`#bizPinnedDynamicFiltersBody_${containerid}`).children().detach().appendTo(`#dynamicFilterContentWrap_${containerid}`);
$(`#bizPinnedDynamicFilters_${containerid}`).addClass('d-none');
}
$(`#unPinDynamicFiltersIcon_${containerid}`).addClass('d-none');
$(`#filter-icon${containerid}`).removeClass('d-none');
}
bindPinnedDynamicFiltersActionBtns(reportid, containerid) {
$(`#pinnedFiltersActionBtns_${containerid}`).remove();
const html = `
`;
$(`#filters-list${containerid}`).append(html);
}
loadPinFiltersAutoComplete(containerid) {
const instance = this;
const rv_instance = instance.getReportViewerInstance(containerid);
const filterParentEl = $(`#filters-list${containerid}`);
const filterData = [];
filterParentEl.find('.filter-item').each(function (i, e) {
$(e).addClass('d-none');
const filterId = +$(e).attr('data-filterid');
const filterName = filterId == 1 ? 'All' : $(e).attr('data-filtername');
filterData.push({
id: filterId,
text: filterName
});
});
if (filterData.length) {
$(`#staticFiltersSelectWrap_${containerid}`).remove();
filterParentEl.prepend(``);
$(`#staticFiltersSelect_${containerid}`).select2({
placeholder: 'Select Filter',
data: filterData,
dropdownAutoWidth: true,
dropdownParent: $(`#${containerid}`),
}).on('select2:select', function () {
const filterId = +$(this).val();
Unibase.Platform.Analytics.Components.ReportViewer.Instance().applyFilter(filterId, rv_instance.ReportId, containerid, true);
filterParentEl.find(`.filter-item.active`).addClass('active');
filterParentEl.find(`.liFilter_${filterId}`).addClass('active');
});
$(`#staticFiltersSelect_${containerid}`).val(rv_instance.filterId || 1).trigger('change');
}
}
getDynamicFiltersResponse(reportid) {
return __awaiter(this, void 0, void 0, function* () {
var res;
yield Unibase.Platform.Analytics.Managers.ReportManager.Instance().getDynamicFilters(reportid).then(function (response) {
res = response;
});
return res;
});
}
loadDynamicFilters(reportid, containerid) {
return __awaiter(this, void 0, void 0, function* () {
var instance = this;
if ($(`#ViewerHeader_${containerid} .filter_design-row`).length) {
return;
}
$("#dynamic-filters" + containerid).html("");
yield instance.dynamicFilter(reportid, containerid);
});
}
dynamicFilter(reportid, containerid) {
return __awaiter(this, void 0, void 0, function* () {
var instance = this;
let rv_instance = instance.getReportViewerInstance(containerid);
if (rv_instance.reportResponse.result.ReportInfo.IsEnableGlobalDatepicker)
Unibase.Platform.Analytics.Components._CommonFilter.Instance().commonFilter(reportid, containerid);
Unibase.Platform.Analytics.Managers.ReportManager.Instance().getDynamicFilters(reportid).then(yield function (response) {
if (response.length != 0) {
instance.bindDynamicFilters(response, reportid, containerid);
$("#filter-dropdown-footer" + containerid).removeClass('d-none');
instance.setDynamicFilterDpBodyHeight(containerid);
}
else if (rv_instance.reportResponse.result.ReportInfo.IsEnableGlobalDatepicker) {
$("#filter-dropdown-footer" + containerid).removeClass('d-none');
instance.setDynamicFilterDpBodyHeight(containerid);
}
else {
$("#filter-dropdown-errmessage" + containerid).removeClass('d-none');
$(`#filters-list${containerid}`).removeClass('pinned-report-filters');
$(`#dynamicFilterPin_${containerid},#unPinDynamicFiltersIcon_${containerid}`).addClass('d-none');
$(`#filter-icon${containerid}`).removeClass('d-none');
if (!$(`#filters-list${containerid} .filter-item`).length) {
$(`#card-header-filters${containerid}`).addClass('d-none');
}
}
});
});
}
bindDynamicFilters(response, reportid, containerid) {
var instance = this;
instance.dateFilters = [];
instance.getdynamicfilters = [];
var html = "";
let filterpanel_instance = Unibase.Platform.Analytics.Components.FilterPanel.Instance();
let rv_instance = instance.getReportViewerInstance(containerid);
rv_instance.getdynamicfilters = [];
filterpanel_instance.dateFilters = [];
if (rv_instance != undefined) {
instance.dynamicFilters = rv_instance.dynamicFilters;
if (!rv_instance.isApplyFilter) {
rv_instance.dateFilters = [];
for (var d = 0; d < filterpanel_instance.selectedDates.length; d++) {
if (filterpanel_instance.selectedDates[d].containerid != "_navCmnDateFilter") {
filterpanel_instance.selectedDates.splice(d, 1);
}
}
}
}
let isPinFilters = false, isPl_0 = 'pl-0';
let parentEl = $(`#dynamic-filters${containerid}`);
if ($(`#filters-list${containerid}`).hasClass('pinned-report-filters')) {
isPinFilters = true;
parentEl = $(`#filters-list${containerid}`);
parentEl.removeClass('d-none');
isPl_0 = '';
}
for (let i = 0; i < response.length; i++) {
var data = response.find(x => x.Index == i);
let existingFilter;
if (data) {
const { DynamicFilterId: dynamicFilterId, DisplayName: displayName, IsRequired } = data;
const containerIdWithFilterId = containerid + '-' + dynamicFilterId;
const containerIdWith_FilterId = containerid + '_' + dynamicFilterId;
let rowindex = response.findIndex(el => el.DynamicFilterId === dynamicFilterId);
var obj = {
datalistId: data.DatalistId,
valueColumn: data.ValueColumn,
textColumn: data.TextColumn,
isFilterableColumn: data.IsFilterableColumn,
dynamicFilterId: data.DynamicFilterId,
controlTypeId: data.ControlTypeId,
fontCaseTypeId: data.FontCaseTypeId,
isUnLimited: data.IsUnLimited,
IsRequired: data.IsRequired,
applyFor: data.ApplyFor,
parentColumn: data.ParentColumn,
isCustomFilter: data.IsCustomFilter
};
if (rv_instance.getdynamicfilters.length > 0) {
var dFill = rv_instance.getdynamicfilters.find(x => x.isFilterableColumn == data.IsFilterableColumn);
if (!dFill)
rv_instance.getdynamicfilters.push(obj);
}
else
rv_instance.getdynamicfilters.push(obj);
html = `
`;
if (data.DataType == Unibase.Platform.Analytics.Reports.Enums.DataType.dateTime) {
html += `
`;
parentEl.append(html);
if (instance.dateFilters.length != 0)
Unibase.Platform.Analytics.Components.FilterPanel.Instance().dateFilters = instance.dateFilters;
let datefills = rv_instance.dateFilters.find(d => d.ParameterValue == dynamicFilterId);
Unibase.Platform.Analytics.Components.FilterPanel.Instance().isPartition = data.IsPartition;
Unibase.Platform.Analytics.Components.FilterPanel.Instance().load(dynamicFilterId, containerid, datefills ? false : data.IsDefault);
if (datefills == undefined && !data.IsDefault) {
$(`#report-daterange${containerIdWithFilterId}`).val("");
$(`.daterange-cross-icon${containerIdWith_FilterId}`).addClass("hidden");
}
instance.reportManager.getReportColumnByAliasName(reportid, data.IsFilterableColumn).then(res => {
if (res.status == Unibase.Data.Status.Success)
$("#" + containerid + " #filter_design-row" + rowindex).find(".display-name").text(res.result.DisplayText);
else
return MessageHelper.Instance().showError(res.message, "filter-dropdown-errmessage" + containerid);
});
}
else {
if (instance.dynamicFilters != null)
existingFilter = instance.dynamicFilters.find(f => f.DynamicFilterId == dynamicFilterId);
if ((containerid.includes("_ViewAllByUniqueId") || containerid.includes("_linkedreport_")) && instance.dynamicFilters.length > 0) {
for (let i = 0; i < rv_instance.getdynamicfilters.length; i++) {
existingFilter = instance.dynamicFilters.find(d => d.ParameterName == rv_instance.getdynamicfilters[i].isFilterableColumn);
}
}
if (data.ControlTypeId == Unibase.Platform.Analytics.Enums.ControlType.textbox) {
html += `
`;
$(`#txtboxcolumn${containerIdWith_FilterId}`).append(data.IsFilterableColumn);
$(`#txtboxcolumn${containerIdWith_FilterId}`).children().remove();
parentEl.append(html);
if (existingFilter != null) {
const containerWith_DynamicFilterId = containerid + "_" + existingFilter.dynamicFilterId;
$(`#txtboxcolumn${containerWith_DynamicFilterId}`).val(existingFilter.ParameterValue);
$(`#inputClearIcon_${containerWith_DynamicFilterId}`).removeClass('d-none');
$(`#autotxtcolumn${containerWith_DynamicFilterId}`).val(existingFilter.ParameterValue).trigger("change");
}
}
else if (data.ControlTypeId == Unibase.Platform.Analytics.Enums.ControlType.select2) {
var select2id = `select2${containerIdWith_FilterId}`;
html += `
`;
parentEl.append(html);
instance.loadSelect2(select2id, reportid, true, containerid, obj);
if (existingFilter != null) {
for (let j = 0; j < existingFilter.ParameterValues.length; j++) {
$("#" + select2id).append(`
${existingFilter.Select2Text[j]} `);
}
$("#" + select2id).val(existingFilter.ParameterValues);
}
}
else if (data.ControlTypeId == Unibase.Platform.Analytics.Enums.ControlType.autocomplete || data.ControlTypeId == Unibase.Platform.Analytics.Enums.ControlType.cascadingautocomplete) {
html = instance.loadAutocompleteHtml(html, containerid, dynamicFilterId, data.IsFilterableColumn, rowindex, displayName);
parentEl.append(html);
var select2id = `autotxtcolumn${containerIdWith_FilterId}`;
instance.loadSelect2(select2id, reportid, false, containerid, obj);
if (existingFilter != undefined) {
$("#" + select2id).append(`
${existingFilter.ParameterText} `);
$("#" + select2id).val(existingFilter.ParameterValue).trigger('change');
}
}
}
}
}
if (isPinFilters) {
instance.bindPinnedDynamicFiltersActionBtns(reportid, containerid);
}
}
loadAutocompleteHtml(html, containerid, dynamicfilterid, isfilterablecolumn, rowindex, displayName) {
const containerIdWith_FilterId = containerid + '_' + dynamicfilterid;
html += `
`;
$(`#autotxtcolumn${containerIdWith_FilterId}`).append(isfilterablecolumn);
$(`#autotxtcolumn${containerIdWith_FilterId}`).children().remove();
return html;
}
loadAutoComplete(select2id, reportid, textcolumn) {
var url = _appsettings.server_url() + '/apis/v4/unibase/platform/analytics/dynamicfilterautocomplete/reportid/' + reportid + '/isfilterablecolumn/' + textcolumn;
AutoCompleteHelper.getHelper().Create("#" + select2id, "#hf_filtercolumn_" + 0, url, null);
}
loadSelect2(select2id, reportid, isMultiple, containerid, res) {
var instance = this;
var data = [];
var Ids = 0;
var value = null;
var rv_instance = instance.getReportViewerInstance(containerid);
var userinfo = Unibase.Platform.Membership.Infos.Identity.getCurrentUser();
var url = _appsettings.server_url() + '/apis/v4/unibase/platform/analytics/getdynamicfilterdata';
const selectEl = $("#" + select2id);
selectEl.select2({
placeholder: "Select",
multiple: isMultiple,
allowClear: true,
dropdownAutoWidth: true,
dropdownParent: $(`#${containerid}`),
data: data,
ajax: {
url: function (request) {
var reqUrl = url;
return reqUrl;
},
contentType: 'application/json',
type: "POST",
delay: 250,
data: function (params) {
var parentCol = rv_instance.cascadingFilters.find(cf => cf.ChildColumn == res.isFilterableColumn);
if (parentCol)
$("#autotxtcolumn" + containerid + "_" + parentCol.DynamicFilterId).val(Ids).trigger('change');
if (res.controlTypeId == Unibase.Platform.Analytics.Enums.ControlType.cascadingautocomplete) {
if (rv_instance.cascadingFilters.length > 0) {
var casFil = rv_instance.cascadingFilters.find(cf => cf.ChildColumn == res.isFilterableColumn);
if (casFil)
value = casFil.Value;
}
else
value = "";
}
let encoded_term = (params.term) ? btoa(params.term) : "";
var obj = {
ReportId: reportid,
DataListId: res.datalistId,
IsFilterableColumn: res.isFilterableColumn,
TextColumn: res.textColumn,
ValueColumn: res.valueColumn,
CasCadingValue: value,
ApplyFor: res.applyFor,
ParentColumn: res.parentColumn,
ControlTypeId: res.controlTypeId,
Term: encoded_term,
AuthToken: userinfo.sessionId,
};
return JSON.stringify(obj);
},
beforeSend: function (xhr) {
if (userinfo !== undefined && userinfo !== null) {
xhr.setRequestHeader("Authorization", "Basic " + userinfo.sessionId);
xhr.setRequestHeader('geoposition', userinfo.latd + ':' + userinfo.lgId);
}
},
processResults: function (data) {
var selectData = [];
var Data;
var result = JSON.parse(data.result);
if (!result.Data) {
selectData.push({ id: 123456, text: "No results found", disabled: true });
}
else {
Data = JSON.parse(result.Data);
for (var i = 0; i < Data.length; i++) {
selectData.push({
id: Data[i][res.valueColumn],
text: Data[i][res.textColumn]
});
}
;
}
return { results: selectData };
}
},
templateResult: function (item) { return item.text; },
templateSelection: function (item) { return item.text; },
}).on('select2:select', function (e) {
let value = e.params.data.id;
if (rv_instance) {
for (var d = 0; d < rv_instance.getdynamicfilters.length; d++) {
var parentCol = rv_instance.getdynamicfilters[d];
if (parentCol.parentColumn == res.isFilterableColumn) {
var casFil = { ParentColumn: parentCol.parentColumn, ChildColumn: parentCol.isFilterableColumn, Value: value.toString(), DynamicFilterId: parentCol.dynamicFilterId };
if (rv_instance.cascadingFilters.length > 0) {
var index = rv_instance.cascadingFilters.findIndex(f => f.ChildColumn == parentCol.isFilterableColumn);
if (index > -1) {
rv_instance.cascadingFilters.splice(index, 1);
}
}
rv_instance.cascadingFilters.push(casFil);
}
}
}
if (isMultiple) {
instance.toggleSelect2CountInPinFilters($(this), containerid);
}
}).on('select2:clear', function (e) {
for (var sc = 0; sc < rv_instance.cascadingFilters.length; sc++) {
var casFil = rv_instance.cascadingFilters[sc];
if (casFil.ParentColumn == res.isFilterableColumn) {
$("#autotxtcolumn" + containerid + "_" + casFil.DynamicFilterId).val(Ids).trigger('change');
rv_instance.cascadingFilters.splice(sc, 1);
sc--;
}
}
}).on('select2:open', function (e) {
const dropdownEl = $(this).data('select2').dropdown.$dropdown;
dropdownEl.off('click').click(function (e) {
e.stopPropagation();
});
dropdownEl.on('click', '.select2-search--dropdown,.select2-search__field', function (e) {
e.stopPropagation();
});
}).on('select2:unselecting', function () {
$(this).data('unselecting', true);
}).on('select2:unselect', function () {
if (isMultiple) {
instance.toggleSelect2CountInPinFilters($(this), containerid);
}
}).on('select2:opening', function (e) {
if ($(this).data('unselecting')) {
$(this).removeData('unselecting');
e.preventDefault();
}
});
selectEl.val(Ids).trigger('change');
const selectionEl = selectEl.data('select2').$selection;
res.IsRequired && selectionEl.addClass('form-group-required');
if ($(`#filters-list${containerid}`).hasClass('pinned-report-filters')) {
const selectContainer = selectEl.data('select2').$container;
selectContainer.attr('style', `width:${selectContainer.width()}px !important`);
}
}
toggleSelect2CountInPinFilters(element, containerid) {
if ($(`#filters-list${containerid}`).hasClass('pinned-report-filters')) {
const selectedCount = element.select2('data').length;
const searchEl = element.data('select2').$selection;
searchEl.find('.select2-selection__count').remove();
if (selectedCount > 1) {
searchEl.append(`
${selectedCount > 9 ? '9+' : selectedCount - 1} `);
}
}
}
changeDateFilters(dynamicfilterid, containerid) {
var instance = this;
let rv_instance = instance.getReportViewerInstance(containerid);
if (rv_instance != undefined) {
let date = rv_instance.dateFilters.find(d => d.ParameterValue == dynamicfilterid);
if (date == undefined) {
let getfill = rv_instance.getdynamicfilters.find(gd => gd.dynamicFilterId == dynamicfilterid);
if (getfill) {
var dateFilter = {
ParameterName: getfill.isFilterableColumn,
ParameterValue: dynamicfilterid,
FromDate: $("#hfBizgaze_FromDate" + containerid + '_' + dynamicfilterid).val(),
ToDate: $("#hfBizgaze_ToDate" + containerid + '_' + dynamicfilterid).val(),
};
rv_instance.dateFilters.push(dateFilter);
}
}
else if (date) {
date.FromDate = $("#hfBizgaze_FromDate" + containerid + '_' + dynamicfilterid).val();
date.ToDate = $("#hfBizgaze_ToDate" + containerid + '_' + dynamicfilterid).val();
}
var index = rv_instance.dateFilters.findIndex(x => x.ParameterValue == dynamicfilterid);
if (index > -1) {
rv_instance.dateFilters[index].FromDate = $("#hfBizgaze_FromDate" + containerid + '_' + dynamicfilterid).val();
rv_instance.dateFilters[index].ToDate = $("#hfBizgaze_ToDate" + containerid + '_' + dynamicfilterid).val();
}
}
}
exportToExcel(tablename) {
$(document).ready(function () {
var tab_text = '
';
var textRange;
var txtArea1;
var j = 0;
var tab = document.getElementById('table-data');
var lines = tab.rows.length;
$('tr:empty').remove();
var excelheader = "";
if (lines > 0) {
tab_text = tab_text + '' + tab.rows[0].innerHTML + ' ';
}
excelheader += tab_text;
for (j = 1; j < lines; j++) {
if (tab.rows[j].style.display != 'none') {
tab_text = tab_text + "" + tab.rows[j].innerHTML + " ";
}
}
tab_text = tab_text + "
";
tab_text = tab_text + "
";
tab_text = tab_text.replace(/
]*>|<\/A>/g, "");
tab_text = tab_text.replace(/ ]*>/gi, "");
tab_text = tab_text.replace(/ ]*>|<\/input>/gi, "");
var ua = window.navigator.userAgent;
var msie = ua.indexOf("MSIE ");
if (msie > 0 || !!navigator.userAgent.match(/Trident.*rv\:11\./)) {
txtArea1.document.open("txt/html", "replace");
txtArea1.document.write(tab_text);
txtArea1.document.close();
txtArea1.focus();
let sa = txtArea1.document.execCommand("SaveAs", true, "DataTableExport.pdf");
}
else
var myBlob = new Blob([tab_text], { type: 'application/vnd.ms-excel' });
var url = window.URL.createObjectURL(myBlob);
var a = document.createElement("a");
document.body.appendChild(a);
a.href = url;
a.download = tablename + '.xls';
a.click();
setTimeout(function () { window.URL.revokeObjectURL(url); }, 0);
});
}
clearDateFilter(containerid, dynamicfilterid) {
var instance = this;
let filterpanel_instance = Unibase.Platform.Analytics.Components.FilterPanel.Instance();
let rv_instance = instance.getReportViewerInstance(containerid);
if (rv_instance) {
if (rv_instance.dateFilters.length > 0) {
let index = rv_instance.dateFilters.findIndex(d => d.ParameterValue == dynamicfilterid);
if (index > -1)
rv_instance.dateFilters.splice(index, 1);
}
}
if (filterpanel_instance.selectedDates.length > 0) {
let dIndex = filterpanel_instance.selectedDates.findIndex(s => s.Id == dynamicfilterid && s.containerid == containerid);
if (dIndex > -1)
filterpanel_instance.selectedDates.splice(dIndex, 1);
}
$("#report-daterange" + containerid + '-' + dynamicfilterid).val("");
$(".daterange-cross-icon" + containerid + '_' + dynamicfilterid).addClass("hidden");
}
clearTextBox(containerid, dynamicfilterid) {
var instance = this;
let rv_instance = instance.getReportViewerInstance(containerid);
if (rv_instance) {
if (rv_instance.dynamicFilters.length > 0) {
let index = rv_instance.dynamicFilters.findIndex(d => d.DynamicFilterId == dynamicfilterid);
if (index > -1)
rv_instance.dynamicFilters.splice(index, 1);
}
}
$('#txtboxcolumn' + containerid + '_' + dynamicfilterid).val('');
$(`#inputClearIcon_${containerid}_${dynamicfilterid}`).addClass('d-none');
}
toggleTextBoxClearIcon(containerid, dynamicfilterid) {
const inputVal = $(`#txtboxcolumn${containerid}_${dynamicfilterid}`).val();
const clearIconEl = $(`#inputClearIcon_${containerid}_${dynamicfilterid}`);
if (inputVal.trim().length > 0) {
clearIconEl.removeClass('d-none');
}
else {
clearIconEl.addClass('d-none');
}
}
clearDynamicFilters(reportid, containerid, ignoreLoadingFilterRequest) {
var instance = this;
let filterpanel_instance = Unibase.Platform.Analytics.Components.FilterPanel.Instance();
let rv_instance = instance.getReportViewerInstance(containerid);
if (rv_instance) {
if (rv_instance.dynamicFilters.length > 0) {
for (let i = 0; i < rv_instance.dynamicFilters.length; i++) {
$("#txtboxcolumn" + containerid + '_' + rv_instance.dynamicFilters[i].DynamicFilterId).val('');
if (rv_instance.dynamicFilters[i].ParameterValues && rv_instance.dynamicFilters[i].ParameterValues.length > 0) {
$("#select2" + containerid + "_" + rv_instance.dynamicFilters[i].DynamicFilterId).val("");
$("#select2" + containerid + "_" + rv_instance.dynamicFilters[i].DynamicFilterId).trigger("change");
}
}
}
if (rv_instance.dateFilters.length > 0) {
for (let d = 0; d < filterpanel_instance.selectedDates.length; d++) {
let datefills = rv_instance.dateFilters.find(df => df.ParameterValue == filterpanel_instance.selectedDates[d].Id);
if (datefills) {
filterpanel_instance.selectedDates.splice(d, 1);
}
}
for (let i = 0; i < rv_instance.dateFilters.length; i++) {
let datefills = rv_instance.dateFilters[i];
instance.clearDateFilter(containerid, datefills.ParameterValue);
if (datefills) {
filterpanel_instance.selectedDates.splice(i, 1);
}
}
}
if ($(`#filters-list${containerid}`).hasClass('pinned-report-filters')) {
$(`#staticFiltersSelect_${containerid}`).val(1).trigger('change');
rv_instance.filterId = 1;
}
if (rv_instance.reportResponse && rv_instance.reportResponse.result && rv_instance.reportResponse.result.ReportInfo && rv_instance.reportResponse.result.ReportInfo.IsEnableGlobalDatepicker) {
instance.clearGlobalDateFilter(containerid, rv_instance.ReportId);
}
if (rv_instance.isSubReport) {
instance.removeSubReportDynamicFilters(rv_instance);
}
else {
rv_instance.dynamicFilters = [];
rv_instance.dateFilters = [];
instance.dynamicFilters = [];
}
Unibase.Platform.Helpers.NavigationHelper.Filter = [];
instance.navigationHelper.showLoading();
instance.PageSize = rv_instance.PageSize;
!ignoreLoadingFilterRequest && this.loadFilteredReport(reportid, instance.filterId ? instance.filterId : rv_instance.filterId, containerid);
if ($(`#biz-filter-dropdown${containerid}`).hasClass('show')) {
$(`#filter-icon${containerid}`).dropdown('toggle');
}
let parentEl = $(`#dynamic-filters${containerid},#filters-list${containerid}`);
parentEl.find('select').not('.static-filters-select').each(function (i, el) {
$(el).val('').trigger('change');
});
$('.dynamic-filters' + containerid).addClass('invisible');
}
}
_applyfilter(reportid, containerid) {
var _a, _b;
var instance = this;
let ErrorProduced = false;
var IsAdmin = Unibase.Platform.Membership.Infos.Identity.getCurrentUser().isAdmin;
if (IsAdmin) {
$(`#applyToggleBtn${containerid}`).removeClass('d-none').parent().addClass('toggle-btn');
}
instance.navigationHelper.showLoading();
let rv_instance = instance.getReportViewerInstance(containerid);
if (rv_instance) {
for (var i = 0; i < rv_instance.getdynamicfilters.length; i++) {
var fil = rv_instance.getdynamicfilters[i];
var autocompletecolvalue = "";
var autocompletecoltext = "";
var select2colvalues = [];
var select2coltexts = [];
var expobj = Platform.Core.Enums.ExpressionOperator.Equals;
let id = "";
if (fil.controlTypeId == Unibase.Platform.Analytics.Enums.ControlType.textbox) {
id = "#txtboxcolumn" + containerid + '_' + fil.dynamicFilterId;
autocompletecolvalue = $(id).val();
autocompletecoltext = $("option:selected", "#autotxtcolumn" + containerid + '_' + fil.dynamicFilterId).text();
if (fil.IsRequired && !autocompletecolvalue) {
$(id).addClass("form-group-required");
ErrorProduced = true;
}
else if ($(id).hasClass("form-group-required")) {
$(id).removeClass("form-group-required");
ErrorProduced = false;
}
}
else if (fil.controlTypeId == Unibase.Platform.Analytics.Enums.ControlType.select2) {
let select2 = "#select2" + containerid + '_' + fil.dynamicFilterId;
let data = $(select2).select2('data');
const selectionEl = (_a = $(select2).data('select2')) === null || _a === void 0 ? void 0 : _a.$selection;
if (selectionEl) {
select2colvalues = data.map(x => x.id);
select2coltexts = data.map(x => x.text);
expobj = Platform.Core.Enums.ExpressionOperator.In;
if (fil.IsRequired && (!select2colvalues || (select2colvalues && !select2colvalues.length))) {
selectionEl.addClass("form-group-required");
ErrorProduced = true;
}
else if (selectionEl.hasClass("form-group-required")) {
selectionEl.removeClass("form-group-required");
ErrorProduced = false;
}
}
}
else if (fil.controlTypeId == Unibase.Platform.Analytics.Enums.ControlType.autocomplete || fil.controlTypeId == Unibase.Platform.Analytics.Enums.ControlType.cascadingautocomplete) {
let id = "#autotxtcolumn" + containerid + '_' + fil.dynamicFilterId;
autocompletecolvalue = $("option:selected", id).val();
autocompletecoltext = $("option:selected", id).text();
const selectionEl = (_b = $(id).data('select2')) === null || _b === void 0 ? void 0 : _b.$selection;
if (selectionEl) {
if (fil.IsRequired && (autocompletecolvalue == "Select" || autocompletecolvalue == "0" || !autocompletecolvalue)) {
selectionEl.addClass("form-group-required");
ErrorProduced = true;
}
else if (selectionEl.hasClass("form-group-required")) {
selectionEl.removeClass("form-group-required");
ErrorProduced = false;
}
}
}
var duplicateFilIndex = instance.dynamicFilters.findIndex(x => x.ParameterName == fil.isFilterableColumn.trim() && x.ParameterValue != autocompletecolvalue);
if (duplicateFilIndex > -1)
instance.dynamicFilters.splice(duplicateFilIndex, 1);
var filter = instance.dynamicFilters.find(x => x.ParameterName == fil.isFilterableColumn.trim()) ? true : false;
if (!filter && autocompletecolvalue || select2colvalues.length > 0) {
if (autocompletecolvalue != "Select" && autocompletecolvalue || select2colvalues.length > 0) {
instance.dynamicFilters.push({
ParameterName: fil.isFilterableColumn.trim(),
ParameterValue: autocompletecolvalue,
ParameterValues: select2colvalues,
Select2Text: select2coltexts,
ExpOp: expobj,
ParameterText: autocompletecoltext,
DynamicFilterId: fil.dynamicFilterId,
FontCaseTypeId: fil.fontCaseTypeId,
IsUnLimited: fil.isUnLimited,
IsCustomFilter: fil.isCustomFilter,
IsDynamicFitler: true,
});
instance.ReportId = reportid;
}
}
}
Unibase.Platform.Filters.Components.EditFilter.Instance().filters = instance.dynamicFilters;
if (rv_instance.isSubReport) {
instance.dynamicFilters.forEach(filter => {
const index = rv_instance.dynamicFilters.findIndex(x => x.ParameterName === filter.ParameterName);
if (index !== -1) {
rv_instance.dynamicFilters[index] = filter;
}
else {
rv_instance.dynamicFilters.push(filter);
}
});
if (instance.dynamicFilters.length !== rv_instance.getdynamicfilters.length) {
instance.removeSubReportDynamicFilters(rv_instance);
}
}
else {
rv_instance.dynamicFilters = instance.dynamicFilters;
}
if (rv_instance && rv_instance.PageSize)
instance.PageSize = rv_instance.PageSize;
!ErrorProduced && instance.loadFilteredReport(reportid, instance.filterId ? instance.filterId : rv_instance.filterId, containerid);
if (!ErrorProduced && $(`#biz-filter-dropdown${containerid}`).hasClass('show')) {
$(`#filter-icon${containerid}`).dropdown('toggle');
}
if (ErrorProduced) {
instance.navigationHelper.hideLoading();
rv_instance.dynamicFilters = [];
instance.dynamicFilters = [];
}
}
}
removeSubReportDynamicFilters(rv_instance) {
const instance = this;
rv_instance.getdynamicfilters.forEach(filter => {
if (filter.isFilterableColumn) {
const appliedFilterIndex = instance.dynamicFilters.findIndex(x => x.ParameterName === filter.isFilterableColumn);
if (appliedFilterIndex === -1) {
const filterIndex = rv_instance.dynamicFilters.findIndex(x => x.ParameterName === filter.isFilterableColumn);
if (filterIndex !== -1) {
rv_instance.dynamicFilters.splice(filterIndex, 1);
}
}
}
});
}
loadFilteredReport(reportid, filterid, containerid) {
var instance = this;
let rv_instance = instance.getReportViewerInstance(containerid);
let { fromDate, toDate } = this.checkForReportDatePicker(reportid, containerid);
if (rv_instance.fromDate && rv_instance.toDate) {
fromDate = rv_instance.fromDate;
toDate = rv_instance.toDate;
}
if (!rv_instance.PageSize)
instance.PageSize = rv_instance.PageSize;
!rv_instance.dateFilters && (rv_instance.dateFilters = []);
rv_instance.filterId = instance.filterId = Number(filterid);
let isdynamicfilters = instance.isIdentityFilter(rv_instance.dynamicFilters);
let { stringifiedSortColumns } = this.getStringfySortColsAlongWithGrpByCols(containerid, rv_instance);
var repObj = {
ReportId: Number(reportid),
Filter: rv_instance.dynamicFilters,
DateFilter: rv_instance.dateFilters,
FilterId: Number(filterid),
Page: instance.Page,
pageSize: instance.PageSize,
IsEnableCount: rv_instance.isEnableCount,
InputParameters: rv_instance.inputParameters,
SearchTerm: rv_instance.ListSearchTerm,
FromDate: fromDate,
ToDate: toDate,
viewerTypeId: rv_instance && rv_instance.ViewerSettings && rv_instance.ViewerSettings.selectedViewerTypeId,
DisplayModeTypeId: this.getDisplayModeTypeId(),
IsDynamicFilterApplied: isdynamicfilters,
SortColumn: stringifiedSortColumns,
viewerId: rv_instance.ViewerSettings && rv_instance.ViewerSettings.selectedViewerId,
isShowAll: rv_instance.isShowAll,
};
instance.reportManager.getReportInfo(repObj).then(function (response) {
return __awaiter(this, void 0, void 0, function* () {
if (response.status != Unibase.Data.Status.Success) {
instance.navigationHelper.hideLoading();
MessageHelper.Instance().showError(response.message, "div_ErrorMessage", containerid);
return false;
}
rv_instance.isApplyFilter = true;
rv_instance.reportResponse = response;
if (response.result.ReportJsonData.Result.Data != "") {
rv_instance.reportDatalength = JSON.parse(response.result.ReportJsonData.Result.Data).length;
rv_instance.reportData = JSON.parse(response.result.ReportJsonData.Result.Data);
}
else {
rv_instance.reportData = [];
}
instance.bindAppliedFilterCount(rv_instance, containerid);
if (!response.result.ReportInfo.IsEnableCount) {
if (response.result.ReportJsonData.Result.Data == "") {
$("#Viewer_pagintion" + containerid).addClass("hidden");
}
else {
$("#Viewer_pagintion" + containerid).addClass("hidden");
$(".rpt-Count" + containerid).removeClass("hidden");
}
}
else {
if (response.result.ReportJsonData.Result.Data == "")
$("#Viewer_pagintion" + containerid).addClass("hidden");
else
$("#Viewer_pagintion" + containerid).removeClass("hidden");
$(".rpt-Count" + containerid).addClass("hidden");
}
if (response.result.ReportInfo.ReportTypeId == Unibase.Platform.Analytics.Reports.Enums.ReportType.Table) {
if ($("#" + containerid + " .templateviewer-body").is(":visible") != true && instance.isTableView(containerid)) {
var filterresponse = response.result.ReportJsonData;
instance.navigationHelper.hideLoading();
let tableViewer = Unibase.Platform.Analytics.Viewers.TableViewer.Instance();
if (response.result.ReportInfo.PivotTypeId != 0 && !response.result.ReportInfo.IsTreeExpand) {
tableViewer.loadView(response, reportid, rv_instance.ViewerSettings.selectedViewerTypeId, instance.Page, instance.PageSize, containerid, rv_instance.ViewerSettings, null, rv_instance.reportWidgetData);
instance.noDataMessage(rv_instance.dynamicFilters, rv_instance.reportResponse.result.ReportInfo.IsAutoData, containerid);
}
else {
let responseData = filterresponse.Result.Data;
if (responseData == "")
responseData = [];
else {
let { hasImageUrl, data } = tableViewer.checkForImageUrlAndUpdateTableData(rv_instance.reportColumns, JSON.parse(responseData));
if (hasImageUrl)
responseData = data;
}
rv_instance.table.replaceData(responseData).then(function (rows) {
if (!responseData.length) {
$("#btn-list-load-more_div_" + containerid).addClass('hidden');
$(`#Viewer_${containerid} .report-viewer-footer`).addClass('hidden');
instance.noDataMessage(rv_instance.dynamicFilters, rv_instance.reportResponse.result.ReportInfo.IsAutoData, containerid);
}
else {
$(`#Viewer_${containerid} .report-viewer-footer`).removeClass('hidden');
}
rv_instance.table.redraw(true);
tableViewer.bindWidgetConfigurations(containerid, rows);
});
}
let datalength;
if (filterresponse.Result.Data == "")
datalength = 0;
else if (typeof (filterresponse.Result.Data) == 'string')
datalength = JSON.parse(filterresponse.Result.Data).length;
else
datalength = filterresponse.Result.Data.length;
if (datalength >= filterresponse.TotalRecords) {
if (filterresponse.TotalRecords != 0)
$("#btn-list-load-more_" + containerid).addClass('hidden');
$('#Viewer_pagintion' + containerid).html(filterresponse.TotalRecords + ' ' + 'of' + ' ' + filterresponse.TotalRecords);
}
else {
$('#Viewer_pagintion' + containerid).html(datalength + ' ' + 'of' + ' ' + filterresponse.TotalRecords);
}
$("#Viewer_pagintion_count" + containerid).html(`(${filterresponse.TotalRecords})`);
let VisibleContainerId = Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
var notdashboard = $("#" + VisibleContainerId).find("#dashboardwidget-container").length;
var notdetailspage = $("#" + VisibleContainerId).find(".detail-container-content").length;
var nomodal = $("._bizgaze_popup_container").find(".NoMore-Records").length;
if (datalength < 20 || datalength == 0) {
$("#btn-list-load-more_" + containerid).addClass('hidden');
if (notdashboard == 0 && notdetailspage == 0 && nomodal == 0 && datalength != 0) {
$("#btn-list-load-more_" + containerid).parents().find(".NoMore-Records").removeClass('d-none');
}
}
else {
$("#btn-list-load-more_" + containerid).removeClass('hidden').parent().removeClass("hidden");
if (notdashboard == 0 && notdetailspage == 0 && nomodal == 0 && datalength != 0) {
$("#btn-list-load-more_" + containerid).parents().find(".NoMore-Records").addClass('d-none');
}
}
}
else {
Unibase.Platform.Analytics.Viewers.TemplateViewer.Instance().last_page = 1;
Unibase.Platform.Analytics.Viewers.TemplateViewer.Instance().ListSearchTerm = Unibase.Platform.Helpers.NavigationHelper.ListSearchTerm;
instance.loadDefaultViewer(reportid, containerid, rv_instance && rv_instance.reportResponse && rv_instance.reportResponse.result && rv_instance.reportResponse.result.ReportInfo);
}
}
else {
var _chartviewer = Unibase.Platform.Analytics.Charts.ChartViewer.Instance();
_chartviewer.Filter = instance.dynamicFilters;
if (rv_instance.reportWidgetData != 0 && rv_instance.reportWidgetData != null)
_chartviewer.WidgetName = rv_instance.reportWidgetData.Data.WidgetName;
instance.navigationHelper.loadSection(reportid, containerid, _chartviewer, null, null);
}
if (filterid) {
$(`#ViewerHeader_${containerid} .filter-item.active`).removeClass('active');
$("#ViewerHeader_" + containerid).find(".liFilter_" + filterid).addClass('active');
}
});
});
}
noDataMessage(dynamicFilters, isAutoData, containerid) {
if (!dynamicFilters.length && !isAutoData)
$("#" + containerid).find(".tabulator-placeholder").children().children().text("Select filter to show data");
else
$("#" + containerid).find(".tabulator-placeholder").children().children().text("No data available");
}
clearGlobalDateFilter(containerId, reportId) {
var dateTimeHelper = Unibase.Platform.Helpers.DateTimeHelper.Instance();
let user = Unibase.Platform.Membership.Infos.Identity.currentUser;
let formattedFromDate = dateTimeHelper.formatLocalDateTime(user.fromDate).split(" ")[0];
let formattedToDate = dateTimeHelper.formatLocalDateTime(user.toDate).split(" ")[0];
let serverFromDate = dateTimeHelper.formatServerDate(formattedFromDate);
let serverToDate = dateTimeHelper.formatServerDate(formattedToDate);
var datetype = Unibase.Platform.Analytics.Components.FilterPanel.Instance().getDateRangeString(Unibase.Platform.Membership.Infos.Identity.currentUser.globalDateRangeTypeId);
$(`#hfBizgaze_FromDate${containerId}_${reportId}`).val(serverFromDate);
$(`#hfBizgaze_ToDate${containerId}_${reportId}`).val(serverToDate);
$(`#report-daterange${containerId}-${reportId}`).val(formattedFromDate + " -" + formattedToDate);
$(`#dynamic-filters${containerId} #hfSelectedRangeKey`).val(datetype);
}
bindAppliedFilterCount(rv_instance, containerid) {
let dynamicFilterCount = 0;
if (rv_instance.dynamicFilters.length && rv_instance.dateFilters.length) {
dynamicFilterCount = rv_instance.dynamicFilters.length + rv_instance.dateFilters.length;
}
else if (rv_instance.dateFilters && rv_instance.dateFilters.length) {
dynamicFilterCount = rv_instance.dateFilters.length;
}
else {
dynamicFilterCount = rv_instance.dynamicFilters.length;
}
if (dynamicFilterCount) {
$(`#appliedFilterCount_${containerid}`).text(dynamicFilterCount).addClass('active');
}
else {
$(`#appliedFilterCount_${containerid}`).text('0').removeClass('active');
}
}
renderReportDeleteDailog() {
bootbox.confirm("Are you sure you want delete this report ?", (result) => {
if (result) {
let reportId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key.endsWith("reportid")).Value);
this.reportManager.deleteReport(reportId).then((delresponse) => {
if (delresponse.status == Unibase.Data.Status.Success) {
Unibase.Platform.Apps.Managers.AppManager.Instance().getInstallAppId("Unibase_Platform_Analytics_Reports_App_Reports").then((response) => {
if (response.status == Unibase.Data.Status.Success)
Unibase.Themes.Compact.Components.Nav.Instance().loadList(response.result.InstalledAppId);
});
MessageHelper.Instance().showSuccess(delresponse.message, 'div_message');
}
else
MessageHelper.Instance().showError(delresponse.message, 'div_message');
});
}
});
}
getDisplayModeTypeId() {
let displayModeId = 0;
const width = $(window).width();
if (width <= 576) {
displayModeId = Unibase.Platform.Analytics.Reports.Enums.DisplayModeType.Mobile;
}
else {
displayModeId = Unibase.Platform.Analytics.Reports.Enums.DisplayModeType.DeskTop;
}
return displayModeId;
}
getFromDateToDate() {
var fromDate = "";
var toDate = "";
var cf_fromDate = Unibase.Platform.Helpers.NavigationHelper.commonFilter_FromDate;
var cf_toDate = Unibase.Platform.Helpers.NavigationHelper.commonFilter_ToDate;
if (cf_fromDate != null && cf_toDate != null) {
fromDate = cf_fromDate.toString();
toDate = cf_toDate.toString();
}
else {
fromDate = Unibase.Platform.Helpers.DateTimeHelper.Instance().formatLocalDateformat(new Date(Unibase.Platform.Helpers.DateTimeHelper.Instance().currentDate()), "YYYY/MM/DD");
toDate = Unibase.Platform.Helpers.DateTimeHelper.Instance().formatLocalDateformat(new Date(Unibase.Platform.Helpers.DateTimeHelper.Instance().currentDate()), "YYYY/MM/DD");
}
return { FromDate: fromDate, ToDate: toDate };
}
updateStatus(reportid, statusid) {
var instance = this;
let reportId;
if (reportid != 0)
reportId = reportid;
else
reportId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key.endsWith("reportid")).Value);
let statusId;
if (statusid != 0)
statusId = statusid;
else
statusId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key.endsWith("statusid")).Value);
let installedappId = Number(Unibase.Themes.Providers.DetailHelper.installedAppId);
$("#DetailSetting_" + installedappId + "_Active").removeClass("btn-outline-primary");
if (statusId == Unibase.Platform.Core.Enums.RowStatus.Active) {
$("#DetailSetting_" + installedappId + "_Active").addClass("btn-success");
$("#DetailSetting_" + installedappId + "_Active").removeClass("btn-red");
}
else {
$("#DetailSetting_" + installedappId + "_Active").removeClass("btn-success");
$("#DetailSetting_" + installedappId + "_Active").addClass("btn-red");
}
$("#DetailSetting_" + installedappId + "_Active").text((statusId == Unibase.Platform.Core.Enums.RowStatus.Active) ? "Active" : "InActive");
$("#DetailSetting_" + installedappId + "_Active").click(function () {
let id = Unibase.Platform.Core.Enums.RowStatus.Active;
if ($("#DetailSetting_" + installedappId + "_Active").text() == "Active")
id = Unibase.Platform.Core.Enums.RowStatus.InActive;
instance.reportManager.updateReportStatus(reportId, id).then(function (statusres) {
if (statusres.status == Unibase.Data.Status.Success) {
instance.updateStatus(reportId, id);
}
});
});
}
getUserIdentityParameters() {
return [{ ColumnName: "branchid" }, { ColumnName: "companyid" }];
}
isIdentityFilter(dynamicfilters) {
var instance = this;
let isdynamicfilters = false;
if (dynamicfilters.length > 0) {
for (var i = 0; i < dynamicfilters.length; i++) {
let identity_params = instance.getUserIdentityParameters().find(u => u.ColumnName == dynamicfilters[i].ParameterName) ? true : false;
if (identity_params)
isdynamicfilters = true;
}
}
return isdynamicfilters;
}
getStringfySortColsAlongWithGrpByCols(containerid, rv_instance) {
let allSortColumns = [];
let selectedGroupByText = [];
let selectElement = $(`#groupByCatSelect_${containerid}`);
if (selectElement.length && selectElement.hasClass("select2-hidden-accessible")) {
$(`#groupByCatSelect_${containerid}`).select2('data').forEach((obj) => {
if (rv_instance.sortColumn && rv_instance.sortColumn.length) {
let idx = rv_instance.sortColumn.findIndex(x => x.Name == obj.text.trim());
if (idx == -1) {
allSortColumns.push({ Name: obj.text, Order: "Desc" });
}
}
else {
allSortColumns.push({ Name: obj.text, Order: "Desc" });
}
rv_instance.groupBy_Category.push(obj.id);
selectedGroupByText.push(obj.text);
});
if (allSortColumns && allSortColumns.length) {
allSortColumns = allSortColumns.concat(rv_instance.sortColumn);
if (allSortColumns && allSortColumns.length) {
return {
stringifiedSortColumns: JSON.stringify(allSortColumns),
selectedGroupByText: selectedGroupByText,
allSortColumns
};
}
}
else if (rv_instance.sortColumn && rv_instance.sortColumn.length) {
return {
stringifiedSortColumns: typeof (rv_instance.sortColumn) == 'string' ? rv_instance.sortColumn : JSON.stringify(rv_instance.sortColumn),
selectedGroupByText: "",
allSortColumns
};
}
}
return {
stringifiedSortColumns: "",
selectedGroupByText: "",
allSortColumns
};
}
refreshReportData(reportid, containerid, reportWidgetData) {
return __awaiter(this, void 0, void 0, function* () {
var instance = this;
var rv_instance = instance.getReportViewerInstance(containerid);
var filters = rv_instance.dynamicFilters.filter(x => !x.IsDynamicFitler);
rv_instance.inputParameters = [], rv_instance.ListSearchTerm = "",
rv_instance.filterId = 0, rv_instance.dateFilters = [], rv_instance.isShowAll = false, this.filterId = 0;
rv_instance.clearDynamicFilters(reportid, containerid, true);
if (filters && filters.length) {
rv_instance.dynamicFilters = filters;
}
if (rv_instance.isLinkReport && rv_instance.linkReportFilterObj != null) {
if (rv_instance.linkReportFilterObj.InputParameters && rv_instance.linkReportFilterObj.InputParameters.length) {
rv_instance.inputParameters = rv_instance.linkReportFilterObj.InputParameters;
}
if (rv_instance.linkReportFilterObj.DateFilters && rv_instance.linkReportFilterObj.DateFilters.length) {
rv_instance.dateFilters = rv_instance.linkReportFilterObj.DateFilters;
}
if (rv_instance.linkReportFilterObj.DynamicFilters && rv_instance.linkReportFilterObj.DynamicFilters.length) {
rv_instance.dynamicFilters = rv_instance.linkReportFilterObj.DynamicFilters;
}
}
if (rv_instance.isWidget && rv_instance.getdetailFilters && rv_instance.getdetailFilters[rv_instance.ReportId]) {
let fil = rv_instance.getdetailFilters[rv_instance.ReportId].Filter;
if (fil && fil.length)
rv_instance.inputParameters = fil;
}
if (rv_instance.ViewerSettings.selectedViewerTypeId
=== Unibase.Platform.Analytics.Reports.Enums.ViewerType.Table) {
instance.clearGroupByCategory(containerid);
}
$(`#${containerid} #ListSearch`).val("");
$(`#search-clear-icon${containerid}`).addClass('d-none').removeClass('d-flex');
$(`#ViewerHeader_${containerid} .filter-item.active`).removeClass('active');
$(`#ViewerHeader_${containerid} .liFilter_1`).addClass('active');
if (!rv_instance.isWidget) {
yield instance.loadFilters(reportid, containerid);
}
instance.getReportData(reportid, containerid, rv_instance.reportWidgetData, null);
});
}
DuplicateReport(reportId) {
if (!reportId) {
reportId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key.endsWith("reportid")).Value);
}
this.navigationHelper.popup(reportId, "", Unibase.Platform.Analytics.Components.DuplicateReport.Instance(), null, Unibase.Platform.Helpers.Size.Large);
}
downloadGroupedData(reportid, containerid, reportwidgetdata, typeid, callback) {
return __awaiter(this, void 0, void 0, function* () {
var instance = this;
let rv_instance = instance.getReportViewerInstance(containerid);
instance.Page = 0;
instance.PageSize = 0;
var jsfiles = ["libs/xlsx/xlsx.full.min.js", "libs/tabulator-tables/js/jspdf.min.js", "libs/tabulator-tables/js/jspdf.plugin.autotable.js"];
instance.fileCacheHelper.loadJsFiles(jsfiles, function () {
return __awaiter(this, void 0, void 0, function* () {
yield instance.getReportData(reportid, containerid, null, null);
var data = rv_instance.reportResponse && rv_instance.reportResponse.result && rv_instance.reportResponse.result.ReportJsonData && rv_instance.reportResponse.result.ReportJsonData.Result && rv_instance.reportResponse.result.ReportJsonData.Result.Data;
yield Unibase.Platform.Analytics.Viewers.TableViewer.Instance().setGroupBy(rv_instance, containerid, data ? JSON.parse(data) : []);
if (typeid == 1) {
rv_instance.table.download("xlsx", rv_instance.reportname + ".xlsx", { sheetName: "My Data" });
}
else {
rv_instance.table.download("pdf", rv_instance.reportname + ".pdf", {
orientation: "portrait",
title: rv_instance.reportname,
});
}
});
});
});
}
isTableView(containerId) {
let rv_ins = this.getReportViewerInstance(containerId);
if (rv_ins && rv_ins.ViewerSettings && rv_ins.ViewerSettings.selectedViewerTypeId) {
return rv_ins.ViewerSettings.selectedViewerTypeId == Unibase.Platform.Analytics.Reports.Enums.ViewerType.Table;
}
return false;
}
checkForReportDatePicker(reportid, containerid) {
let datetimeIns = Unibase.Platform.Helpers.DateTimeHelper.Instance();
var fromDate = "";
var toDate = "";
var cf_fromDate = Unibase.Platform.Helpers.NavigationHelper.commonFilter_FromDate;
var cf_toDate = Unibase.Platform.Helpers.NavigationHelper.commonFilter_ToDate;
let rv_instance = this.getReportViewerInstance(containerid);
if (rv_instance && rv_instance.reportResponse && rv_instance.reportResponse.result && rv_instance.reportResponse.result.ReportInfo && rv_instance.reportResponse.result.ReportInfo.IsEnableGlobalDatepicker) {
let dyFilDate = $("#" + containerid).find("#report-daterange" + containerid + "-" + reportid).val();
if (dyFilDate) {
cf_fromDate = datetimeIns.formatLocalDateformat(cf_fromDate, "DD/MM/YYYY");
cf_toDate = datetimeIns.formatLocalDateformat(cf_toDate, "DD/MM/YYYY");
if (dyFilDate != cf_fromDate + " - " + cf_toDate) {
fromDate = dyFilDate.split("-")[0].trim();
toDate = dyFilDate.split("-")[1].trim();
fromDate = datetimeIns.formatServerDate(fromDate);
toDate = datetimeIns.formatServerDate(toDate);
}
}
}
return { fromDate: fromDate, toDate: toDate };
}
bindCountDetails(containerid, response) {
let rv_instance = this.getReportViewerInstance(containerid);
let data = 0;
let res = typeof (response.result) == "string" ? JSON.parse(response.result) : response.result;
if (rv_instance) {
if (rv_instance.reportResponse.result.ReportJsonData.Result.Data != "") {
if (typeof (rv_instance.reportResponse.result.ReportJsonData.Result.Data) == "string")
data = JSON.parse(rv_instance.reportResponse.result.ReportJsonData.Result.Data).length;
else
data = rv_instance.reportResponse.result.ReportJsonData.Result.Data.length;
}
}
if (response.totalRecords || res.TotalRecords || (res.ReportJsonData && res.ReportJsonData.TotalRecords))
rv_instance.totalRecords = response.totalRecords || res.TotalRecords || (res.ReportJsonData && res.ReportJsonData.TotalRecords);
if (rv_instance.totalRecords == 0)
rv_instance.reportDatalength = 0;
if (rv_instance && rv_instance.ViewerSettings && rv_instance.ViewerSettings.selectedViewerTypeId == Unibase.Platform.Analytics.Reports.Enums.ViewerType.Card) {
$(`#Viewer_pagintion${containerid}`).html(data + ' ' + 'of' + ' ' + rv_instance.totalRecords).removeClass('hidden');
}
else {
$(`#Viewer_pagintion${containerid}`).html(rv_instance.reportDatalength + ' ' + 'of' + ' ' + rv_instance.totalRecords).removeClass('hidden');
}
$(`.rpt-Count${containerid},#visibleReportCountWrap_${containerid}`).addClass('hidden');
var display_count = `(${rv_instance.totalRecords}) `;
$(`#Viewer_pagintion_count${containerid}`).html(display_count);
var display_count_InMobile = `Count : ${rv_instance.totalRecords} `;
$(`#Viewer_pagintion_count_mobile${containerid}`).html(display_count_InMobile);
}
bindExistingPropsOfViewerInstance(containerid) {
let details_ins = Unibase.Themes.Compact.Components.Details.Instance();
if (details_ins.lastReportInstance) {
let rv_ins = this.getReportViewerInstance(containerid);
if (rv_ins.filterId) {
const id = rv_ins.filterId;
rv_ins.filterId = 0;
this.filterId = id;
$("#filters-list" + containerid).find(".active").removeClass("active");
$("#filters-list" + containerid).find(".liFilter_" + this.filterId).addClass("active");
}
if (rv_ins.dynamicFilters && rv_ins.dynamicFilters.length) {
this.bindAppliedFilterCount(rv_ins, containerid);
}
if (rv_ins.isEnableCount) {
this.bindCountDetails(containerid, rv_ins.reportResponse);
}
details_ins.lastReportInstance = null;
}
}
appendWidgetNoDataIcon(reportresp, containerid) {
$("#Viewer_" + containerid).addClass('widget-template-view');
if (reportresp && reportresp.Data == '') {
$("#Viewer_" + containerid).removeClass('show');
if (!$(`#widgetNoDataIcon_${containerid}`).length) {
$("#ViewerHeader_" + containerid).attr('aria-expanded', 'false').find('.card-header-right').append(` `);
}
}
else {
if (!$(`#widgetCollapseIcon_${containerid}`).length) {
$(`#ViewerHeader_${containerid} .card-header-right`).append(`
`);
}
}
}
bindShowAllCountChangeEvents(containerid) {
const showAllCountEl = $(`#showAllCount_${containerid}`);
const showAllInputEl = $(`#showAllCount_${containerid}`);
$(`#btn-list-load-more_${containerid}`).on('shown.bs.dropdown', function () {
showAllInputEl.addClass('hidden');
showAllCountEl.removeClass('hidden');
});
}
}
Components._ReportViewer = _ReportViewer;
})(Components = Analytics.Components || (Analytics.Components = {}));
})(Analytics = Platform.Analytics || (Platform.Analytics = {}));
})(Platform = Unibase.Platform || (Unibase.Platform = {}));
})(Unibase || (Unibase = {}));
var Unibase;
(function (Unibase) {
let Platform;
(function (Platform) {
let Analytics;
(function (Analytics) {
let Components;
(function (Components) {
class ReportViewer extends Components._ReportViewer {
constructor() {
super();
}
jsFiles() {
return this._jsFiles();
}
cssFiles() {
return this._cssFiles();
}
html(id, containerid) {
return this._html(id, containerid);
}
load(id, containerid, callback) {
Unibase.Platform.Helpers.FileCacheHelper.Instance().addCacheFiles([
"platform/analytics/components/reportviewer/viewerpermissions.js",
"platform/analytics/components/reportbuilder/importandexport.js",
"platform/core/helpers/navigation/size.js",
"platform/dataapis/managers/dataapimanager.js",
"platform/integrations/managers/integrationmanager.js",
"platform/analytics/providers/ifiltersettings.js",
"platform/analytics/providers/iviewersettings.js",
"platform/filters/components/filterpermission.js",
"platform/analytics/components/filterpanel/filterpanel.js",
"platform/datasources/components/queryparser/queryparser.js",
"platform/analytics/components/mapviewer/mapviewer.settings.js",
"platform/analytics/components/mapviewer/mapviewer.js"
]);
this.loadReport(id, 0, containerid, callback);
}
static Instance() {
return new ReportViewer();
}
}
Components.ReportViewer = ReportViewer;
})(Components = Analytics.Components || (Analytics.Components = {}));
})(Analytics = Platform.Analytics || (Platform.Analytics = {}));
})(Platform = Unibase.Platform || (Unibase.Platform = {}));
})(Unibase || (Unibase = {}));
var Unibase;
(function (Unibase) {
let Platform;
(function (Platform) {
let Analytics;
(function (Analytics) {
let Components;
(function (Components) {
class LinkReport extends Components._ReportViewer {
constructor() {
super();
this.linkreportid = 0;
this.LinkTableData = [];
this.LinkReportColumns = [];
this.isLinkReport = false;
this.PortletWidgetId = 0;
this._reportManager = Analytics.Managers.ReportManager.Instance();
}
cssFiles() {
return [];
}
jsFiles() {
var jsfiles = ["platform/analytics/components/reportviewer/_reportviewer.js"];
return jsfiles;
}
html(id, containerid) {
var reportid = id;
var newHtml_old = `
`;
let newHtml = `
`;
return newHtml;
}
load(id, containerid, callback) {
var instance = this;
var url = _appsettings.server_url() + '/apis/v4/unibase/platform/analytics/reports';
AutoCompleteHelper.getHelper().Create("#linkreport", "hfReportAutoComplete", url, null);
if (instance.linkreportid != 0) {
this._reportManager.getReportById(instance.linkreportid).then((res) => {
if (res.status == Unibase.Data.Status.Success) {
$("#linkreport").empty().append('
' + res.result.ReportName + ' ');
$("#linkreport").val(res.result.ReportId);
;
}
});
}
$("#btn-link-report-close").click(function () {
$('#' + containerid).modal('hide');
$('#' + containerid).remove();
Unibase.Platform.Analytics.Viewers.TableViewer.Instance().IsSelectable = false;
instance.isLinkReport = false;
instance.InputParameters = [];
});
$("#biz-filter-dropdown" + containerid).off().click(function (e) {
e.stopPropagation();
});
$("#LinkReportTitle_" + containerid).text(instance.LinkReportName);
$("#btnLinkReportClose").click(() => {
$('#' + containerid).modal('hide');
$('#' + containerid).remove();
});
$("#btnLinkReportSave").click(function () {
Unibase.Platform.Analytics.Reports.ReportBuilder.Instance().linkReportId = Number($("#linkreport").val());
instance.linkreportid = Number($("#linkreport").val());
$('#' + containerid).modal('hide');
$('#' + containerid).remove();
});
}
linkreport() {
this.navigationHelper.popup(0, '', this, null, Platform.Helpers.Size.Medium);
}
;
static Instance() {
if (this._instance === undefined)
this._instance = new LinkReport();
return this._instance;
}
}
Components.LinkReport = LinkReport;
})(Components = Analytics.Components || (Analytics.Components = {}));
})(Analytics = Platform.Analytics || (Platform.Analytics = {}));
})(Platform = Unibase.Platform || (Unibase.Platform = {}));
})(Unibase || (Unibase = {}));
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var Unibase;
(function (Unibase) {
let Platform;
(function (Platform) {
let Analytics;
(function (Analytics) {
let Managers;
(function (Managers) {
class ViewerManager extends Platform.Core.BaseManager {
getTemplateViews() {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/templateviews';
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getTemplateView(templateviewid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/templateview/' + templateviewid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getReportTemplate(ReportId) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/templateview/reportid/' + ReportId;
return yield this.dataHelper().getAsync(url).then(function (response) {
return JSON.parse(response.result);
});
});
}
getSubTemplate(templateviewid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/subtemplates/templateviewid/' + templateviewid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
saveTemplateView(obj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/templateview';
return yield this.dataHelper().postAsync(url, obj).then(function (response) {
return response;
});
});
}
deleteTemplate(templateviewid, reportid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/deletetemplateview/templateviewid/' + templateviewid + '/reportid/' + reportid;
return yield this.dataHelper().postAsync(url, templateviewid).then(function (response) {
return response;
});
});
}
getTemplates(templateNames) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/gettempates/tempatenames/' + templateNames;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getCalendarView(calendarviewid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/calendarview/' + calendarviewid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
saveCalendarView(obj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/calendarview';
return yield this.dataHelper().postAsync(url, obj).then(function (response) {
return response;
});
});
}
getMapView(mapviewid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/mapview/' + mapviewid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
saveMapView(obj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/mapview';
return yield this.dataHelper().postAsync(url, obj).then(function (response) {
return response;
});
});
}
getCardView(CardViewId) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/cardview/' + CardViewId;
return yield this.dataHelper().getAsync(url).then(function (response) {
return JSON.parse(response.result);
});
});
}
getCardViewerData(repObj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/kanban';
return yield this.dataHelper().postAsync(url, repObj).then(function (response) {
return JSON.parse(response.result);
});
});
}
saveCardView(obj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/cardview';
return yield this.dataHelper().postAsync(url, obj).then(function (response) {
return response;
});
});
}
getReportViewerTypes(reportid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/viewertypes/reportid/' + reportid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
deleteViewer(reportid, viewerid, viewertypeid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/deleteviewer/reportid/' + reportid + "/viewerid/" + viewerid + "/viewertypeid/" + viewertypeid;
return yield this.dataHelper().postAsync(url, null).then(function (response) {
if (response.result !== null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
updateViewerStatus(viewerid, viewertypeid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/updateviewerstatus/viewerid/' + viewerid + "/viewertypeid/" + viewertypeid;
return yield this.dataHelper().postAsync(url, null).then(function (response) {
return response;
});
});
}
getViewer(viewerid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/getviewer/viewerid/' + viewerid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
getViewerRoles(viewerid, reportid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/getviewerroles/viewerid/' + viewerid + '/reportid/' + reportid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
addViewerRole(obj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/saveviewerrole';
return yield this.dataHelper().postAsync(url, obj).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
removeViewerRole(obj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/removeviewerrole';
return yield this.dataHelper().postAsync(url, obj).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
setViewable(viewerid, viewAll, viewerTypeId) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/setasviewerviewable/viewerid/' + viewerid + '/viewall/' + viewAll + '/viewerTypeId/' + viewerTypeId;
return yield this.dataHelper().postAsync(url, null).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
exportViewers(viewerId, reportId) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/exportreportviewers/reportid/' + reportId + '/viewerid/' + viewerId;
return yield this.dataHelper().getAsync(url).then(function (response) {
return response;
});
});
}
static Instance() {
if (this._instance === undefined)
this._instance = new ViewerManager();
return this._instance;
}
}
Managers.ViewerManager = ViewerManager;
})(Managers = Analytics.Managers || (Analytics.Managers = {}));
})(Analytics = Platform.Analytics || (Platform.Analytics = {}));
})(Platform = Unibase.Platform || (Unibase.Platform = {}));
})(Unibase || (Unibase = {}));
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var Unibase;
(function (Unibase) {
let Platform;
(function (Platform) {
let Filters;
(function (Filters) {
let Managers;
(function (Managers) {
class FilterManager extends Platform.Core.BaseManager {
getFilterBy(installeappid, filterId) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getfilter/installedappid/' + installeappid + '/filterid/' + filterId;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
getFilterByReport(reportid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getfilter/reportid/' + reportid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
getDatalistQuery(installeappid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getdatalistquery/installedappid/' + installeappid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
getFilters(installeappid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/filters/installedappid/' + installeappid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
getReportFilters(reportid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/reportfilters/reportid/' + reportid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
refreshFilterIndex(filterids) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/refreshfilterindexes/filterids/' + filterids;
return yield this.dataHelper().postAsync(url, filterids).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
getFilter(filterId) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getfilter/filterid/' + filterId;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
saveFilter(obj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/savefilter';
return yield this.dataHelper().postAsync(url, obj).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
deleteFilter(filterid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/deletefilter/filterid/' + filterid;
return yield this.dataHelper().postAsync(url, null).then(function (response) {
return response;
});
});
}
updatefilterindex(filterId, defaultindex) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/updatefilterindex/filterid/' + filterId + '/defaultindex/' + defaultindex;
return yield this.dataHelper().postAsync(url, null).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
getFilterOptions(filterId) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getfilteroptions/filterid/' + filterId;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
removeFilterOption(obj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/removefilteroption';
return yield this.dataHelper().postAsync(url, obj).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
getFilterRoles(filterId) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/filterroles/filterid/' + filterId;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
setViewable(filterId, viewAll) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/setasviewable/filterid/' + filterId + '/viewall/' + viewAll;
return yield this.dataHelper().postAsync(url, null).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
addFilterRole(obj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/savefilterrole';
return yield this.dataHelper().postAsync(url, obj).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
removeFilterRole(obj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/removefilterrole';
return yield this.dataHelper().postAsync(url, obj).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
getDefaultFilterByReport(reportid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/getdefaultfilter/reportid/' + reportid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== "")
response.result = JSON.parse(response.result);
return response;
});
});
}
saveDefaultFilter(obj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/savedefaultfilter';
return yield this.dataHelper().postAsync(url, obj).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
updatedefaultfilter(filterId, defaultfilter) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/updatedefaultfilter/filterid/' + filterId + '/isdefault/' + defaultfilter;
return yield this.dataHelper().postAsync(url, null).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
deletedafultfilter(reportid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/deletedafultfilter/reportid/' + reportid;
return yield this.dataHelper().postAsync(url, null).then(function (response) {
return response;
});
});
}
static Instance() {
if (this._instance === undefined)
this._instance = new FilterManager();
return this._instance;
}
}
Managers.FilterManager = FilterManager;
})(Managers = Filters.Managers || (Filters.Managers = {}));
})(Filters = Platform.Filters || (Platform.Filters = {}));
})(Platform = Unibase.Platform || (Unibase.Platform = {}));
})(Unibase || (Unibase = {}));
class HtmlHelper {
encode(value) {
var unencoded = value;
return encodeURIComponent(unencoded).replace(/'/g, "%27").replace(/"/g, "%22");
}
decode(value) {
var encoded = value;
return decodeURIComponent(encoded.replace(/\+/g, " "));
}
static getHelper() {
return new HtmlHelper();
}
}
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var Unibase;
(function (Unibase) {
let Platform;
(function (Platform) {
let Apps;
(function (Apps) {
let Managers;
(function (Managers) {
class AppManager extends Platform.Core.BaseManager {
getAppGroups() {
return __awaiter(this, void 0, void 0, function* () {
let appgroupname = 'Sales';
const url = 'apis/v4/unibase/platform/apps/' + appgroupname;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
previewDocument(documentFileId) {
var instance = this;
Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile('platform/files/managers/filemanager.js', function () {
Unibase.Platform.Files.Managers.FileManager.Instance().getDocumentFile(documentFileId).then(function (response) {
var filePath = response.result.DocumentFilePath;
var result = response.result;
var byteCharacters = atob(result.FileData);
var byteNumbers = new Array(byteCharacters.length);
for (var i = 0; i < byteCharacters.length; i++) {
byteNumbers[i] = byteCharacters.charCodeAt(i);
}
var byteArray = new Uint8Array(byteNumbers);
var file = new Blob([byteArray], { type: result.DocumentFilePath + ';base64' });
var fileURL = URL.createObjectURL(file);
var fileName = result.DocumentFileName + "." + result.FileType;
window.open(result.DocumentFilePath);
});
});
}
refreshApps() {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/refreshapps/np';
return yield this.dataHelper().postAsync(url, "{}").then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getParentApps() {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getparentapps';
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
updateAppProvider(appproviderid, datalistid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/updatereportid/appproviderid/' + appproviderid + '/datalistid/' + datalistid;
var result = "";
yield this.dataHelper().post(url, null, function (response) {
result = JSON.parse(response.result);
}, function (response) {
result = JSON.parse(response.result);
});
return result;
});
}
saveDynamicApp(obj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/savedynamicapp';
return yield this.dataHelper().postAsync(url, obj).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
updateDynamicApp(obj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/updatedynamicapp';
return yield this.dataHelper().postAsync(url, obj).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
geAppInfoandappConfigurationInfo(installeappid, appconfigurationid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getappinfoandconfigurationinfo/installedappid/' + installeappid + '/appconfigurationid/' + appconfigurationid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null && response.result != "") {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
updateAppStatus(installedAppId, statusId) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/updateappstatus/installedappid/' + installedAppId + '/statusid/' + statusId;
return yield this.dataHelper().postAsync(url, null).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
updateWishList(installedAppId, statusId) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/updatewishlist/installedappid/' + installedAppId + '/status/' + statusId;
return yield this.dataHelper().postAsync(url, null).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
saveStatus(statusid, doctypeid, recordid, versionguid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/savestatus/statusid/' + statusid + '/doctypeid/' + doctypeid + '/recordid/' + recordid + '/versionguid/' + versionguid;
return yield this.dataHelper().postAsync(url, null).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getInstallApp(installeappid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getinstalledapp/id/' + installeappid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null && response.result != "") {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getAppVersion(versionid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getappversionid/id/' + versionid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null && response.result != "") {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getApp(appid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getappid/id/' + appid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null && response.result != "") {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
appUniqueId(uniqueid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getappuniqueid/appuniqueid/' + uniqueid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null && response.result != "") {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getUniqueId(uniqueid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getuniqueid/uniqueid/' + uniqueid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null && response.result != "") {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getDocumentFileId(documentid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getdocumentfileid/id/' + documentid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null && response.result != "") {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getWidgetVersion(widgetid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getwidgetid/id/' + widgetid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null && response.result != "") {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getDashboardVersion(portletid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getportletid/id/' + portletid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null && response.result != "") {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getCurrentDashboardVersion(portletid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getcurrentportletversion/id/' + portletid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null && response.result != "") {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getReportVersion(reportId) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getreportid/id/' + reportId;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null && response.result != "") {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getCurrentReportVersion(reportId) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getcurrentversiond/id/' + reportId;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null && response.result != "") {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getAllApps(installeappid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getallapps/installedappid/' + installeappid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null && response.result != "") {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getInstallAppId(uniqueid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getinstalledappid/uniqueid/' + uniqueid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null && response.result != "") {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getInstalledApps() {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getinstalledapps';
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getChildApps(installedappid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getchildapps/parentid/' + installedappid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getChilds(installedappid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getchilds/parentid/' + installedappid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getdependentApps(installedappid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getdependentapps/' + installedappid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
updateAppIndex(obj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/updateindexes/';
return yield this.dataHelper().postAsync(url, obj).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
duplicateApp(obj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/duplicateapp';
return yield this.dataHelper().postAsync(url, obj).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getAppPermission(apppermissionid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getapppermission/apppermissionid/' + apppermissionid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
getAppPermissions(installedAppId) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getapppermissions/installedappid/' + installedAppId;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
saveAppPermission(obj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/saveapppermissionid';
return yield this.dataHelper().postAsync(url, obj).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
deleteAppPermission(apppermissionid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/deleteapppermission/apppermissionid/' + apppermissionid;
return yield this.dataHelper().postAsync(url, null);
});
}
getAppPermissionBySystemName(installedAppId, SystemName) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getapppermissions/installedappid/' + installedAppId + "/systemname/" + SystemName;
var approlesettings;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
getAllAppConfigurations(installedappid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getappconfigurations/installedappid/' + installedappid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getListAppConfigurations(installedappid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/listappconfigurations/installedappid/' + installedappid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getDetailAppConfigurations(installedappid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/detailappconfigurations/installedappid/' + installedappid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getFormAppConfigurations(installedappid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getformconfigurations/installedappid/' + installedappid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getAppConfiguration(appconfigurationid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getconfiguration/id/' + appconfigurationid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getAppConfigurationByUniqueId(uniqueId) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getconfiguration/uniqueid/' + uniqueId;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
saveAppConfiguration(obj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/saveappconfiguration';
return yield this.dataHelper().postAsync(url, obj).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
deleteAppConfiguration(appConfigurationId) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/delete/id/' + appConfigurationId;
return yield this.dataHelper().postAsync(url, null);
});
}
updateConfigurationStatus(appConfigurationId, statusId) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/updatestatus/appconfigurationid/' + appConfigurationId + '/statusid/' + statusId;
return yield this.dataHelper().postAsync(url, null).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getUserApps() {
return __awaiter(this, void 0, void 0, function* () {
var url = "apis/v4/unibase/platform/apps/userapps/contactid/" + Platform.Membership.Infos.Identity.getCurrentUser().userId;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
getMyApps() {
return __awaiter(this, void 0, void 0, function* () {
var url = "apis/v4/unibase/platform/apps/myapps";
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
exportApp(installedappid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/exportapp/' + installedappid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null) {
response.result = response.result;
}
return response;
});
});
}
exportAppRoleSettings() {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/exportapprolesettings';
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null) {
response.result = response.result;
}
return response;
});
});
}
saveVersion(obj) {
return __awaiter(this, void 0, void 0, function* () {
debugger;
const url = 'apis/v4/unibase/platform/apps/saveversion';
return yield this.dataHelper().postAsync(url, obj).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getCurrentVersionByApp(installedappid) {
return __awaiter(this, void 0, void 0, function* () {
var url = "apis/v4/unibase/platform/apps/getcurrentversionbyapp/" + installedappid;
return yield this.dataHelper().getAsync(url).then(function (response) {
return response;
});
});
}
saveLatestVersionFromC02(obj) {
return __awaiter(this, void 0, void 0, function* () {
var url = "apis/v4/unibase/platform/apps/upgradeversionsave";
return yield this.dataHelper().postAsync(url, obj).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
upgradeApp(installedappid, versionno) {
return __awaiter(this, void 0, void 0, function* () {
var url = "apis/v4/unibase/platform/apps/upgradeappversion/installedappid/" + installedappid + "/versionno/" + versionno;
return yield this.dataHelper().postAsync(url, null).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
upgradeAvailableApp(installedappid) {
return __awaiter(this, void 0, void 0, function* () {
var url = "apis/v4/unibase/platform/apps/UpgradeAppAvailable/installedappid/" + installedappid;
return yield this.dataHelper().postAsync(url, null).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
upgradeWidgetVersionAvailable(widgetid) {
return __awaiter(this, void 0, void 0, function* () {
var url = "apis/v4/unibase/platform/apps/upgradewidgetversionavailable/widgetid/" + widgetid;
return yield this.dataHelper().postAsync(url, null).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
upgradeDashboardVersionAvailable(portletid) {
return __awaiter(this, void 0, void 0, function* () {
var url = "apis/v4/unibase/platform/apps/upgradedashboardversionavailable/portletid/" + portletid;
return yield this.dataHelper().postAsync(url, null).then(function (response) {
debugger;
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
upgradeReportVersionAvailable(reportId) {
return __awaiter(this, void 0, void 0, function* () {
var url = "apis/v4/unibase/platform/apps/upgradereportversion/reportid/" + reportId;
return yield this.dataHelper().postAsync(url, null).then(function (response) {
debugger;
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
checkAppPermission(installedAppId) {
return __awaiter(this, void 0, void 0, function* () {
var url = "apis/v4/unibase/platform/apps/checkapppermission/installedappid/" + installedAppId;
return yield this.dataHelper().postAsync(url, null).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
exportAppPermissions(appId) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/exportapppermissions/installedappid/' + appId;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null) {
response.result = response.result;
}
return response;
});
});
}
getSettingApps() {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getsettingapps';
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getDevApps() {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getdevapps';
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
executeProc(procName) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/executestoredprocedure/procname/' + procName;
return yield this.dataHelper().postAsync(url, '{}').then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getActiveUserApps() {
return __awaiter(this, void 0, void 0, function* () {
var url = "apis/v4/unibase/platform/apps/getactiveuserapps";
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
getConfigurationApps() {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/apps/getconfigurationapps';
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
static Instance() {
if (this._instance === undefined)
this._instance = new AppManager();
return this._instance;
}
}
Managers.AppManager = AppManager;
})(Managers = Apps.Managers || (Apps.Managers = {}));
})(Apps = Platform.Apps || (Platform.Apps = {}));
})(Platform = Unibase.Platform || (Unibase.Platform = {}));
})(Unibase || (Unibase = {}));
var Unibase;
(function (Unibase) {
let Platform;
(function (Platform) {
let Analytics;
(function (Analytics) {
let Components;
(function (Components) {
class FilterPanel extends Platform.Core.BaseComponent {
constructor() {
super();
this.serverFormat = "YYYY/MM/DD";
this._unibase_dateFormat = "DD/MM/YYYY";
this.dateFilters = [];
this.isPartition = false;
this.selectedDates = [];
this._dateTimeHelper = Unibase.Platform.Helpers.DateTimeHelper.Instance();
}
jsFiles() {
var jsfiles = ["platform/core/helpers/datetimehelper/datetimehelper.js"];
return jsfiles;
}
cssFiles() {
return [];
}
html(id, containerid) {
var html = `
`;
return html;
}
load(id, containerid, callback) {
var instance = this;
var width = $("#hk-filter-panel").width();
$("#_report_filter_buttons").css("width", width);
var fDate = null;
var tDate = null;
if (instance.isPartition) {
fDate = instance._dateTimeHelper.formatLocalDateformat(new Date(Unibase.Platform.Membership.Infos.Identity.getCurrentUser().partitionFromDate), "YYYY/MM/DD");
tDate = instance._dateTimeHelper.formatLocalDateformat(new Date(Unibase.Platform.Membership.Infos.Identity.getCurrentUser().partitionToDate), "YYYY/MM/DD");
}
else {
let currentUser = Unibase.Platform.Membership.Infos.Identity.getCurrentUser();
let _fromDate, _toDate;
var sd = instance.selectedDates.find(s => s.Id == id);
if (!currentUser.globalDateRangeTypeId) {
currentUser.globalDateRangeTypeId = Unibase.Platform.Analytics.Enums.DateRangeType.FiyYear;
}
let dateRange = this.getDateRangeString(currentUser.globalDateRangeTypeId);
if (sd) {
dateRange = sd.SelectedRangeKey;
}
$("#hfBizgaze_RFilterDate" + containerid + '_' + id).val(dateRange);
$(`#cmnDateRangeSelect_${containerid}-${id}`).val(dateRange);
if (currentUser.fromDate.includes("0001")) {
let { fromDate, toDate } = this.getFIY();
_fromDate = this._dateTimeHelper.formatLocalDate1(fromDate.toString(), 'YYYY-MM-DDThh:mm:ss') + 'Z';
_toDate = this._dateTimeHelper.formatLocalDate1(toDate.toString(), 'YYYY-MM-DDThh:mm:ss') + 'Z';
currentUser.fromDate = _fromDate;
currentUser.toDate = _toDate;
}
else if (dateRange.toLowerCase().includes("custom range")) {
_fromDate = currentUser.fromDate;
_toDate = currentUser.toDate;
}
else {
let dates = this.getFromDateAndToDateByDateRange(dateRange, false, "", "");
_fromDate = dates.fromDate.format();
_toDate = dates.toDate.format('yyyy-MM-DD') + 'T00:00:00+05:30';
}
let formattedFromDate = instance._dateTimeHelper.formatLocalDateTime(_fromDate).split(" ")[0];
let formattedToDate = instance._dateTimeHelper.formatLocalDateTime(_toDate).split(" ")[0];
let serverFromDate = instance._dateTimeHelper.formatServerDate(formattedFromDate);
let serverToDate = instance._dateTimeHelper.formatServerDate(formattedToDate);
$(`#hfBizgaze_ReportFromDate${containerid}_${id}`).val(serverFromDate);
$(`#hfBizgaze_ReportToDate${containerid}_${id}`).val(serverToDate);
if (id == '0') {
$(".CommonFilter_FromDate").val(formattedFromDate);
$(".CommonFilter_ToDate").val(formattedToDate);
Unibase.Platform.Helpers.NavigationHelper.commonFilter_FromDate = serverFromDate;
Unibase.Platform.Helpers.NavigationHelper.commonFilter_ToDate = serverToDate;
}
instance.SetRange(containerid, id);
}
Unibase.Platform.Analytics.Components.ReportViewer.Instance().dateFilters = instance.dateFilters;
if (callback && id != '0')
instance.addSelectedDateRange(id, containerid, callback);
if (instance.selectedDates.length > 0) {
instance.selectedDates.map(function (f) {
if (f.containerid != containerid && !f.containerid.includes('CmnDateFilter') && !containerid.includes('CmnDateFilter')) {
let dIndex = instance.selectedDates.findIndex(s => s.Id == id);
if (dIndex > -1)
instance.selectedDates.splice(dIndex, 1);
}
});
var sd = instance.selectedDates.find(s => s.Id == id);
if (sd) {
$("#report-daterange" + containerid + '-' + id).val(sd.DateRange);
$("#hfBizgaze_FromDate" + containerid + '_' + id).val(sd.FromDate);
$("#hfBizgaze_ToDate" + containerid + '_' + id).val(sd.ToDate);
$("#hfBizgaze_RFilterDate" + containerid + '_' + id).val(sd.SelectedRangeKey);
}
}
$("#report-daterange" + containerid + '-' + id).change(function (e) {
instance.onChangeDateRange(containerid, id, callback);
$('#report-daterange' + containerid + '-' + id).on('apply.daterangepicker', function (ev, picker) {
instance.onApplyDateRange(containerid, id);
if ($(`#biz-filter-dropdown${containerid}`).length)
instance.dateRangeShowEvent(containerid, id);
});
});
$("#report-daterange" + containerid + '-' + id).keypress(function (e) {
var x = e.which || e.keyCode;
if ((x >= 45 && x <= 57) || x == 32) {
return true;
}
else if (x == 13) {
$(this).trigger('change');
$(this).trigger('apply.daterangepicker');
}
else {
return false;
}
});
instance.dateRangeShowEvent(containerid, id);
if (containerid.includes('_navCmnDateFilter')) {
$('#report-daterange_navCmnDateFilter-0').on('hide.daterangepicker,cancel.daterangepicker', function () {
$('#navCmnDateFilterDp,#dynamic-filters_navCmnDateFilter').removeClass('show right-sunbnav-active');
});
}
if (instance.isMobileDatePicker(containerid)) {
const containerIdWithPortletId = containerid + '-' + id;
const containerIdWith_PortletId = containerid + '_' + id;
const cmnDateRangeEls = $(`#cmnFromDateRange_${containerIdWithPortletId},#cmnToDateRange_${containerIdWithPortletId}`);
$(`#cmnDateRangeSelect_${containerIdWithPortletId}`).change(function () {
$(`#hfBizgaze_RFilterDate${containerIdWith_PortletId}`).val($(this).val());
instance.SetRange(containerid, id);
instance.onChangeDateRange(containerid, id, null);
if ($(this).val() !== 'Custom Range') {
instance.onApplyDateRange(containerid, id);
}
});
$('#bizCmnDateFilterModal').off('apply.daterangepicker').on('apply.daterangepicker', cmnDateRangeEls, function () {
$(`#cmnDateRangeSelect_${containerIdWithPortletId}`).val('Custom Range');
$('#bizCmnDateFilterModal .modal-footer').removeClass('d-none');
});
$(`#cmnDateRangeApply_${containerIdWithPortletId}`).click(function (event) {
let fromDate = $(`#cmnFromDateRange_${containerIdWithPortletId}`).val();
let toDate = $(`#cmnToDateRange_${containerIdWithPortletId}`).val();
fromDate = instance._dateTimeHelper.formatServerDate(fromDate.trim());
toDate = instance._dateTimeHelper.formatServerDate(toDate.trim());
if (moment(fromDate).isSameOrAfter(toDate)) {
MessageHelper.Instance().showError('From date cannot be greater!', 'cmnDateFilterModalErrMsg');
return;
}
instance.onChangeDateRange(containerid, id, null, event);
instance.onApplyDateRange(containerid, id);
});
}
}
isMobileDatePicker(containerid) {
if (!Unibase.Themes.Compact.Components.Index.Instance().desktopMode && containerid.includes('CmnDateFilter')) {
return true;
}
return false;
}
onChangeDateRange(containerid, id, callback, event) {
const instance = this;
this.filterRange = this.getDateFilterRange(containerid, id);
$("#hfBizgaze_RFilterDate" + containerid + '_' + id).val(this.filterRange);
$(".daterange-cross-icon" + containerid + '_' + id).removeClass("hidden");
const { fromDate, toDate } = instance.getFromDateToDate(containerid, id);
$('#hfBizgaze_FromDate' + containerid + '_' + id).val(fromDate);
$('#hfBizgaze_ToDate' + containerid + '_' + id).val(toDate);
id != '0' && instance.addSelectedDateRange(id, containerid, callback);
if (this.filterRange != "Custom Range") {
if (id != 0) {
Unibase.Platform.Analytics.Components.ReportViewer.Instance().changeDateFilters(id, containerid);
}
if (instance.isMobileDatePicker(containerid)) {
$('#bizCmnDateFilterModal .modal-footer').addClass('d-none');
}
else {
instance.SetRange(containerid, id);
}
}
else {
if (instance.isMobileDatePicker(containerid)) {
let isApplyClicked = false;
if (event) {
isApplyClicked = $(event.currentTarget).attr('id').includes('cmnDateRangeApply_');
}
if (!isApplyClicked) {
$(`#cmnFromDateRange_${containerid + '-' + id}`).trigger('click');
$('#bizCmnDateFilterModal .modal-footer').removeClass('d-none');
}
}
}
}
getFromDateToDate(containerid, id) {
let range = $("#report-daterange" + containerid + '-' + id).val();
if (this.isMobileDatePicker(containerid)) {
range = $(`#cmnFromDateRange_${containerid + '-' + id}`).val() + '-' + $(`#cmnToDateRange_${containerid + '-' + id}`).val();
}
let date = range.split("-");
return { fromDate: this._dateTimeHelper.formatServerDate(date[0].trim()), toDate: this._dateTimeHelper.formatServerDate(date[1].trim()) };
}
getDateFilterRange(containerid, id) {
let filterdate = "";
if (!this.isMobileDatePicker(containerid)) {
var Rli = $(`#reportdatepicker_${containerid + '_' + id}`).find("ul");
if ($(Rli).find("li.active").data()) {
filterdate = $(Rli).find("li.active").data().rangeKey;
}
}
else {
filterdate = $(`#cmnDateRangeSelect_${containerid + '-' + id}`).val();
}
this.filterRange = filterdate;
return filterdate;
}
onApplyDateRange(containerid, id) {
const instance = this;
const navigationHelper = Unibase.Platform.Helpers.NavigationHelper;
if (id == "0") {
$('#hfBizgaze_FromDate' + containerid + '_' + id).val(navigationHelper.commonFilter_FromDate);
$('#hfBizgaze_ToDate' + containerid + '_' + id).val(navigationHelper.commonFilter_ToDate);
}
if (id != 0) {
Unibase.Platform.Analytics.Components.ReportViewer.Instance().changeDateFilters(id, containerid);
}
let sd = instance.selectedDates.find(s => s.Id == id);
if (sd) {
sd.IsDefault = false;
}
if (containerid.includes('CmnDateFilter')) {
let userInfo = Unibase.Platform.Membership.Infos.Identity.getCurrentUser();
const { fromDate, toDate } = instance.getFromDateToDate(containerid, id);
let _fromDate = this._dateTimeHelper.formatLocalDate1(fromDate, 'YYYY-MM-DD') + 'T00:00:00Z';
let _toDate = this._dateTimeHelper.formatLocalDate1(toDate, 'YYYY-MM-DD') + 'T00:00:00Z';
let rangeType = instance.getDateRangeType(this.filterRange);
let postObj = {
userid: userInfo.userId,
fromdate: _fromDate,
todate: _toDate,
DefaultFilterColumn: rangeType,
};
let currentUser = Unibase.Platform.Membership.Infos.Identity.currentUser;
currentUser.fromDate = _fromDate;
currentUser.toDate = _toDate;
currentUser.globalDateRangeTypeId = rangeType;
Unibase.Platform.Membership.Managers.AccountManager.Instance().updateUserDetails(postObj).then((res) => {
if (res.status == Unibase.Data.Status.Success) {
Unibase.Platform.Membership.Infos.Identity.setCurrentUser(currentUser);
const installedAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
if ($("#hf_DashboardPortletId").val() != undefined) {
Unibase.Themes.Compact.Components.Dashboard.Instance().loadWidgets($("#hf_DashboardPortletId").val(), $("#hf_DashboardPortletName").val());
}
else if ($("#hf_DashboardPortletId").val() == undefined && installedAppId == 0) {
const lastContainerId = navigationHelper.ModalContainerIds[navigationHelper.ModalContainerIds.length - 1];
const reportId = Unibase.Platform.Analytics.Components.ReportViewer.Instance().getReportViewerInstance(lastContainerId).ReportId;
instance.navigationHelper.closeAllModals();
let obj = Unibase.Platform.Analytics.Components.ReportViewer.Instance();
obj.InstalledAppId = Unibase.Themes.Compact.Components.List.Instance().InstalledAppId;
instance.navigationHelper.popin(reportId, "", obj, null);
}
else if (installedAppId != 0) {
$('#layout-detail-tabs').find('.tab-item a.active').trigger('click');
}
}
});
if (!instance.isMobileDatePicker(containerid)) {
if ($(this).parents('.biz-common-filter-dropdown').length > 0) {
$(`#filter_toggle_btn${containerid}`).dropdown('toggle');
}
if (containerid.includes('_modalCmnDateFilter')) {
instance.load('0', '_navCmnDateFilter', null);
}
$('#navCmnDateFilterDp,#dynamic-filters_navCmnDateFilter').removeClass('show right-sunbnav-active');
$('#settingsModal').modal('hide');
}
else {
$('#bizCmnDateFilterModal,#settingsModal').modal('hide');
}
}
}
dateRangeShowEvent(containerid, id) {
const instance = this;
$('#report-daterange' + containerid + '-' + id).on('show.daterangepicker', function (ev, picker) {
let rangePickerUl = picker.container.find('.ranges');
rangePickerUl.find('.active').removeClass('active');
var daterange = instance.selectedDates.find(s => s.Id == id);
if (daterange) {
let globalDate = instance.selectedDates.find(x => x.Id == "0");
if (globalDate && daterange.IsDefault)
rangePickerUl.find(`li[data-range-key='${globalDate.SelectedRangeKey}']`).addClass('active');
else
rangePickerUl.find(`li[data-range-key='${daterange.SelectedRangeKey}']`).addClass('active');
}
else {
let userInfo = Unibase.Platform.Membership.Infos.Identity.currentUser;
if (userInfo.globalDateRangeTypeId != undefined) {
rangePickerUl.find(`li[data-range-key='${instance.getDateRangeString(userInfo.globalDateRangeTypeId)}']`).addClass('active');
}
}
const pickerContainerEl = $(picker.container);
const leftPos = pickerContainerEl.offset().left;
rangePickerUl.find("li[data-range-key='Custom Range']").off('click').click((e) => {
if (pickerContainerEl.outerWidth(true) + leftPos < 710) {
pickerContainerEl.addClass('picker-fullwidth');
}
});
instance.setDateRangePickerHeight(picker);
});
}
setDateRangePickerHeight(picker) {
const pickerEl = picker.container;
const deductHeight = pickerEl.offset().top + 15;
const finalHeight = window.innerHeight - deductHeight;
pickerEl.css({ 'max-height': finalHeight, 'overflow': 'auto' }).attr('data-deductheight', deductHeight).addClass('biz-custom-scrollbar cmn-daterange-picker');
}
addSelectedDateRange(id, containerid, callback) {
const instance = this;
let range;
if (!instance.isMobileDatePicker(containerid)) {
range = $("#report-daterange" + containerid + '-' + id).val();
}
else {
range = $("#cmnFromDateRange_" + containerid + '-' + id).val() + '-' + $("#cmnToDateRange_" + containerid + '-' + id).val();
}
let date = range.split("-");
const fromDate = instance._dateTimeHelper.formatServerDate(date[0].trim());
const toDate = instance._dateTimeHelper.formatServerDate(date[1].trim());
let dIndex = instance.selectedDates.findIndex(s => s.Id == id);
if (dIndex > -1)
instance.selectedDates.splice(dIndex, 1);
instance.selectedDates.push({
FromDate: fromDate,
ToDate: toDate,
DateRange: range,
SelectedRangeKey: $("#hfBizgaze_RFilterDate" + containerid + '_' + id).val(),
Id: id,
containerid: containerid,
IsDefault: callback
});
if (id == "0") {
Unibase.Platform.Helpers.NavigationHelper.commonFilter_FromDate = fromDate;
Unibase.Platform.Helpers.NavigationHelper.commonFilter_ToDate = toDate;
}
}
SetRange(containerid, id) {
let dateRange = $("#hfBizgaze_CFilterDate").val();
let dates;
if (dateRange) {
dates = this.getFromDateAndToDateByDateRange(dateRange, false, containerid, id);
this.SetCompareDate(dates.fromDate, dates.toDate, containerid);
}
let dateRange_container = $("#hfBizgaze_RFilterDate" + containerid + '_' + id).val();
if (dateRange_container) {
dates = this.getFromDateAndToDateByDateRange(dateRange_container, true, containerid, id);
this.SetReportDate(dates.fromDate, dates.toDate, containerid, id);
}
}
SetCompareDate(FromDate, ToDate, containerid) {
var instance = this;
$("#hfBizgaze_CompareFromDate").val(FromDate.format(instance.serverFormat));
$("#hfBizgaze_CompareToDate").val(ToDate.format(instance.serverFormat));
var d = new Date();
var FiyYear = null;
if (d.getMonth() + 1 >= 4) {
FiyYear = [moment().startOf('year').add(3, 'month').startOf('month'), moment().add(1, 'year').startOf('year').add(2, 'month').endOf('month')];
}
else {
FiyYear = [moment().startOf('year').add(-1, 'year').add(3, 'month').startOf('month'), moment().add(1, 'year').startOf('year').add(-1, 'year').add(2, 'month').endOf('month')];
}
$("#compare-daterange").daterangepicker({
startDate: FromDate,
endDate: ToDate,
locale: {
format: instance._unibase_dateFormat
},
ranges: {
'Today': [moment(), moment()],
'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
'Last 7 Days': [moment().subtract(6, 'days'), moment()],
'Last 30 Days': [moment().subtract(29, 'days'), moment()],
'This Month': [moment().startOf('month'), moment().endOf('month')],
'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')],
'YTD': [moment().startOf('year').startOf('month'), moment().startOf('year').add(11, 'month').endOf('month')],
'FIY Year': FiyYear
}
});
}
SetReportDate(FromDate, ToDate, containerid, id) {
var instance = this;
$("#hfBizgaze_FromDate" + containerid + '_' + id).val(FromDate.format(instance.serverFormat));
$("#hfBizgaze_ToDate" + containerid + '_' + id).val(ToDate.format(instance.serverFormat));
var d = new Date();
var FiyYear = null;
if (d.getMonth() + 1 >= 4) {
FiyYear = [moment().startOf('year').add(3, 'month').startOf('month'), moment().add(1, 'year').startOf('year').add(2, 'month').endOf('month')];
}
else {
FiyYear = [moment().startOf('year').add(-1, 'year').add(3, 'month').startOf('month'), moment().add(1, 'year').startOf('year').add(-1, 'year').add(2, 'month').endOf('month')];
}
var PFiyYear = null;
if (d.getMonth() + 1 >= 4) {
PFiyYear = [moment().subtract(1, 'year').startOf('year').add(3, 'month').startOf('month'), moment().subtract(1, 'year').add(1, 'year').startOf('year').add(2, 'month').endOf('month')];
}
else {
PFiyYear = [moment().subtract(1, 'year').startOf('year').add(-1, 'year').add(3, 'month').startOf('month'), moment().subtract(1, 'year').add(1, 'year').startOf('year').add(-1, 'year').add(2, 'month').endOf('month')];
}
if (!instance.isMobileDatePicker(containerid)) {
$("#report-daterange" + containerid + '-' + id).daterangepicker({
startDate: FromDate,
endDate: ToDate,
drops: 'down',
showDropdowns: true,
showWeekNumbers: true,
linkedCalendars: false,
locale: {
format: instance._unibase_dateFormat,
firstDay: 1
},
ranges: {
'Today': [moment(), moment()],
'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
'Last 7 Days': [moment().subtract(6, 'days'), moment()],
'Last 30 Days': [moment().subtract(29, 'days'), moment()],
'This Month': [moment().startOf('month'), moment().endOf('month')],
'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')],
'This Quarter': [moment().startOf('quarter'), moment().endOf('quarter')],
'Last Quarter': [moment().subtract(1, 'quarter').startOf('quarter'), moment().subtract(1, 'quarter').endOf('quarter')],
'YTD': [moment().startOf('year').startOf('month'), moment().startOf('year').add(11, 'month').endOf('month')],
'Last Year': [[moment().subtract(1, 'year').startOf('year'), moment().subtract(1, 'year').endOf('year')][0], [moment().subtract(1, 'year').startOf('year'), moment().subtract(1, 'year').endOf('year')][1]],
'FIY Year': FiyYear,
'PFIY Year': PFiyYear,
}
});
if ($(`div[id=reportdatepicker_${containerid + '_' + id}]`).length)
$(`div[id=reportdatepicker_${containerid + '_' + id}]`).remove();
$(".daterangepicker").last().attr("id", `reportdatepicker_${containerid + '_' + id}`);
}
else {
const containerIdWithId = containerid + '-' + id;
const fromDateRangeEl = $(`#cmnFromDateRange_${containerIdWithId}`);
const toDateRangeEl = $(`#cmnToDateRange_${containerIdWithId}`);
const initiateDateRangePicker = (el, startDate) => {
el.daterangepicker({
startDate: startDate,
singleDatePicker: true,
showDropdowns: true,
locale: {
format: instance._unibase_dateFormat,
firstDay: 1
},
});
};
initiateDateRangePicker(fromDateRangeEl, FromDate);
initiateDateRangePicker(toDateRangeEl, ToDate);
$(`.mobiledaterangepicker`).remove();
$(".daterangepicker").slice(-2).addClass(`mobiledaterangepicker`);
}
}
getDateRangeString(typeId) {
let range = "";
switch (typeId) {
case Unibase.Platform.Analytics.Enums.DateRangeType.Last7Days:
range = 'Last 7 Days';
break;
case Unibase.Platform.Analytics.Enums.DateRangeType.Last30Days:
range = 'Last 30 Days';
break;
case Unibase.Platform.Analytics.Enums.DateRangeType.ThisMonth:
range = 'This Month';
break;
case Unibase.Platform.Analytics.Enums.DateRangeType.LastMonth:
range = 'Last Month';
break;
case Unibase.Platform.Analytics.Enums.DateRangeType.ThisQuarter:
range = 'This Quarter';
break;
case Unibase.Platform.Analytics.Enums.DateRangeType.LastQuarter:
range = 'Last Quarter';
break;
case Unibase.Platform.Analytics.Enums.DateRangeType.YTD:
range = 'YTD';
break;
case Unibase.Platform.Analytics.Enums.DateRangeType.LastYear:
range = 'Last Year';
break;
case Unibase.Platform.Analytics.Enums.DateRangeType.FiyYear:
range = 'FIY Year';
break;
case Unibase.Platform.Analytics.Enums.DateRangeType.PFiyYear:
range = 'PFIY Year';
break;
case Unibase.Platform.Analytics.Enums.DateRangeType.Today:
range = 'Today';
break;
case Unibase.Platform.Analytics.Enums.DateRangeType.Yesterday:
range = 'Yesterday';
break;
default:
range = 'Custom Range';
break;
}
return range;
}
getDateRangeType(range) {
let id = Unibase.Platform.Analytics.Enums.DateRangeType.CustomRange;
switch (range) {
case 'Last 7 Days':
id = Unibase.Platform.Analytics.Enums.DateRangeType.Last7Days;
break;
case 'Last 30 Days':
id = Unibase.Platform.Analytics.Enums.DateRangeType.Last30Days;
break;
case 'This Month':
id = Unibase.Platform.Analytics.Enums.DateRangeType.ThisMonth;
break;
case 'Last Month':
id = Unibase.Platform.Analytics.Enums.DateRangeType.LastMonth;
break;
case 'This Quarter':
id = Unibase.Platform.Analytics.Enums.DateRangeType.ThisQuarter;
break;
case 'Last Quarter':
id = Unibase.Platform.Analytics.Enums.DateRangeType.LastQuarter;
break;
case 'YTD':
id = Unibase.Platform.Analytics.Enums.DateRangeType.YTD;
break;
case 'Last Year':
id = Unibase.Platform.Analytics.Enums.DateRangeType.LastYear;
break;
case 'FIY Year':
id = Unibase.Platform.Analytics.Enums.DateRangeType.FiyYear;
break;
case 'PFIY Year':
id = Unibase.Platform.Analytics.Enums.DateRangeType.PFiyYear;
break;
case 'Today':
id = Unibase.Platform.Analytics.Enums.DateRangeType.Today;
break;
case 'Yesterday':
id = Unibase.Platform.Analytics.Enums.DateRangeType.Yesterday;
break;
}
return id;
}
getYesterday() {
var dates = [moment().subtract(1, 'days'), moment().subtract(1, 'days')];
return { fromDate: dates[0], toDate: dates[1] };
}
getToday() {
var dates = [moment(), moment()];
return { fromDate: dates[0], toDate: dates[1] };
}
getLast7days() {
var dates = [moment().subtract(6, 'days'), moment()];
return { fromDate: dates[0], toDate: dates[1] };
}
getLast30days() {
var dates = [moment().subtract(29, 'days'), moment()];
return { fromDate: dates[0], toDate: dates[1] };
}
getThisMonth() {
var dates = [moment().startOf('month'), moment().endOf('month')];
return { fromDate: dates[0], toDate: dates[1] };
}
getLastMonth() {
var dates = [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')];
return { fromDate: dates[0], toDate: dates[1] };
}
getThisQuarter() {
var dates = [moment().startOf('quarter'), moment().endOf('quarter')];
return { fromDate: dates[0], toDate: dates[1] };
}
getLastQuarter() {
var dates = [moment().subtract(1, 'quarter').startOf('quarter'), moment().subtract(1, 'quarter').endOf('quarter')];
return { fromDate: dates[0], toDate: dates[1] };
}
getYTD() {
var dates = [moment().startOf('year').startOf('month'), moment().startOf('year').add(11, 'month').endOf('month')];
return { fromDate: dates[0], toDate: dates[1] };
}
getLastYear() {
var dates = [moment().subtract(1, 'year').startOf('year'), moment().subtract(1, 'year').endOf('year')];
return { fromDate: dates[0], toDate: dates[1] };
}
getFIY() {
var d = new Date();
var FiyFromDate, FiyToDate;
if (d.getMonth() + 1 >= 4) {
FiyFromDate = [moment().startOf('year').add(3, 'month').startOf('month'), moment().add(1, 'year').startOf('year').add(2, 'month').endOf('month')][0];
FiyToDate = [moment().startOf('year').add(3, 'month').startOf('month'), moment().add(1, 'year').startOf('year').add(2, 'month').endOf('month')][1];
}
else {
FiyFromDate = [moment().startOf('year').add(-1, 'year').add(3, 'month').startOf('month'), moment().add(1, 'year').startOf('year').add(-1, 'year').add(2, 'month').endOf('month')][0];
FiyToDate = [moment().startOf('year').add(-1, 'year').add(3, 'month').startOf('month'), moment().add(1, 'year').startOf('year').add(-1, 'year').add(2, 'month').endOf('month')][1];
}
return { fromDate: FiyFromDate, toDate: FiyToDate };
}
getPFIY() {
var d = new Date();
var FiyFromDate, FiyToDate;
if (d.getMonth() + 1 >= 4) {
FiyFromDate = [moment().subtract(1, 'year').startOf('year').add(3, 'month').startOf('month'), moment().subtract(1, 'year').add(1, 'year').startOf('year').add(2, 'month').endOf('month')][0];
FiyToDate = [moment().subtract(1, 'year').startOf('year').add(3, 'month').startOf('month'), moment().subtract(1, 'year').add(1, 'year').startOf('year').add(2, 'month').endOf('month')][1];
}
else {
FiyFromDate = [moment().subtract(1, 'year').startOf('year').add(-1, 'year').add(3, 'month').startOf('month'), moment().subtract(1, 'year').add(1, 'year').startOf('year').add(-1, 'year').add(2, 'month').endOf('month')][0];
FiyToDate = [moment().subtract(1, 'year').startOf('year').add(-1, 'year').add(3, 'month').startOf('month'), moment().subtract(1, 'year').add(1, 'year').startOf('year').add(-1, 'year').add(2, 'month').endOf('month')][1];
}
return { fromDate: FiyFromDate, toDate: FiyToDate };
}
getFromDateAndToDateByDateRange(dateRange, isContainer, containterId, id) {
let dates;
switch (dateRange.toLowerCase()) {
case 'yesterday':
dates = this.getYesterday();
break;
case 'today':
dates = this.getToday();
break;
case 'last 7 days':
dates = this.getLast7days();
break;
case 'last 30 days':
dates = this.getLast30days();
break;
case 'this month':
dates = this.getThisMonth();
break;
case 'last month':
dates = this.getLastMonth();
break;
case 'this quarter':
dates = this.getThisQuarter();
break;
case 'last quarter':
dates = this.getLastQuarter();
break;
case 'ytd':
dates = this.getYTD();
break;
case 'last year':
dates = this.getLastYear();
break;
case 'fiy year':
dates = this.getFIY();
break;
case 'pfiy year':
dates = this.getPFIY();
break;
case 'custom range':
case 'null':
dates = { fromDate: '', toDate: '' };
if (!isContainer) {
let FromDate = $("#hfBizgaze_CompareFromDate").val();
let ToDate = $("#hfBizgaze_CompareToDate").val();
var format = "YYYY/MM/DD";
if (FromDate == "" && ToDate == "") {
FromDate = moment().startOf('year').format(format);
ToDate = moment().endOf('year').format(format);
}
dates.fromDate = moment.utc(FromDate, format);
dates.toDate = moment.utc(ToDate, format);
}
else {
let FromDate = $("#hfBizgaze_ReportFromDate" + containterId + '_' + id).val();
let ToDate = $("#hfBizgaze_ReportToDate" + containterId + '_' + id).val();
var format = "YYYY/MM/DD";
if (FromDate == "" && ToDate == "") {
FromDate = moment().startOf('year').format(format);
ToDate = moment().endOf('year').format(format);
}
dates.fromDate = moment.utc();
dates.toDate = moment.utc();
if (this.dateFilters.length != 0) {
var date = this.dateFilters.find(d => d.ParameterValue == id);
if (date != null) {
dates.fromDate = moment.utc(date.FromDate, format);
dates.toDate = moment.utc(date.ToDate, format);
}
}
else {
dates.fromDate = moment.utc(FromDate, format);
dates.toDate = moment.utc(ToDate, format);
}
}
break;
default:
if (isContainer) {
$("#hfBizgaze_FromDate" + containterId + '_' + id).val(moment().startOf('year').format(this.serverFormat));
$("#hfBizgaze_ToDate_" + containterId + '_' + id).val(moment().endOf('year').format(this.serverFormat));
var _datetimehelper = Unibase.Platform.Helpers.DateTimeHelper.Instance();
_datetimehelper.dateRangePicker('#report-daterange' + containterId + '-' + id, function (start, end) {
$("#hfBizgaze_FromDate" + containterId + '_' + id).val(start.format(this.serverFormat));
$("#hfBizgaze_ToDate_" + containterId + '_' + id).val(end.format(this.serverFormat));
$(".daterangepicker").css("top", "100px").css("right", "100px").css("display", "block");
});
$("#hfBizgaze_CompareFromDate").val(moment().startOf('year').format(this.serverFormat));
$("#hfBizgaze_CompareToDate").val(moment().endOf('year').format(this.serverFormat));
_datetimehelper.dateRangePicker('#compare-daterange', function (start, end) {
$("#hfBizgaze_CompareFromDate").val(start.format(this.serverFormat));
$("#hfBizgaze_CompareToDate").val(end.format(this.serverFormat));
});
}
break;
}
return dates;
}
static Instance() {
if (this.instance === undefined) {
this.instance = new FilterPanel();
}
return this.instance;
}
}
Components.FilterPanel = FilterPanel;
})(Components = Analytics.Components || (Analytics.Components = {}));
})(Analytics = Platform.Analytics || (Platform.Analytics = {}));
})(Platform = Unibase.Platform || (Unibase.Platform = {}));
})(Unibase || (Unibase = {}));
var Unibase;
(function (Unibase) {
let Platform;
(function (Platform) {
let Analytics;
(function (Analytics) {
let Infos;
(function (Infos) {
class ReportGroup {
}
Infos.ReportGroup = ReportGroup;
class ReportWithGroup {
}
Infos.ReportWithGroup = ReportWithGroup;
class Report {
}
Infos.Report = Report;
class ReportColumn {
}
Infos.ReportColumn = ReportColumn;
class ReportRole {
}
Infos.ReportRole = ReportRole;
class ViewerRole {
}
Infos.ViewerRole = ViewerRole;
class ReportRoleSetting {
}
Infos.ReportRoleSetting = ReportRoleSetting;
class TemplateView {
}
Infos.TemplateView = TemplateView;
class CalendarView {
}
Infos.CalendarView = CalendarView;
class MapView {
}
Infos.MapView = MapView;
class CardView {
}
Infos.CardView = CardView;
class ViewerType {
}
Infos.ViewerType = ViewerType;
class SubReport {
}
Infos.SubReport = SubReport;
class ReportCategory {
}
Infos.ReportCategory = ReportCategory;
})(Infos = Analytics.Infos || (Analytics.Infos = {}));
})(Analytics = Platform.Analytics || (Platform.Analytics = {}));
})(Platform = Unibase.Platform || (Unibase.Platform = {}));
})(Unibase || (Unibase = {}));
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var Unibase;
(function (Unibase) {
let Platform;
(function (Platform) {
let Analytics;
(function (Analytics) {
let Reports;
(function (Reports) {
class ReportBuilder extends Platform.Core.BaseComponent {
constructor() {
super(...arguments);
this.dateColumns = [];
this.selectedColumns = [];
this.ReportColumns = [];
this.ChartColumns = [];
this.datalistColumnsResponseData = [];
this.identityColumnsResponseData = [];
this.subreport_count = 1;
this.dynamicFilters = [];
this.reportname = null;
this.cardviewerpage = 2;
this.reportwidgetdata = null;
this.toolTipTemplateArray = [];
this.tableData = "";
this.last_page = 2;
this.whole_tableData = [];
this.loadTableData = 0;
this.tableData_Array = [];
this.isduplicate = false;
this.reportType = 1;
this.duplicateColIndex = [];
this.appliedFilter = 0;
this.filtersArray = [];
this.queryBuilderArray = [];
this.tabulatorColumns = [];
this.IsclickedSelect2Caret = false;
this.Categories = [];
this.groupBy_Category = [];
this.TenureReport = [];
this.reportViewer_scrolled = 0;
this.subreportdata = [];
this.columns_Data = [];
this.dataTreeRowExpandedColumn = [];
this.ViewerId = 0;
this.ViewerTypeId = Unibase.Platform.Analytics.Reports.Enums.ViewerType.Table;
this.QB_KeyUp = 0;
this.EditableTitle = true;
this.HeaderSort = false;
this.QueryBuilder_Columns = [];
this.DataListId = 0;
this.Aggregations = ["count", "sum", "avg", "max", "min", "Month", "Year", "none"];
this.DataSourceId = 0;
this.IsPivotTree = false;
this.Edit_BindData = false;
this.IsNotification = false;
this.SearchColumns = "";
this.selectedCategoryColumnsArray = [];
this.IsInternalReport = true;
this.appConfigType = 0;
this.parameterNumber = 1;
this.parameterArray = [];
this.isEdit = false;
this.selectedOption = 1;
this.index = 0;
this.roleSettings = [];
this.SortColumns = [];
this.querybuilderCheckboxes = [];
this.enableCount = false;
this.enableGlobalDatepicker = false;
this.reportGroupId = 0;
this.paletteId = 0;
this.isReportWidget = false;
this.reportWidgetType = '';
this.connectedAppsData = [];
this.linkReportId = 0;
this.viewAll = false;
this.lastContainerId = "";
this.enablePivotTableConfig = false;
this.pinDynamicFilters = false;
this.showDynamicFilters = false;
this.legendTypeId = 0;
this.isCharttoTable = false;
}
cssFiles() {
var cssfiles = ['platform/analytics/components/reportbuilder/style.reportbuilder.css'];
return cssfiles;
}
jsFiles() {
var jsfiles = ["platform/bundle/index.reportbuilder.js"];
return jsfiles;
}
html(id, containerid) {
var instance = this;
let html = `
`;
$(".biz-new-report").hide();
return html;
}
load(id, containerid, callback) {
Unibase.Platform.Helpers.FileCacheHelper.Instance().addCacheFiles(["platform/analytics/components/reportbuilder/reportfilter.js", "platform/analytics/requests/reportgroup.js", "platform/analytics/components/reportbuilder/reportgroup.js", "platform/analytics/components/reportbuilder/subreport.js", "platform/analytics/components/reportbuilder/columnformat.js", "platform/analytics/components/reportbuilder/reportrolesettings.js"]);
let instance = this;
instance.res = null;
this.reportManager = Analytics.Managers.ReportManager.Instance();
this._chartBuilder = Unibase.Platform.Analytics.Charts.ChartBuilder.Instance();
this._reportViewer = Analytics.Components.ReportViewer.Instance();
this._reportGroup = Reports.ReportGroup.Instance();
this._reportBuilderTemplate = Reports.ReportBuilder_Template.Instance();
this._columnFormat = Reports.ColumnFormat.Instance();
this._pivot = Reports.Pivot.Instance();
this.pivot = new PivotColumns();
Unibase.Platform.Analytics.Reports.SubReport.Instance().isReportDuplicate = false;
instance.dataTreeRowExpandedColumn = [];
let reportid = id;
instance.reportid = id;
instance.containerId = containerid;
$(".Datalist_Search").val("");
$("#" + containerid).find(".report-builder-body").height($(window).outerHeight() - 100);
$("#" + containerid).find("#tabulatorReportbuilder").addClass(containerid + "-table-canvas");
$("#" + containerid).find("#chart-container").addClass(containerid + "-chart-canvas");
$(".TableIcon").addClass("text-right").addClass("pull-right");
$('#saveAsModalBtn').click(function (e) {
return __awaiter(this, void 0, void 0, function* () {
$('#save_as_modal').fadeIn().css('background-color', 'rgba(0, 0, 0, 0.5)');
var isChecked = $("#internalreport_checkbox").prop('checked');
if (isChecked) {
let groupName = "InternalGroup";
instance.reportManager.getReportGroupByName(groupName).then(yield function (grpresponse) {
if (grpresponse.result != "") {
$("#RptGroup_AutoComplete").append("
InternalGroup ");
$('#RptGroup_AutoComplete').attr('disabled', 'true');
}
});
}
});
});
$('#save_as_modal .close').click(function (e) {
$('#save_as_modal').fadeOut().css('background-color', 'none');
});
$("#btn-reportbuilder-save").click(function () {
if ($("#RptGroup_AutoComplete option:selected").val() == "Select Group")
return MessageHelper.Instance().showError("Please select ReportGroup", 'divReport_ErrorMessage');
$("#modalDataListItems .datalist-items, #modalDataListColumns").find(".active").removeClass("active");
instance.saveReport(containerid, reportid);
});
instance._chartBuilder.loadTopIcons();
instance.loadTableToggleButtons();
instance.loadLeftNav();
instance.loadReportGroups();
instance.loadInstalledApps();
instance.loadConnectedApps();
instance.bindConnectedReportsSelect2("#connectedreports");
if (reportid > 0) {
instance.loadreportviewerdata(reportid);
}
else {
instance.linkReportId = 0;
instance.loadDataList_Modal();
instance.loadDataLists();
}
instance.table = instance.initTable(containerid);
if (callback !== null) {
callback();
instance.table.redraw(true);
}
$('#' + containerid).find("#btnRefresh").click(function () {
return __awaiter(this, void 0, void 0, function* () {
yield instance.load_data(instance.table);
});
});
$('#reportBuilderModal').on('hidden.bs.modal', function () {
$('#reportBuilderModal').remove();
});
$('.btn-reportbuilder-close').on('click', function () {
instance.closeReportBuilder(containerid, reportid);
});
$("#DataListColumnsDiv").addClass("hidden");
instance.loadAddedColumnFilter();
$("#filter-by").select2({ minimumResultsForSearch: -1 });
$('#filter-by').on('change', function (e) {
instance.loadSelectedDataListColumns();
});
$("#reportCreateFolder").click(function () {
instance.navigationHelper.popup(reportid, '', instance._reportGroup, null, Platform.Helpers.Size.Medium);
});
$("#notification_checkbox").click(function () {
instance.isNotificationCheck();
});
$("#internalreport_checkbox").click(function () {
return __awaiter(this, void 0, void 0, function* () {
if ($('#internalreport_checkbox').prop('checked') == false) {
instance.IsInternalReport = false;
$("#RptGroup_AutoComplete").append("
Select ");
$('#RptGroup_AutoComplete').removeAttr('disabled');
}
else {
instance.IsInternalReport = true;
let groupName = "InternalGroup";
instance.reportManager.getReportGroupByName(groupName).then(yield function (grpresponse) {
if (grpresponse.result != "") {
$("#RptGroup_AutoComplete").append("
InternalGroup ");
$('#RptGroup_AutoComplete').attr('disabled', 'true');
}
});
}
});
});
$("#count_checkbox").click(function () {
if ($('#count_checkbox').prop('checked') == false) {
instance.enableCount = false;
$('#count_checkbox').prop('checked', false);
}
else {
instance.enableCount = true;
$('#count_checkbox').prop('checked', true);
}
});
$("#enableglobaldatepicker_checkbox").click(function () {
if ($('#enableglobaldatepicker_checkbox').prop('checked') == false) {
instance.enableGlobalDatepicker = false;
$('#enableglobaldatepicker_checkbox').prop('checked', false);
}
else {
instance.enableGlobalDatepicker = true;
$('#enableglobaldatepicker_checkbox').prop('checked', true);
}
});
$('#btn-apply-query').on('click', function () {
var qelement = $("#builder");
var obj = qelement.queryBuilder('getRules');
!obj && (obj = []);
instance.queryBuilderJson = JSON.stringify(obj);
instance.load_data(instance.table);
$(".qry-builder-container").hide();
});
$(".alldatalistcolumns_dlg_close_btn").click(() => {
let selectedColumns = $("#allDatalistColumns").find(".selected");
if (selectedColumns.length) {
for (var i = 0; i < selectedColumns.length; i++)
$(selectedColumns[i]).removeClass("selected");
}
$(".DatalistColumns_Search").val("").trigger("keyup");
});
$("#divDatalistModal_ErrorMessage").empty();
$('.biz-reportbuilder-wrap').click(function () {
$('#tabulatorReportbuilder').find('.column-dp-menu.show').removeClass('show');
});
$("#showdatalistcolumns_checkbox").click((e) => {
instance.showDynamicFilters = e.currentTarget.checked;
instance._chartBuilder.loadDynamicFilterSelect(instance.showDynamicFilters);
});
$("#InstalledApp_AutoComplete").change(e => {
});
$('#DefaultLeftNav_body .reset-btn').click(e => {
e.preventDefault();
e.stopPropagation();
});
$("#RptGroup_AutoComplete").change(e => {
let groupId = Number(e.target.value);
instance.reportManager.getReportGroupById(groupId).then(res => {
if (res.status == Unibase.Data.Status.Success) {
instance.isInternalGroup = res.result.IsInternalGroup;
instance.updateInternalReportCb(res.result.IsInternalGroup, instance.isInternalGroup);
if (instance.isInternalGroup)
instance.IsInternalReport = true;
}
});
});
}
loadForm(FormId, Pk_Value, AppConfigurationId, Callback, ElementId) {
this.init(0, null);
}
init(reportid, callback) {
var instance = this;
instance.reportid = reportid;
instance.render(reportid, callback);
}
render(reportid, callback) {
var instance = this;
reportid = reportid;
this.navigationHelper.popup(reportid, '', instance, null, Platform.Helpers.Size.ExtraLarge);
}
loadReportForm(iscreate) {
var Pk_Value = 0;
if (!iscreate) {
Pk_Value = Unibase.Themes.Providers.DetailHelper.recordId;
}
this.init(Pk_Value, null);
}
initiateDataListSearch() {
$('.Datalist_Search,.DatalistColumns_Search').on('keyup', function () {
let ulClass = "";
if ($(this).hasClass('Datalist_Search')) {
ulClass = '.datalist-items';
}
else {
ulClass = '.columns-list';
}
$(ulClass + ' li').each(function () {
$(this).attr('data-search-term', $(this).text().replaceAll(" ", "_").toLowerCase());
});
let searchTerm = $(this).val().toString().toLowerCase();
searchTerm.includes(" ") && (searchTerm = searchTerm.replaceAll(" ", "_"));
if (searchTerm != "") {
let count = 0;
$(ulClass + ' li').each(function () {
if ($(this).filter('[data-search-term *= ' + searchTerm + ']').length > 0 || searchTerm.length < 1) {
$(this).show();
count++;
}
else {
$(this).hide();
}
});
if (!count)
return MessageHelper.Instance().showError("No results found", 'divDatalistModal_ErrorMessage');
else if ($("#divDatalistModal_ErrorMessage").children().length)
$("#divDatalistModal_ErrorMessage").empty();
}
else {
$(ulClass + ' li').each(function () {
$(this).show();
});
}
});
}
loadDataList_Modal() {
const instance = this;
let reportBuilder_DataListModalHtml = `
Create New Report
Choose datalist and columns to your report
`;
$("#_bizgaze_modal").append(reportBuilder_DataListModalHtml);
$('#reportBuilderModal').modal({
backdrop: 'static',
keyboard: true,
show: true
});
instance.initiateDataListSearch();
}
loadDataLists() {
var instance = this;
let dataListHtml = "";
instance.reportManager.getDataLists().then(function (response) {
dataListHtml += '
';
for (var i = 0; i < response.length; i++) {
let obj = response[i];
dataListHtml += `
${obj.DataListName.trim()}
`;
}
dataListHtml += ' ';
$('#modalDataListItems').append(dataListHtml);
if (!window.matchMedia('(max-width: 1200px)').matches) {
$("#modalDataListItems ul li a:first").addClass("active").trigger('click');
}
});
}
loadDataListColumns(datalistid, term, search, IsForm, DataSourceId) {
return __awaiter(this, void 0, void 0, function* () {
$('#modalDataListColumns').html("");
$("#reportBuilderModal").find(".DatalistColumns_Search").val("");
var instance = this;
instance.DataSourceId = DataSourceId;
if (datalistid != 0) {
var dataListColumnsHtml = "";
yield instance.reportManager.getDataListColumns(datalistid, term, null).then(function (response) {
if (response.status == Unibase.Data.Status.Success) {
if (response.result != "") {
var dc_res = JSON.parse(response.result);
instance.datalistColumnsResponseData = [];
if (dc_res.length > 0) {
dataListColumnsHtml += `
`;
for (var i = 0; i < dc_res.length; i++) {
let obj = dc_res[i];
let columnIcon = instance.getColumnIconByDataTypes(obj.DataTypeId);
let dobj = { ColumnId: obj.ColumnId, DataType: obj.DataTypeId, ColumnName: obj.AliasName, DisplayText: obj.AliasName, AliasName: obj.AliasName, DlColumnName: obj.ColumnName, Isvisible: false, StaticFilterControlType: obj.StaticFilterControlTypeId };
instance.datalistColumnsResponseData.push(dobj);
dataListColumnsHtml += `
${columnIcon}
${obj.AliasName}
`;
}
dataListColumnsHtml += ` `;
$('#modalDataListColumns').html(dataListColumnsHtml);
instance.QueryBuilder_Columns = instance.datalistColumnsResponseData;
}
else {
$('#modalDataListColumns').html("");
}
}
else {
return MessageHelper.Instance().showError("DataListColumns does'nt exist", "divDatalistModal_ErrorMessage");
}
}
else {
return MessageHelper.Instance().showError(response.message, "divDatalistModal_ErrorMessage");
}
});
}
});
}
_selectedColumns(selCol) {
var instance = this;
let colFormat;
if (selCol.DataType == Unibase.Platform.Analytics.Reports.Enums.DataType.dateTime && selCol.ColumnFormat)
colFormat = selCol.ColumnFormat;
else if (selCol.DataType == Unibase.Platform.Analytics.Reports.Enums.DataType.dateTime && !(selCol.ColumnFormat))
colFormat = "Default";
instance.selectedColumns.push({
ReportColumnId: (selCol.ReportColumnId) ? selCol.ReportColumnId : 0,
ColumnId: selCol.ColumnId,
ColumnName: selCol.ColumnName,
AliasName: selCol.AliasName && selCol.AliasName.toLowerCase(),
DataListColumnName: selCol.DataListColumnName,
DlColumnName: selCol.DlColumnName,
DisplayText: (selCol.DisplayText) ? selCol.DisplayText : selCol.AliasName,
DataType: selCol.DataType,
DataTypeString: selCol.DataTypeString,
GroupBy: (selCol.GroupBy) ? selCol.GroupBy : false,
Isvisible: (selCol.Isvisible) ? selCol.Isvisible : false,
Aggregation: !isNaN(selCol.Aggregation) ? selCol.Aggregation : Reports.Enums.AggregationType.none,
SortOrder: (selCol.SortOrder) ? selCol.SortOrder : "none",
SortIndex: (selCol.SortIndex) ? selCol.SortIndex : 0,
IsFilterable: false,
IsPrimaryKey: (selCol.IsPrimaryKey) ? selCol.IsPrimaryKey : false,
IsContactColumn: (selCol.IsContactColumn) ? selCol.IsContactColumn : false,
ColumnIndex: instance.selectedColumns.length,
IsDragged: (selCol.IsDragged) ? selCol.IsDragged : false,
GroupByCategory: (selCol.GroupByCategory) ? selCol.GroupByCategory : false,
ColumnFormat: (colFormat) ? colFormat : "",
DistinctOn: (selCol.DistinctOn) ? selCol.DistinctOn : false,
IsPivotColumn: selCol.IsPivotColumn,
IsPivotAggrColumn: selCol.IsPivotAggrColumn,
IsPivotTableCol: (selCol.IsPivotTableCol) ? selCol.IsPivotTableCol : false,
IsDownload: (selCol.IsDownload) ? selCol.IsDownload : false,
TableAggrTypeId: !isNaN(selCol.TableAggrTypeId) ? selCol.TableAggrTypeId : Reports.Enums.AggregationType.none,
IsNumFormatting: (selCol.IsNumFormatting) ? selCol.IsNumFormatting : false,
IsRowTotal: (selCol.IsRowTotal) ? selCol.IsRowTotal : false,
IsImageUrl: (selCol.IsImageUrl) ? selCol.IsImageUrl : false,
PivotTableAggrTypeId: (selCol.PivotTableAggrTypeId) ? selCol.PivotTableAggrTypeId : 0,
});
var Width = selCol.Width;
if (Width != undefined) {
let index = instance.getIndexByAliasName_selectedColumnsArray(selCol.AliasName);
if (index != -1)
instance.selectedColumns[index].Width = Width;
}
var ColumnName = selCol.ColumnName;
let EditableTitle = true;
let HeaderSort = false;
if (instance.reportType == Unibase.Platform.Analytics.Reports.Enums.ReportType.Chart) {
EditableTitle = false;
HeaderSort = true;
}
instance.table.addColumn({ title: selCol.AliasName && selCol.AliasName.toLowerCase(), field: ColumnName && ColumnName.toLowerCase(), editableTitle: EditableTitle, headerSort: HeaderSort }, true, "LastColumn");
instance.EditableTabulatorTitle();
}
loadReportColumns() {
var instance = this;
if ($('#modalDataListItems .nav-link.data-list-sel.active').length == 0)
return MessageHelper.Instance().showError("Please select Datalist", 'divDatalistModal_ErrorMessage');
if ($('#modalDataListColumns .columns-list li.selected').length == 0)
return MessageHelper.Instance().showError("Please select Columns", 'divDatalistModal_ErrorMessage');
instance.datalistColumnsResponseData = [];
instance.DataListId = parseInt($('#modalDataListItems ul li a.active').attr('data-list-id'));
const DataListName = $('#modalDataListItems ul li a.active').attr('data-list-name');
var asb = 0;
$('#datalist_name').val(DataListName);
$('#header_datalist_name').html(DataListName);
if (!isNaN(instance.DataListId)) {
$('#modalDataListColumns ul.multi-sel li span.dataListModalColumn').each(function () {
let _id = Number($(this).attr('data-column-id'));
let _datatype = Number($(this).attr('data-column-datatype'));
let _datatypeString = $(this).attr('data-column-datatype');
let _dlcolumnname = $(this).attr('data-column-dlcolumnname');
let _dlaliasname = $(this).text();
let obj = { ColumnId: _id, DataType: _datatype, DataTypeString: _datatypeString, ColumnName: _dlaliasname, DisplayText: _dlaliasname, AliasName: _dlaliasname, DlColumnName: _dlcolumnname, Isvisible: false };
instance.datalistColumnsResponseData.push(obj);
});
$('#modalDataListColumns ul.multi-sel li.selected span.dataListModalColumn').each(function () {
let _id = Number($(this).attr('data-column-id'));
let _datatype = Number($(this).attr('data-column-datatype'));
let _datatypeString = $(this).attr('data-column-datatype');
let _dlaliasname = $(this).text();
let _dlcolumnname = $(this).attr('data-column-dlcolumnname');
let obj = { ColumnId: _id, DataType: _datatype, DataTypeString: _datatypeString, ColumnName: _dlaliasname, AliasName: _dlaliasname, DlColumnName: _dlcolumnname, Isvisible: true, IsDownload: true };
instance._selectedColumns(obj);
});
instance.loadSelectedDataListColumns();
instance.loadAllDataListColumns();
instance._chartBuilder.select2DataBinding("");
$('#reportBuilderModal').modal('hide');
$('.Datalist_Search').val("");
$('.DatalistColumns_Search').val("");
instance.load_data(instance.table);
}
;
}
loadAllDataListColumns() {
var instance = this;
let allDatalistColumnsHtml = "";
allDatalistColumnsHtml += '
';
for (var i = 0; i < instance.datalistColumnsResponseData.length; i++) {
var obj = instance.datalistColumnsResponseData[i];
let columnIcon = instance.getColumnIconByDataTypes(obj.DataType);
allDatalistColumnsHtml += `
${columnIcon}
${obj.ColumnName}
`;
}
allDatalistColumnsHtml += ' ';
$('#allDatalistColumns').html(allDatalistColumnsHtml);
}
loadSelectedDataListColumns() {
let opt = Number($('#filter-by').val());
let check = '';
var hiddenColumnsHtml = '';
if (opt == Unibase.Platform.Analytics.Enums.FilterType.allcolumns) {
}
else if (opt == Unibase.Platform.Analytics.Enums.FilterType.contactcolumns) {
check = 'IsContactColumn';
}
else if (opt == Unibase.Platform.Analytics.Enums.FilterType.primarykeycolumns) {
check = 'IsPrimaryKey';
}
var instance = this;
let selectedColumnsHtml = "";
$.each(instance.selectedColumns, function (index, value) {
var { selectedColumnHtml, hiddenColumnHtml } = instance.getSelectedColumnHtml(value, index, check);
selectedColumnsHtml += selectedColumnHtml;
if (!check)
hiddenColumnsHtml += hiddenColumnHtml;
});
$('#selectedColumns').html(selectedColumnsHtml);
$('#selectedColumns_hidden').html(hiddenColumnsHtml);
instance.sortSelectedColums();
}
getColumnHtml(AliasName, ColumnName, ColumnId, dnoneClass, Isvisible, isColumnVisible, DataType, DisplayText, isHiddenColumn) {
var idValue = isHiddenColumn ? "_hidden" : "";
const draggerClass = isHiddenColumn ? 'pl-40' : 'las la-braille dragger';
return `
`;
}
getSelectedColumnHtml(value, index, check) {
var instance = this;
var selectedColumnHtml = '', hiddenColumnHtml = '';
let dnoneClass = 'd-none';
let isColumnVisible = "true";
if (!value.Isvisible) {
dnoneClass = '';
isColumnVisible = "false";
}
var colIndex = instance.getIndexByAliasName_selectedColumnsArray(value.AliasName);
instance.selectedColumns[colIndex].ColumnIndex = index;
if (check == '' && !value.IsPrimaryKey) {
selectedColumnHtml += instance.getColumnHtml(value.AliasName, value.ColumnName, value.ColumnId, dnoneClass, value.Isvisible, isColumnVisible, value.DataType, value.DisplayText);
}
else if (check == "IsPrimaryKey" && value.IsPrimaryKey) {
selectedColumnHtml += instance.getColumnHtml(value.AliasName, value.ColumnName, value.ColumnId, dnoneClass, value.Isvisible, isColumnVisible, value.DataType, value.ColumnName);
}
else if (check == '' && value.IsPrimaryKey) {
selectedColumnHtml += instance.getColumnHtml(value.AliasName, value.ColumnName, value.ColumnId, dnoneClass, value.Isvisible, isColumnVisible, value.DataType, value.AliasName);
}
else if (check == 'IsContactColumn' && value.IsContactColumn) {
selectedColumnHtml += `
`;
}
if (!value.Isvisible) {
hiddenColumnHtml += instance.getColumnHtml(value.AliasName, value.ColumnName, value.ColumnId, dnoneClass, true, isColumnVisible, value.DataType, value.DisplayText, true);
}
return {
selectedColumnHtml: selectedColumnHtml,
hiddenColumnHtml: hiddenColumnHtml
};
}
sortSelectedColums() {
var instance = this;
let list = $('#selectedColumns');
if (!list)
return;
list.sortable({
connectWith: "#selectedColumns",
cursor: 'move',
update: function (event, ui) {
instance.updateSelectedColumnIndex();
instance.load_data(instance.table);
}
});
}
appendExtraSelectedColumns() {
var instance = this;
let obj;
let newColumnsHtml = "";
if (instance.DataListId != 0) {
let show = false;
$('#allDatalistColumns ul.multi-sel li.selected span.datalist_column').each(function () {
let _id = Number($(this).attr('data-column-id'));
let _datatype = Number($(this).attr('data-column-datatype'));
let _datatypeString = $(this).attr('data-column-datatype');
let _name = $(this).text();
let _dlcolumnname = $(this).attr('data-column-dlcolumnname');
let opt = Number($('#filter-by').val());
if (opt == Unibase.Platform.Analytics.Enums.FilterType.primarykeycolumns && _datatype != Unibase.Platform.Analytics.Reports.Enums.DataType.int32 && _datatype != Unibase.Platform.Analytics.Reports.Enums.DataType.int64) {
return MessageHelper.Instance().showError("Please select integer data type column for selecting primary key", "div_ReportBuilderErrorMessage");
}
obj = { ColumnId: _id, DataType: _datatype, DataTypeString: _datatypeString, ColumnName: _name, AliasName: _name, DlColumnName: _dlcolumnname, Isvisible: true, IsDownload: true };
var column = instance.selectedColumns.find(x => x.AliasName == _name) ? true : false;
if (!column)
instance._selectedColumns(obj);
if (opt == Unibase.Platform.Analytics.Enums.FilterType.allcolumns) {
if (column) {
show = true;
return instance.error(_name);
}
newColumnsHtml += instance.addDataListColumns_ColumnsTab(obj.ColumnId, obj.ColumnName, obj.AliasName, obj.DataType, _name);
}
else if (opt == Unibase.Platform.Analytics.Enums.FilterType.contactcolumns) {
var contccol = instance.selectedColumns.find(x => x.AliasName == _name && x.IsContactColumn == true) ? true : false;
if (contccol) {
show = true;
return instance.error(_name);
}
newColumnsHtml += instance.addDataListColumns_ColumnsTab(obj.ColumnId, obj.ColumnName, obj.AliasName, obj.DataType, _name);
instance.IsContactColumn(_id, _name);
}
else if (opt == Unibase.Platform.Analytics.Enums.FilterType.primarykeycolumns) {
var pkcol = instance.selectedColumns.find(x => x.ColumnName == _name && x.IsPrimaryKey == true) ? true : false;
if (pkcol) {
show = true;
return MessageHelper.Instance().showError('Please remove existing pk_id column to add new primarykey column', 'div_ReportBuilderErrorMessage');
}
newColumnsHtml += instance.addDataListColumns_ColumnsTab(obj.ColumnId, obj.ColumnName, "pk_id", obj.DataType, _name);
obj["AliasName"] = "pk_id";
obj["IsPrimaryKey"] = true;
instance._selectedColumns(obj);
$("#txtAliasName_pk_id").val("pk_id");
}
});
$("#selectedColumns").append(newColumnsHtml);
instance.sortSelectedColums();
instance.loadAllDataListColumns();
instance._chartBuilder.select2DataBinding("");
instance._chartBuilder.loadSearchSelect2();
$(".DatalistColumns_Search").val("").trigger("keyup");
this._pivot.loadPivotSelect2s();
instance.load_data(instance.table);
if (!show)
$('#adj_drawer_1').hide();
}
;
}
addDataListColumns_ColumnsTab(ColumnId, ColumnName, AliasName, DataType, name) {
let newColumnsHtml = `
`;
return newColumnsHtml;
}
addDuplicateColumn(columnName) {
var instance = this;
let duplicateCol;
let index = 0;
if (instance.duplicateColIndex.length > 0) {
let col = instance.duplicateColIndex[columnName];
if (col) {
index = col.index + 1;
duplicateCol = columnName + "_" + index;
delete instance.duplicateColIndex[columnName];
instance.duplicateColIndex[columnName] = { ColName: columnName, AliasName: duplicateCol, index: index };
}
else {
duplicateCol = columnName + "_" + index;
instance.duplicateColIndex[columnName] = { ColName: columnName, AliasName: duplicateCol, index: index };
instance.duplicateColIndex.length = instance.duplicateColIndex.length + 1;
}
}
else {
duplicateCol = columnName + "_" + index;
instance.duplicateColIndex[columnName] = { ColName: columnName, AliasName: duplicateCol, index: index };
instance.duplicateColIndex.length = instance.duplicateColIndex.length + 1;
}
return duplicateCol;
}
pivotData() {
var instance = this;
let sel_Col = instance.selectedColumns;
instance.table.options.dataTree = true;
for (var i = 0; i < sel_Col.length; i++) {
if (instance.pivot.ColumnName == sel_Col[i].ColumnName) {
let Col = [];
let row = instance.pivot.PivotRows;
for (var r = 0; r < row.length; r++) {
Col.push({ title: row[r], field: row[r], visible: true, editableTitle: instance.EditableTitle, headerSort: instance.HeaderSort });
}
instance.tabulatorColumns = instance.tabulatorColumns.concat(Col);
}
else {
if (sel_Col[i].Width != undefined) {
instance.tabulatorColumns.push({ title: sel_Col[i].ColumnName, field: sel_Col[i].ColumnName, visible: sel_Col[i].Isvisible, editableTitle: instance.EditableTitle, headerSort: instance.HeaderSort, width: sel_Col[i].Width });
}
else {
if (instance.pivot.AggColumnName != sel_Col[i].ColumnName) {
instance.tabulatorColumns.push({ title: sel_Col[i].ColumnName, field: sel_Col[i].ColumnName, visible: sel_Col[i].Isvisible, editableTitle: instance.EditableTitle, headerSort: instance.HeaderSort });
}
}
}
}
}
findChildren(row, action) {
var instance = this;
if (action == "expand") {
row.treeExpand();
}
else {
row.treeCollapse();
}
;
var childRows = row.getTreeChildren();
if (childRows.length > 0) {
childRows.forEach(function (child) {
if (child.getTreeChildren().length > 0) {
instance.findChildren(child, action);
}
});
}
}
getDistinctData(colId, colName, AggrFuncId) {
return __awaiter(this, void 0, void 0, function* () {
var instance = this;
var cf_fromDate = btoa(Unibase.Platform.Helpers.NavigationHelper.commonFilter_FromDate);
var cf_toDate = btoa(Unibase.Platform.Helpers.NavigationHelper.commonFilter_ToDate);
yield Unibase.Platform.Analytics.Managers.ReportManager.Instance().getDistinctColumnData(instance.DataListId, colName, AggrFuncId, cf_fromDate, cf_toDate).then(function (response) {
if (response != "") {
instance.distinctColumnData = response;
let PivotRows = [];
instance.pivot.ColumnName = colName;
for (var i = 0; i < instance.distinctColumnData.length; i++) {
PivotRows.push(instance.distinctColumnData[i][colName]);
}
if ($("#PivotRows_Select2").is(":visible")) {
$("#PivotRows_Select2").select2({
placeholder: 'Select Pivot Rows',
data: PivotRows,
});
}
instance.pivot.PivotRows = PivotRows;
}
else {
instance.pivot.PivotRows = [];
}
});
});
}
timeIntervels(pivotCol) {
var instance = this;
var timeInterval = instance.TenureReport[pivotCol].TimeInterval.split(',');
var tenure = [];
for (var t = 0; t < timeInterval.length; t++) {
var start = 0;
if (t != timeInterval.length - 1) {
if (t == 0) {
start = Number(timeInterval[t]);
}
else {
start = Number(timeInterval[t]) + 1;
}
var end = timeInterval[t + 1];
tenure.push(start + "-" + end);
}
else {
tenure.push(">" + timeInterval[t]);
}
}
return tenure;
}
tenureData() {
var instance = this;
let sel_Col = instance.selectedColumns;
instance.tenureTimeIntervalCol = instance.pivot.ColumnName;
var tenure = instance.timeIntervels(instance.tenureTimeIntervalCol);
for (var i = 0; i < sel_Col.length; i++) {
if (instance.pivot.ColumnName == sel_Col[i].ColumnName) {
let Col = [];
for (var t = 0; t < tenure.length; t++) {
if (sel_Col[i].Width) {
Col.push({ title: tenure[t], field: tenure[t], visible: true, editableTitle: instance.EditableTitle, headerSort: instance.HeaderSort, width: sel_Col[i].Width });
}
else {
Col.push({ title: tenure[t], field: tenure[t], visible: true, editableTitle: instance.EditableTitle, headerSort: instance.HeaderSort });
}
}
instance.tabulatorColumns[sel_Col[i].ColumnIndex + 1] =
{
title: sel_Col[i].ColumnName,
columns: Col,
};
}
else {
if (instance.pivot.AggColumnName !== sel_Col[i].ColumnName) {
instance.tabulatorColumns[sel_Col[i].ColumnIndex + 1] =
{ title: sel_Col[i].AliasName, field: sel_Col[i].ColumnName, visible: sel_Col[i].Isvisible, editableTitle: instance.EditableTitle, headerSort: instance.HeaderSort, width: sel_Col[i].Width };
}
}
}
}
initTable(containerid) {
var instance = this;
var autoNumFormatter = function (cell) {
var row = cell.getRow();
var rowIndex = row.getPosition(false);
return (rowIndex + 1);
};
let serviceurl = "apis/v4/unibase/platform/analytics/tabledata";
serviceurl = _appsettings.server_url() + (serviceurl.startsWith('/') ? serviceurl : ('/' + serviceurl));
instance.table = new Tabulator("." + containerid + "-table-canvas", {
columns: [
{ title: "", formatter: autoNumFormatter, frozen: true, minWidth: 40, width: 40 },
{ title: "LastColumn", field: "LastColumn", visible: false, headerSort: false }
],
layout: "fitDataFill",
dataTree: true,
movableColumns: false,
dataTreeStartExpanded: instance._pivot.isDataTreeExpand,
dataTreeChildIndent: 15,
dataTreeRowExpanded: function (row, level) {
return __awaiter(this, void 0, void 0, function* () {
var array = [];
var _children = [];
if (instance.datatreeIndex_Width / 70 <= level) {
instance.datatreeIndex_Width = instance.datatreeIndex_Width + 70;
}
Unibase.Platform.Analytics.Reports.ReportBuilder.Instance().tabulatorColumns[0].width = instance.datatreeIndex_Width;
Unibase.Platform.Analytics.Reports.ReportBuilder.Instance().tabulatorColumns[0].minWidth = instance.datatreeIndex_Width;
if (instance.dataTreeRowExpandedColumn.length != 0) {
instance.table.setColumns(instance.tabulatorColumns);
instance.EditableTabulatorTitle();
$(".tabulator-frozen").css("width", instance.datatreeIndex_Width);
var Columns = instance.table.getColumns();
for (var c = 0; c < Columns.length; c++) {
var field = Columns[c].getField();
var width = Columns[c]["_column"].width;
$("#" + instance.containerId).find("[tabulator-field = '" + field + "']").css("width", width);
}
}
var parentcolName = instance.pivot.ParentColumnName;
var parentValue = row.getData()[parentcolName];
instance.dataTreeRowExpandedColumn = [];
instance.dataTreeRowExpandedColumn.push({ ColumnName: parentcolName, ColumnValue: parentValue, Level: level });
instance.pivot.ChildColumnValue = parentValue;
yield instance.load_data(instance.table);
setTimeout(function () {
instance.table.options.dataTree = true;
var tabledata = JSON.parse(instance.tableData);
var hasChild = tabledata.filter(x => x.haschild == true).forEach(c => c["_children"] = []);
row.getData()._children = tabledata;
return row.update(row.getData());
}, 1000);
});
},
rowClick: function (e, row) {
},
cellClick: function (e, cell) {
if ($(cell.getElement()).closest('.tabulator-footer').length === 0) {
var Interval = cell["_cell"].column.definition.title;
Unibase.Platform.Analytics.Reports.Tenure.Instance().tenureDetailsTable(Interval);
}
},
placeholder: "No data available",
columnResized: function (column) {
let col = column["_column"].field;
let width = column["_column"].width;
let index = instance.getIndexByAliasName_selectedColumnsArray(col);
instance.selectedColumns[index].Width = width;
},
scrollHorizontal: function () {
$('#tabulatorReportbuilder .tabulator-header').find('.column-dp-menu.show').removeClass('show');
},
dataLoading: function (data) {
if (data && data.length) {
instance.navigationHelper.showLoading();
}
},
dataLoaded: function () {
if (instance.tableData) {
instance.navigationHelper.hideLoading();
}
}
});
var height = $(".report-builder-body").height() - 40 + "px";
instance.table.setHeight(height);
$("#table-canvan").height(height);
return instance.table;
}
getReportData() {
var instance = this;
instance.ReportColumns = [];
if (instance.reportType == Unibase.Platform.Analytics.Reports.Enums.ReportType.Chart) {
instance._chartBuilder.pushPivotData();
}
if (instance.TenureReport.length != 0) {
instance.TenureReport;
}
var fromDate = "";
var toDate = "";
var cf_fromDate = Unibase.Platform.Helpers.NavigationHelper.commonFilter_FromDate;
var cf_toDate = Unibase.Platform.Helpers.NavigationHelper.commonFilter_ToDate;
if (cf_fromDate != null && cf_toDate != null) {
fromDate = cf_fromDate.toString();
toDate = cf_toDate.toString();
}
else {
fromDate = Unibase.Platform.Helpers.DateTimeHelper.Instance().formatLocalDateformat(new Date(Unibase.Platform.Helpers.DateTimeHelper.Instance().currentDate()), "YYYY/MM/DD");
toDate = Unibase.Platform.Helpers.DateTimeHelper.Instance().formatLocalDateformat(new Date(Unibase.Platform.Helpers.DateTimeHelper.Instance().currentDate()), "YYYY/MM/DD");
}
let repObj = new ReportObject();
repObj.DataListId = instance.DataListId;
repObj.StaticFilter = instance.queryBuilderJson;
repObj.SortColumns = instance.stringifyed_SortColumns;
repObj.Filter = null;
repObj.LinkSubReport = false;
repObj.PivotTypeId = instance._pivot.pivotTypeId;
repObj.IsPivotTree = instance.IsPivotTree;
repObj.TimeInterval = instance.Interval;
repObj.FromDate = fromDate;
repObj.ToDate = toDate;
repObj.IsTreeExpand = instance._pivot.isDataTreeExpand;
repObj.ReportTypeId = instance.reportType;
repObj.TopRecords = instance.topRecords;
if ($("#txt_totalrecords").val() != "") {
repObj.TopRecords = Number($("#txt_totalrecords").val());
}
if (instance.selectedColumns.length > 0) {
for (var i = 0; i < instance.selectedColumns.length; i++) {
var index = instance.selectedColumns.findIndex(x => x.ColumnIndex == i);
let col = new ReportColumn();
col.ColumnValue = Number(instance.selectedColumns[index]["ColumnId"]);
col.ReportColumnName = instance.selectedColumns[index]["ColumnName"];
col.AliasName = instance.selectedColumns[index]["AliasName"];
col.DisplayText = instance.selectedColumns[index]["DisplayText"];
col.DlColumnName = instance.selectedColumns[index]["DlColumnName"];
col.DataListColumnName = instance.selectedColumns[index]["DataListColumnName"];
col.ColumnIndex = instance.selectedColumns[index]["ColumnIndex"];
col.DataType = instance.selectedColumns[index]["DataType"];
col.AggrFuncId = instance.selectedColumns[index]["Aggregation"];
col.SortType = instance.selectedColumns[index]["SortOrder"];
col.SortIndex = instance.selectedColumns[index]["SortIndex"];
col.Isvisible = instance.selectedColumns[index]["Isvisible"];
col.GroupBy = instance.selectedColumns[index]["GroupBy"];
col.IsPrimaryKey = instance.selectedColumns[index]["IsPrimaryKey"];
col.PivotValueSelected = instance.pivot.PivotValue_Selected;
col.ColumnFormat = instance.selectedColumns[index]["ColumnFormat"];
col.YearComparisonType = instance.selectedColumns[index]["YearComparisonType"];
col.DistinctOn = instance.selectedColumns[index]["DistinctOn"];
col.IsPivotColumn = instance.selectedColumns[index]["IsPivotColumn"];
col.IsPivotAggrColumn = instance.selectedColumns[index]["IsPivotAggrColumn"];
col.IsPivotTableCol = instance.selectedColumns[index]["IsPivotTableCol"];
col.IsDownload = instance.selectedColumns[index]["IsDownload"];
col.TableAggrTypeId = instance.selectedColumns[index]["TableAggrTypeId"];
col.IsNumFormatting = instance.selectedColumns[index]["IsNumFormatting"];
col.IsRowTotal = instance.selectedColumns[index]["IsRowTotal"];
col.PivotTableAggrTypeId = instance.selectedColumns[index]["PivotTableAggrTypeId"];
if (col.ColumnFormat && col.ColumnFormat.toLowerCase() == "default") {
col.ColumnFormat = '';
}
instance.reportColumns_Array(col);
}
}
repObj.ReportColumns = instance.ReportColumns;
return repObj;
}
load_data(table) {
return __awaiter(this, void 0, void 0, function* () {
var instance = this;
var repObj = instance.getReportData();
yield instance.reportManager.getTableData(repObj).then(function (response) {
instance.navigationHelper.hideLoading();
if (response.status == Unibase.Data.Status.Success) {
if (response.result != "") {
var res = JSON.parse(response.result);
instance.tableData = res.Data;
if (instance.dataTreeRowExpandedColumn.length == 0) {
if (instance.tableData) {
instance.table.setData(instance.tableData);
}
instance.groupbyData();
if (instance.reportType == Unibase.Platform.Analytics.Reports.Enums.ReportType.Chart) {
if (instance.TenureReport.length == 0) {
if (res.Data != "") {
var data = JSON.parse(res.Data);
instance._chartBuilder.ChartData = data;
instance._chartBuilder.chart_dataSet();
}
}
}
}
else {
}
}
else {
MessageHelper.Instance().showError("No data found", "div_ReportBuilderErrorMessage");
return false;
}
}
else {
MessageHelper.Instance().showError(response.message, "div_ReportBuilderErrorMessage");
return false;
}
});
instance.loadTableData = 1;
});
}
groupbyData() {
var instance = this;
var groupBy_Category = [];
for (var i = 0; i < instance.selectedColumns.length; i++) {
var data = instance.selectedColumns[i];
if (data.GroupByCategory) {
if (jQuery.inArray(data.AliasName, groupBy_Category) == -1) {
groupBy_Category.push(data.AliasName);
}
}
}
if (instance.datatreeIndex_Width == undefined) {
instance.datatreeIndex_Width = 70;
}
var tableData = [];
if (instance.tableData != "") {
tableData = JSON.parse(instance.tableData);
}
else {
$(".tabulator-loader").remove();
}
let sel_Col = instance.selectedColumns;
var ScrollPosition = $(".tabulator-tableHolder").scrollTop();
var autoNumFormatter = function (cell) {
var row = cell.getRow();
var rowIndex = row.getPosition(false);
return (rowIndex + 1);
};
instance.tabulatorColumns = [];
if (sel_Col.length != 0) {
instance.tabulatorColumns.push({ title: "", formatter: autoNumFormatter, frozen: true, minWidth: 50, width: 60, hozAlign: 'right' });
let btmCal_noneArray = [];
let IsAggr = false;
var tableData;
if (instance._pivot.pivotTypeId == Unibase.Platform.Analytics.Reports.Enums.PivotType.Pivot) {
instance.pivotData();
}
else if (instance._pivot.pivotTypeId == Unibase.Platform.Analytics.Reports.Enums.PivotType.TimeInterval) {
instance.tenureData();
}
else if (instance._pivot.pivotTypeId == Unibase.Platform.Analytics.Reports.Enums.PivotType.PivotTreeView) {
instance.pivotData();
tableData.filter(x => x.haschild == true).forEach(c => c["_children"] = []);
}
else {
if (instance._pivot.pivotTypeId == Unibase.Platform.Analytics.Reports.Enums.PivotType.TreeView) {
tableData.filter(x => x.haschild == true).forEach(c => c["_children"] = []);
}
for (var i = 0; i < sel_Col.length; i++) {
let sCol = sel_Col[i];
let Aggr = sCol.TableAggrTypeId;
let AggrName = instance.getAggregationName(Aggr);
const colHozAlign = instance.getColHorizontalAlign(sCol);
if (instance.DataSourceId == 0 || instance.DataSourceId == Platform.DataSources.Enums.DataSource.Sql || instance.DataSourceId == Platform.DataSources.Enums.DataSource.MySql) {
instance.tabulatorColumns[sCol.ColumnIndex + 1] =
{ title: sCol.DisplayText, field: sCol.AliasName.toLowerCase(), visible: sCol.Isvisible, editableTitle: instance.EditableTitle, headerSort: instance.HeaderSort, bottomCalc: AggrName, bottomCalcParams: { precision: 2 }, hozAlign: colHozAlign };
}
else {
instance.tabulatorColumns[sCol.ColumnIndex + 1] =
{ title: sCol.AliasName, field: sCol.AliasName, visible: sCol.Isvisible, editableTitle: instance.EditableTitle, headerSort: instance.HeaderSort, bottomCalc: AggrName, bottomCalcParams: { precision: 2 }, hozAlign: colHozAlign };
}
if (sCol.Width == undefined) {
delete instance.tabulatorColumns[sCol.ColumnIndex + 1].width;
}
if (AggrName != "none") {
IsAggr = true;
}
else {
delete instance.tabulatorColumns[sCol.ColumnIndex + 1].bottomCalc;
btmCal_noneArray.push({ ColumnName: sCol.ColumnName });
}
}
}
instance.tabulatorColumns.push({ title: "LastColumn", field: "LastColumn", visible: false, headerSort: instance.HeaderSort });
instance.table.options.dataTree = false;
instance.table.setColumns(instance.tabulatorColumns);
if (instance.reportid != 0 && !instance.isCharttoTable) {
instance.getSubReports(instance.reportid);
}
if (instance.dataTreeRowExpandedColumn.length == 0) {
instance.table.options.dataTree = true;
instance.table.setData(tableData);
}
if (groupBy_Category.length == 0) {
instance.table.options.dataTree = false;
instance.table.setGroupBy("");
}
else {
instance.table.options.dataTree = false;
instance.table.setGroupBy(groupBy_Category);
}
for (i = 0; i < btmCal_noneArray.length; i++) {
$(".tabulator-calcs-holder").find("[tabulator-field='" + btmCal_noneArray[i].ColumnName + "']").text("");
}
if (IsAggr == false) {
$("#tabulatorReportbuilder .tabulator-footer").addClass("hidden");
}
else {
if (groupBy_Category.length == 0) {
$("#tabulatorReportbuilder .tabulator-footer").removeClass("hidden");
}
}
instance.EditableTabulatorTitle();
}
else {
instance.table.clearData();
}
$(".tabulator-tableHolder").scrollTop(ScrollPosition);
}
getColHorizontalAlign(col) {
let colHozAlign = '';
if (col.DataType == Reports.Enums.DataType.decimal || col.DataType == Reports.Enums.DataType.int32 || col.DataType == Reports.Enums.DataType.int64) {
colHozAlign = 'right';
}
else if (col.DataType == Reports.Enums.DataType.date || col.DataType == Reports.Enums.DataType.dateTime) {
colHozAlign = 'center';
}
else {
colHozAlign = 'left';
}
return colHozAlign;
}
getTreeViewData(reportresponse) {
var instance = this;
if (reportresponse.result.ReportJsonData.Result.Data != "") {
let parentrecords = [];
let reportjsondata = JSON.parse(reportresponse.result.ReportJsonData.Result.Data);
parentrecords = reportjsondata.filter(function (col) {
return col.parentid == reportresponse.result.ReportInfo.PivotValue;
});
if (parentrecords.length == 0) {
parentrecords = reportjsondata;
}
for (var p = 0; p < parentrecords.length; p++) {
let childrecords = _children(parentrecords[p].childid);
if (childrecords != undefined) {
parentrecords[p]["_children"] = [];
parentrecords[p]._children = childrecords;
}
}
function _children(childid) {
let childrecords = instance.gettreeChildRecords(reportjsondata, childid);
if (childrecords.length > 0) {
for (var c = 0; c < childrecords.length; c++) {
let subchilds = _children(childrecords[c].childid);
if (subchilds != undefined) {
childrecords[c]["_children"] = [];
childrecords[c]._children = subchilds;
}
}
return childrecords;
}
}
return parentrecords;
}
}
gettreeChildRecords(reportjsondata, childid) {
return reportjsondata.filter(function (col) {
return col.parentid == childid;
});
}
getSubReports(reportid) {
var instance = this;
instance.reportManager.getSubReports(reportid).then(function (response) {
if (response.status == Unibase.Data.Status.Success && response.result && response.result.length) {
var subreportdata = response.result;
instance.subreportdata = subreportdata;
if (subreportdata.length > 0) {
var subdata = subreportdata.find(s => s.RowClick == true);
if (subdata) {
var hideIcon = function (cell, formatterParams, onRendered) {
return "
";
};
instance.table.addColumn({ formatter: hideIcon, width: 5, title: "", headerSort: false }, true);
}
}
}
});
}
changeAliasName_table(columnId, aliasName) {
var instance = this;
let lowercase_ColumnName = aliasName;
if (instance.DataSourceId == 0 || instance.DataSourceId == Platform.DataSources.Enums.DataSource.Sql || instance.DataSourceId == Platform.DataSources.Enums.DataSource.MySql) {
lowercase_ColumnName = aliasName.toLowerCase();
}
let Index = instance.getIndexByAliasName_selectedColumnsArray(aliasName);
let colName = instance.selectedColumns[Index].ColumnName;
let _aliasText = $("#txtAliasName_" + aliasName).val();
let changed_aliasText = _aliasText.trim().toLocaleLowerCase();
let sortHtml = "";
if (changed_aliasText != "") {
if (Index > -1) {
if (changed_aliasText.toLocaleLowerCase() == "pk_id") {
$("#txtAliasName_" + aliasName).val(colName);
return MessageHelper.Instance().showError('Can not change pk_id as aliasname', 'div_ReportBuilderErrorMessage');
}
if (changed_aliasText.indexOf(' ') >= 0) {
$("#txtAliasName_" + aliasName).val(colName);
return MessageHelper.Instance().showError('Please Remove Spaces Form "' + changed_aliasText + '"', 'div_ReportBuilderErrorMessage');
}
var sCols = instance.selectedColumns.find(s => s.AliasName == changed_aliasText) ? true : false;
if (sCols) {
$("#txtAliasName_" + aliasName).val(colName);
return instance.error(changed_aliasText);
}
$("#selectedColumns").find("#column_" + colName + "_block").attr("id", "column_" + _aliasText + "_block");
$("#column_" + colName + "_block").find(".dsl-block-name").attr("data-report-aliasname", changed_aliasText);
$("#" + aliasName + "_EyeIcon").attr("id", changed_aliasText + "_EyeIcon");
$("#" + changed_aliasText + "_EyeIcon").attr("onclick", "Unibase.Platform.Analytics.Reports.ReportBuilder.Instance().showOrHideColumn_table(" + columnId + ",'" + changed_aliasText + "')");
$("#txtAliasName_" + aliasName).attr("onchange", "Unibase.Platform.Analytics.Reports.ReportBuilder.Instance().changeAliasName_table(" + columnId + ",'" + changed_aliasText + "')");
$("#txtAliasName_" + aliasName).attr("id", "txtAliasName_" + changed_aliasText);
instance.selectedColumns[Index].AliasName = changed_aliasText;
if (instance.SearchColumns) {
let searchColumns = instance.SearchColumns.split('|');
let srchIdx = searchColumns.indexOf(aliasName);
if (srchIdx != -1) {
searchColumns[srchIdx] = changed_aliasText;
instance.SearchColumns = searchColumns.join("|");
}
}
this._chartBuilder.loadSortColumnsSelect2();
this._chartBuilder.loadDynamicFilterSelect(this.showDynamicFilters);
this._chartBuilder.loadSearchSelect2();
let sortIdx = this.SortColumns.findIndex(x => x.DisplayText == aliasName);
let dyfilIdx = this.dynamicFilters.findIndex(x => x.IsFilterableColumn == aliasName);
if (sortIdx != -1)
this.SortColumns[sortIdx].DisplayText = changed_aliasText;
if (dyfilIdx != -1)
this.dynamicFilters[dyfilIdx].IsFilterableColumn = changed_aliasText;
for (var i = 0; i < this.SortColumns.length; i++) {
let selCol = this.selectedColumns.find(x => x.AliasName == this.SortColumns[i].DisplayText);
if (selCol)
sortHtml += this._reportBuilderTemplate.loadSortSelect2Column(selCol.ColumnId, selCol.AliasName, selCol.DataType);
}
$("#sort_selected_columns").html(sortHtml);
this.stringifyed_SortColumns = this.getSortColumnsStringify();
$("#dynamic-list-group-wrapper").empty();
for (var i = 0; i < this.dynamicFilters.length; i++) {
let currentFilter = this.dynamicFilters[i];
let dyfilterHtml = "";
let selCol = this.selectedColumns.find(x => x.AliasName == currentFilter.IsFilterableColumn);
if (selCol)
dyfilterHtml += this._reportBuilderTemplate.loadDynamicFilterColumn(selCol.ColumnId, selCol.AliasName, selCol.DataType);
$("#dynamic-list-group-wrapper").append(dyfilterHtml);
if (selCol && selCol.DataType == Unibase.Platform.Analytics.Reports.Enums.DataType.dateTime) {
$(".dynamic-filter-icon-" + parseInt(selCol.ColumnId)).addClass("hidden");
if (currentFilter.IsDefault)
$("#dynamicfilter-defaultdate_" + currentFilter.IsFilterableColumn).prop("checked", true);
else if (currentFilter.IsPartition)
$("#chk_ispartition_" + currentFilter.IsFilterableColumn).prop("checked", true);
}
}
instance.load_data(instance.table);
}
}
else {
$("[tabulator-field = '" + lowercase_ColumnName + "']").find(".tabulator-title-editor").val(colName);
}
}
changeDisplayText_table(columnId, aliasName) {
var instance = this;
let displayText = '';
let isPivotTable = false;
const containerEl = $('#tabulatorReportbuilder');
if (containerEl.find('.pvtUi').length !== 0) {
isPivotTable = true;
}
if (isPivotTable) {
displayText = containerEl.find(`#pvtDisplayTextInput_${aliasName}`).val().toString();
}
else {
displayText = $(`[tabulator-field='${aliasName}'] .tabulator-title-editor`).val().toString();
}
if (displayText) {
let sIndex = instance.getIndexByAliasName_selectedColumnsArray(aliasName);
if (sIndex > -1) {
instance.selectedColumns[sIndex].DisplayText = displayText;
if (isPivotTable) {
containerEl.find(`#pvtAxisLabel_${aliasName}`).contents().get(0).nodeValue = displayText;
}
else {
$(".tabulator-col-title").find("#DisplayText_" + aliasName).val(displayText);
$(".tabulator-col-title").find("#DisplayText_" + aliasName).focus();
}
$("#selectedColumns #column_" + aliasName + "_block").find(".dsl-block-name").text(displayText);
}
let xIdx = this._chartBuilder.xaxisColumns.findIndex(x => x.AliasName == aliasName);
if (xIdx > -1) {
this._chartBuilder.xaxisColumns[xIdx].DisplayText = displayText;
}
let yIdx = this._chartBuilder.yaxisColumns.findIndex(x => x.AliasName == aliasName);
if (yIdx > -1) {
this._chartBuilder.yaxisColumns[yIdx].DisplayText = displayText;
}
let cbcIdx = this._chartBuilder.chartBaseColumns.findIndex(x => x.AliasName == aliasName);
if (cbcIdx > -1) {
this._chartBuilder.chartBaseColumns[cbcIdx].DisplayText = displayText;
}
let cscIdx = this._chartBuilder.ChartSelectedColumns.findIndex(x => x.AliasName == aliasName);
if (cscIdx > -1) {
this._chartBuilder.ChartSelectedColumns[cscIdx].DisplayText = displayText;
}
}
}
showOrHideColumn_table(ColumnId, AliasName) {
var instance = this;
let Index = instance.getIndexByAliasName_selectedColumnsArray(AliasName);
let col = instance.selectedColumns[Index];
if (instance.selectedColumns[Index].Isvisible == true) {
instance.selectedColumns[Index].Isvisible = false;
var { hiddenColumnHtml } = instance.getSelectedColumnHtml(col, Index, '');
$("#selectedColumns_hidden").append(hiddenColumnHtml);
$('#column_' + AliasName + '_block').addClass("d-none").find('#ShowOrHideColumn').text("Show Column");
if (instance.selectedColumns[Index].DataType == Unibase.Platform.Analytics.Reports.Enums.DataType.dateTime)
instance.selectedColumns[Index].ColumnFormat = "";
}
else {
$('#' + AliasName + '_EyeIcon').addClass('d-none');
instance.selectedColumns[Index].Isvisible = true;
$('#column_' + AliasName + '_block').removeClass("d-none").find('#ShowOrHideColumn').text("Hide Column");
$('#column_' + AliasName + '_block_hidden').remove();
if (instance.selectedColumns[Index].DataType == Unibase.Platform.Analytics.Reports.Enums.DataType.dateTime)
instance.selectedColumns[Index].ColumnFormat = "Default";
}
instance.load_data(instance.table);
}
updateSelectedColumnIndex() {
const instance = this;
$('#selectedColumns .dsl-block').each(function (index, item) {
const itemName = $(item).attr('id').slice(7).replace('_block', '');
const colIndex = instance.selectedColumns.findIndex(x => x.AliasName == itemName);
if (colIndex > -1) {
instance.selectedColumns[colIndex].ColumnIndex = index;
}
});
}
isDistinct(columnId, aliasName) {
var instance = this;
let index = instance.getIndexByAliasName_selectedColumnsArray(aliasName);
if (index > -1) {
if ($("#isDistinct_" + columnId).prop("checked") == true) {
instance.selectedColumns[index].DistinctOn = true;
}
else {
instance.selectedColumns[index].DistinctOn = false;
}
}
}
changeSortBy_table(columnId, aliasName, sortType) {
var instance = this;
if (sortType == 'Asc') {
instance.table.setSort(aliasName, "asc");
$("#dsl_column_" + aliasName + " .sort-icon").removeClass('la-sort-down');
$("#dsl_column_" + aliasName + " .sort-icon").addClass('la-sort-up');
}
else {
instance.table.setSort(aliasName, "desc");
$("#dsl_column_" + aliasName + " .sort-icon").addClass('la-sort-down');
$("#dsl_column_" + aliasName + " .sort-icon").removeClass('la-sort-up');
}
let index = instance.getIndexByAliasName_selectedColumnsArray(aliasName);
instance.selectedColumns[index].SortOrder = sortType;
let sortcolindex = instance.getIndexByDisplayText_sortColumnsArray(aliasName);
if (instance.SortColumns.length != 0) {
instance.SortColumns[sortcolindex].SortOrder = sortType;
}
if (instance.stringifyed_SortColumns) {
let ss = JSON.parse(instance.stringifyed_SortColumns);
if (ss.length > 0) {
let sindex = ss.findIndex(s => s.Name == aliasName);
ss[sindex].Order = sortType;
}
instance.stringifyed_SortColumns = JSON.stringify(ss);
}
instance.load_data(instance.table);
if (instance.reportType == Unibase.Platform.Analytics.Reports.Enums.ReportType.Chart) {
var cindex = instance._chartBuilder.getIndexByDisplayText_ChartSelectedColumns(aliasName);
if (cindex > -1) {
instance._chartBuilder.ChartSelectedColumns[cindex].SortOrder = sortType;
instance._chartBuilder.ChartSelectedColumns[cindex].SortIndex = instance.SortColumns.length;
}
instance._chartBuilder.chartPreview(instance._chartBuilder.ChartTypeName, instance._chartBuilder.ChartTypeId);
}
}
changeAggregation_table(aliasName, aggrValue, type) {
var instance = this;
let Index = instance.getIndexByAliasName_selectedColumnsArray(aliasName);
if (type == 1 || instance.reportType == Reports.Enums.ReportType.Chart)
instance.selectedColumns[Index].Aggregation = aggrValue;
else
instance.selectedColumns[Index].TableAggrTypeId = aggrValue;
if (instance.reportType == Analytics.Reports.Enums.ReportType.Chart) {
let CIndex = instance.getIndexByAliasName_chartSelectedColumnsArray(aliasName);
if (CIndex > -1)
instance._chartBuilder.ChartSelectedColumns[CIndex].Aggregation = aggrValue;
if (aggrValue == Unibase.Platform.Analytics.Reports.Enums.AggregationType.month || aggrValue == Unibase.Platform.Analytics.Reports.Enums.AggregationType.year) {
let colName = instance.selectedColumns[CIndex].ColumnName;
let colId = instance.selectedColumns[CIndex].ColumnValue;
}
instance.load_data(instance.table);
instance._chartBuilder.chartPreview(instance._chartBuilder.ChartTypeName, instance._chartBuilder.ChartTypeId);
}
else {
instance.load_data(instance.table);
}
}
changeColumnFormat_table(DisplayText, ColumnFormat) {
let format;
if (ColumnFormat == "Default")
format = "Default";
if (ColumnFormat == "No Format")
format = "No Format";
else if (ColumnFormat == Unibase.Platform.Analytics.Enums.DateFormat.hhmmss)
format = "hh:mi:ss";
else if (ColumnFormat == Unibase.Platform.Analytics.Enums.DateFormat.hhmmssAM)
format = "hh:mi:ss AM";
else if (ColumnFormat == Unibase.Platform.Analytics.Enums.DateFormat.ddmmyyyyhhmmss)
format = "dd/mm/yyyy hh:mi:ss";
else if (ColumnFormat == Unibase.Platform.Analytics.Enums.DateFormat.ddmmyyyyhhmm)
format = "dd/mm/yyyy hh:mi";
else if (ColumnFormat == Unibase.Platform.Analytics.Enums.DateFormat.ddmmyyyyhhmmssAM)
format = "dd/mm/yyyy hh:mi:ss AM";
else if (ColumnFormat == Unibase.Platform.Analytics.Enums.DateFormat.momddyyyyhhmmssAM)
format = "Mon dd, yyyy hh:mi:ss AM";
else
format = ColumnFormat;
var instance = this;
let Index = instance.getIndexByAliasName_selectedColumnsArray(DisplayText);
instance.selectedColumns[Index].ColumnFormat = format;
instance.load_data(instance.table);
}
changeColumnIndex_table(DisplayText) {
var instance = this;
let Index = instance.getIndexByAliasName_selectedColumnsArray(DisplayText);
let selCols = instance.selectedColumns;
let ColIndex = 0;
for (var i = 0; i < selCols.length; i++) {
if (selCols[i].ColumnIndex > ColIndex) {
ColIndex = selCols[i].ColumnIndex;
}
}
if (selCols.length == 1) {
ColIndex = 0;
}
else {
ColIndex = ColIndex + 1;
}
instance.selectedColumns[Index].ColumnIndex = ColIndex;
}
IsContactColumn(columnId, aliasName) {
var instance = this;
let selected_Index = instance.getIndexByAliasName_selectedColumnsArray(aliasName);
let IsContactColumn = instance.selectedColumns[selected_Index].IsContactColumn;
instance.selectedColumns[selected_Index].IsContactColumn = !IsContactColumn;
}
IsFilterableColumn_table(columnId, aliasName, dataTypeId) {
var instance = this;
let selected_Index = instance.getIndexByAliasName_selectedColumnsArray(aliasName);
if (dataTypeId == Unibase.Platform.Analytics.Reports.Enums.DataType.dateTime) {
$("#DropDown_IsFilterable_" + aliasName).removeClass("hidden");
selected_Index > -1 && (instance.selectedColumns[selected_Index].IsFilterable = true);
}
if (selected_Index == -1) {
Unibase.Platform.Analytics.Reports.DynamicFilter.Instance().dataListColumnName = aliasName;
selected_Index = this.datalistColumnsResponseData.findIndex(x => { return x.AliasName == aliasName; });
}
Unibase.Platform.Analytics.Components.ReportViewer.Instance().navigationHelper.popup(selected_Index, "", Unibase.Platform.Analytics.Reports.DynamicFilter.Instance(), null, Platform.Helpers.Size.Auto);
}
loadFormats(DataType, ColId, DisplayText) {
var instance = this;
var html = "";
if (instance._columnFormat.loadFormats(DataType).length > 0) {
var formats = instance._columnFormat.loadFormats(DataType);
for (var i = 0; i < formats.length; i++) {
html += `
` + formats[i].format + ` `;
}
}
return html;
}
removeSelectedColumn_table(ColumnId, AliasName) {
var instance = this;
var isChartBaseColumn = false;
var cbcIndex = instance._chartBuilder.chartBaseColumns.findIndex(csc => csc.AliasName === AliasName);
let cscIdx = instance._chartBuilder.ChartSelectedColumns.findIndex(csc => csc.AliasName === AliasName);
var XIndex = instance._chartBuilder.xaxisColumns.findIndex(x => x.AliasName === AliasName);
var YIndex = instance._chartBuilder.yaxisColumns.findIndex(x => x.AliasName === AliasName);
var GIndex = instance._chartBuilder.groupColumns.findIndex(x => x.AliasName === AliasName);
var LCIndex = instance._chartBuilder.lineChartColumns.findIndex(csc => csc.AliasName === AliasName);
if (cbcIndex != -1) {
instance._chartBuilder.chartBaseColumns.splice(cbcIndex, 1);
isChartBaseColumn = true;
if (cscIdx != -1 && XIndex == -1 && YIndex == -1 && GIndex == -1 && LCIndex == -1) {
instance._chartBuilder.ChartSelectedColumns.splice(cscIdx, 1);
}
}
if (XIndex != -1 && !isChartBaseColumn) {
instance._chartBuilder.xaxisColumns.splice(XIndex, 1);
if (YIndex == -1 && GIndex == -1 && LCIndex == -1 && cbcIndex == -1 && cscIdx != -1)
instance._chartBuilder.ChartSelectedColumns.splice(cscIdx, 1);
}
if (YIndex != -1 && !isChartBaseColumn) {
instance._chartBuilder.yaxisColumns.splice(YIndex, 1);
if (XIndex == -1 && GIndex == -1 && LCIndex == -1 && cbcIndex == -1 && cscIdx != -1)
instance._chartBuilder.ChartSelectedColumns.splice(cscIdx, 1);
}
if (GIndex != -1 && !isChartBaseColumn) {
instance._chartBuilder.groupColumns.splice(GIndex, 1);
if (XIndex == -1 && YIndex == -1 && LCIndex == -1 && cbcIndex == -1 && cscIdx != -1)
instance._chartBuilder.ChartSelectedColumns.splice(cscIdx, 1);
}
if (LCIndex != -1 && !isChartBaseColumn) {
instance._chartBuilder.lineChartColumns.splice(LCIndex, 1);
if (XIndex == -1 && YIndex == -1 && GIndex == -1 && cbcIndex == -1 && cscIdx != -1)
instance._chartBuilder.ChartSelectedColumns.splice(cscIdx, 1);
}
if (LCIndex == -1 && GIndex == -1 && YIndex == -1 && XIndex == -1 && cbcIndex == -1 && cscIdx != -1) {
instance._chartBuilder.ChartSelectedColumns.splice(cscIdx, 1);
}
var SC_Index = instance.getIndexByAliasName_selectedColumnsArray(AliasName);
let isGroupByCategory = this.selectedColumns[SC_Index].GroupByCategory;
if (SC_Index != -1) {
let dyfil = this.dynamicFilters.find(x => x.IsFilterableColumn == AliasName);
let srtCol = this.SortColumns.find(x => x.DisplayText === AliasName);
if (dyfil)
return MessageHelper.Instance().showError("Please remove the dynamic filter associated with this column, before trying to remove the column", 'div_ReportBuilderErrorMessage');
if (instance.SearchColumns) {
let srchCol = instance.SearchColumns.split("|");
let srchIdx = srchCol.indexOf(AliasName);
if (srchIdx != -1)
return MessageHelper.Instance().showError(`${this.selectedColumns[SC_Index].AliasName} is used in search column, please remove from search columns and try again`, 'div_ReportBuilderErrorMessage');
}
if (srtCol && !isGroupByCategory && instance.reportType != Reports.Enums.ReportType.Chart)
return MessageHelper.Instance().showError(`${this.selectedColumns[SC_Index].AliasName} is used in sort column, please remove from sort column and try again`, 'div_ReportBuilderErrorMessage');
else if (instance.reportType == Reports.Enums.ReportType.Chart && srtCol)
return;
if (isGroupByCategory && event.target.closest("#categories_selected_columns")) {
this.selectedColumns[SC_Index].GroupByCategory = false;
$("#categories_selected_columns #dsl_column_" + AliasName).remove();
$("#sort_selected_columns #dsl_column_" + AliasName).remove();
this.removeAndUpdateStringfiedSortColumns(AliasName);
instance.load_data(instance.table);
return "";
}
}
if (!isChartBaseColumn) {
instance.selectedColumns.splice(SC_Index, 1);
instance.table.deleteColumn(AliasName);
instance.loadSelectedDataListColumns();
}
var GTableIndex = instance.groupBy_Category.findIndex(x => x.AliasName === AliasName);
if (GTableIndex != -1) {
instance.groupBy_Category.splice(GTableIndex, 1);
instance.setSelectOption('groupby_select');
instance.groupbyData();
}
instance.removeAndUpdateStringfiedSortColumns(AliasName);
instance._chartBuilder.enableOrDisableChartIcons();
var sindex = instance.SortColumns.findIndex(function (s) {
return AliasName == s.AliasName;
});
if (sindex > -1) {
instance.removeSelectedSortColumn_table(ColumnId, AliasName);
}
else {
instance.load_data(instance.table);
}
this._chartBuilder.loadSortColumnsSelect2();
this._chartBuilder.loadDynamicFilterSelect(instance.showDynamicFilters);
this._chartBuilder.loadSearchSelect2();
this._pivot.loadPivotSelect2s();
}
removeSelectedSortColumn_table(columnId, aliasName) {
var instance = this;
let sortIndex = instance.getIndexByAliasName_selectedColumnsArray(aliasName);
instance.selectedColumns[sortIndex].SortOrder = "none";
var index = instance.SortColumns.findIndex(function (s) {
return aliasName == s.DisplayText;
});
instance.SortColumns.splice(index, 1);
instance.stringifyed_SortColumns = "";
if (instance.SortColumns.length != 0) {
var _sort = [];
for (var i = 0; i < instance.SortColumns.length; i++) {
instance.SortColumns[i].SortIndex = i;
let s = instance.SortColumns[i];
_sort.push({ Name: s.DisplayText, Order: s.SortOrder });
}
instance.stringifyed_SortColumns = JSON.stringify(_sort);
}
instance.load_data(instance.table);
}
setSelectOption(selectId) {
$('#' + selectId).prop('selectedIndex', 0);
$('#' + selectId).select2({
allowClear: true
});
$('#select2-' + selectId + '-container .select2-selection__clear').hide();
}
loadInstalledApps() {
var url = _appsettings.server_url() + '/apis/v4/unibase/platform/apps/InstalledAppAutocomplete';
AutoCompleteHelper.getHelper().Create("#InstalledApp_AutoComplete", "#hfAutoComplete_InstalledApp", url, null);
AutoCompleteHelper.getHelper().Create("#dependecyapps", "#hfAutoCompleteId_dependency", url, null);
}
loadConnectedApps() {
Unibase.Platform.Apps.Managers.AppManager.Instance().getInstalledApps().then((res) => {
this.connectedAppsData = [];
for (var i = 0; i < res.result.length; i++) {
this.connectedAppsData.push({ id: res.result[i].InstalledAppId, text: res.result[i].AppTitle });
}
$("#connectedapps").select2({
placeholder: 'Select connected apps',
data: this.connectedAppsData,
});
});
}
loadAddedColumnFilter() {
let dataOptions = [
{ id: 1, text: "All added columns", selected: true },
{ id: 2, text: "Contact columns" },
{ id: 3, text: "PrimaryKey columns" }
];
$("#filter-by").select2({
placeholder: 'Filter By',
data: dataOptions
});
}
loadTableToggleButtons() {
var instance = this;
$("#PivotIcon").click(function () {
var DataListId = instance.DataListId;
$("#DatalistColumns_Search").val("");
instance._pivot.load(0, null, null);
});
}
reportRoleSetting() {
var instance = this;
instance.navigationHelper.popup(0, '', Unibase.Platform.Analytics.Reports.ReportRoleSettings.Instance(), null, Platform.Helpers.Size.Medium);
}
EditableTabulatorTitle() {
var instance = this;
if (instance.EditableTitle == true) {
let sel_Col = instance.selectedColumns;
var len = sel_Col.length;
for (var i = 0; i < len; i++) {
let colId = sel_Col[i].ColumnId;
let aliasName = sel_Col[i].AliasName.replace(" ", "");
let colName = sel_Col[i].ColumnName;
let DataType = sel_Col[i].DataType;
let html = "";
if (DataType == Unibase.Platform.Analytics.Reports.Enums.DataType.dateTime || Unibase.Platform.Analytics.Reports.Enums.DataType.decimal) {
html = `
`;
}
else {
html = `
`;
}
if ($('#tabulatorReportbuilder .pvtUi').length !== 0) {
const pivotTableEl = $('#tabulatorReportbuilder .pvtUi');
const columnEl = pivotTableEl.find(`.pvtAttr:contains(${aliasName.toLocaleLowerCase()})`);
columnEl.find('.column-dropdown').remove();
columnEl.append(html);
columnEl.find('.dropdown-menu.open-left-side').removeClass('open-left-side').addClass('open-right-side');
if (sel_Col[i].Isvisible == false) {
columnEl.find("#ShowOrHideColumn").text("Show Column");
columnEl.find("#DropDown_Eye_EyeSlash").removeClass("fa-eye-slash").addClass("fa-eye");
}
}
else {
const tabulatorEl = $('#tabulatorReportbuilder');
tabulatorEl.find("[tabulator-field='" + aliasName.toLocaleLowerCase() + "']").find(".tabulator-col-title").prepend(html);
tabulatorEl.find("[tabulator-field='" + aliasName.toLocaleLowerCase() + "']").find(".tabulator-col-title").html(html).append(`
`);
if (sel_Col[i].Isvisible == false) {
tabulatorEl.find("[tabulator-field='" + aliasName + "']").find("#ShowOrHideColumn").text("Show Column");
tabulatorEl.find("[tabulator-field='" + aliasName + "']").find("#DropDown_Eye_EyeSlash").removeClass("fa-eye-slash").addClass("fa-eye");
}
}
}
}
}
traverseRows(tbl, action) {
var instance = this;
var tblRows = tbl.getRows();
tblRows.forEach(function (row) {
if (row.getData()._children != undefined) {
instance.findChildren(row, action);
}
});
}
bindAggregations(aggregations, aggrval, aliasName, type, id) {
let html = "";
if (aggregations) {
for (var i = 0; i < aggregations.length; i++) {
let Aggregation = aggregations[i];
if (i == 0) {
aggrval = Aggregation.Value;
}
html += `
` + Aggregation.AggrType + ` `;
}
$('#' + id).find(".dropdown-menu").html(html);
$("#dsl_column_" + aliasName).find('#' + id).find(".dropdown-menu").html(html);
}
return aggrval;
}
tabulatorColumnMoreIcon_Click(elementId, aliasName, dataTypeId, event) {
if (event) {
event.stopPropagation();
}
var instance = this;
let html = "";
var Aggr, tableaggr = 0;
var Sortby = "none";
var ColumnFormat = "";
let isDistinct = false;
let displayText = "";
let isDownload = false;
var aggregations = instance.getAggregationsByDataType(dataTypeId);
Aggr = instance.bindAggregations(aggregations, Aggr, aliasName, 1, "dropdown_Aggregation_" + aliasName);
tableaggr = instance.bindAggregations(aggregations, Aggr, aliasName, 2, "dropdown_Table_Aggregation_" + aliasName);
if (dataTypeId == Unibase.Platform.Analytics.Reports.Enums.DataType.dateTime) {
var formathtml = "";
formathtml = instance.loadFormats(dataTypeId, elementId, aliasName);
$('#ColumnFormat_' + aliasName).find(".dropdown-menu").html(formathtml);
$("#dsl_column_" + aliasName).find('#ColumnFormat_' + aliasName).find(".dropdown-menu").html(formathtml);
}
else {
$('#ColumnFormat_' + aliasName).remove();
$("#dsl_column_" + aliasName).find('#ColumnFormat_' + aliasName).remove();
}
let Index = instance.getIndexByAliasName_selectedColumnsArray(aliasName);
let column = instance.selectedColumns[Index];
Aggr = column.Aggregation;
Sortby = column.SortOrder;
aliasName = column.AliasName;
ColumnFormat = column.ColumnFormat == "" ? "Default" : column.ColumnFormat;
isDistinct = column.DistinctOn;
isDownload = column.IsDownload;
displayText = column.DisplayText;
if (column.DataType == Reports.Enums.DataType.int32 || column.DataType == Reports.Enums.DataType.int64 || column.DataType == Reports.Enums.DataType.decimal) {
$(event.currentTarget).closest(".dropdown.column-dropdown").find(".isrowtotal").removeClass("hidden");
$(event.currentTarget).closest(".dropdown.column-dropdown").find(".isnumformatting").removeClass("hidden");
}
else if (column.DataType == Reports.Enums.DataType.string) {
$(event.currentTarget).closest(".dropdown.column-dropdown").find(".isimageurl").removeClass("hidden");
}
if (isDistinct)
$("#isDistinct_" + elementId).prop("checked", true);
else
$("#isDistinct_" + elementId).prop("checked", false);
if (isDownload)
$("#isDownload_" + elementId).prop("checked", true);
else
$("#isDownload_" + elementId).prop("checked", false);
if (column.IsNumFormatting)
$("#isNumFormatting_" + elementId).prop("checked", true);
else
$("#isNumFormatting_" + elementId).prop("checked", false);
if (column.IsImageUrl)
$("#isimageurl_" + elementId).prop("checked", true);
else
$("#isimageurl_" + elementId).prop("checked", false);
let grpby = $("#groupby_select").val();
if (jQuery.inArray(elementId.toString(), grpby) != -1) {
$('#dropdown_Aggregation_' + aliasName).find(".sub-dropdown-menu").removeClass("show-on-hover");
$('#dropdown_Aggregation_' + aliasName).find(".sub-dropdown-menu").find(".dropdown-item").css("cursor", "not-allowed");
}
else {
$('#dropdown_Aggregation_' + aliasName).find(".sub-dropdown-menu").addClass("show-on-hover");
$('#dropdown_Aggregation_' + aliasName).find(".sub-dropdown-menu").find(".dropdown-item").css("cursor", "pointer");
}
let IsFilterable = column.IsFilterable;
if (IsFilterable == true)
$("#DropDown_IsFilterable_" + aliasName).removeClass('hidden');
else
$("#DropDown_IsFilterable_" + aliasName).addClass('hidden');
let IsPrimaryKey = column.IsPrimaryKey;
if (IsPrimaryKey == true)
$("#DropDown_IsPrimaryKey_" + aliasName).removeClass('hidden');
else
$("#DropDown_IsPrimaryKey_" + aliasName).addClass('hidden');
let IsContactColumn = column.IsContactColumn;
if (IsContactColumn == true)
$("#DropDown_IsContactColumn_" + aliasName).removeClass('hidden');
else
$("#DropDown_IsContactColumn_" + aliasName).addClass('hidden');
let IsAggregation = column.Aggregation;
if (IsAggregation == Unibase.Platform.Analytics.Reports.Enums.AggregationType.none)
$("#dropdown_Aggregation_" + aliasName + "_Aggr_" + aliasName + "_" + IsAggregation).addClass("selected");
else
$("#dropdown_Aggregation_" + aliasName + "_Aggr_" + aliasName + "_" + IsAggregation).addClass("selected");
let tableAggrTypeId = column.TableAggrTypeId;
if (tableAggrTypeId == Unibase.Platform.Analytics.Reports.Enums.AggregationType.none)
$("#dropdown_Table_Aggregation_" + aliasName + "_Aggr_" + aliasName + "_" + tableAggrTypeId).addClass("selected");
else
$("#dropdown_Table_Aggregation_" + aliasName + "_Aggr_" + aliasName + "_" + tableAggrTypeId).addClass("selected");
let IsSortBy = column.SortOrder;
if (IsSortBy == "Asc") {
$("#SortOrder_" + elementId + "_Asc").addClass('selected');
$("#SortOrder_" + elementId + "_Desc").removeClass('selected');
}
else if (IsSortBy == "Desc") {
$("#SortOrder_" + elementId + "_Desc").addClass('selected');
$("#SortOrder_" + elementId + "_Asc").removeClass('selected');
}
else {
$("#SortOrder_" + elementId + "_Asc").addClass('selected');
}
let format = instance._columnFormat.loadFormats(dataTypeId).find(x => x.format == ColumnFormat);
if (format != undefined) {
$("#" + instance.containerId).find(".Format_" + aliasName + "_" + format.id).addClass("selected");
}
if ($('#tabulatorReportbuilder .pvtUi').length !== 0) {
$(`.column-dp-menu.show`).not(`.dropdown-menu_${elementId}`).removeClass('show');
$(`.column-dp-menu.dropdown-menu_${elementId}`).toggleClass('show');
return;
}
for (var i = 0; i == Unibase.Platform.Analytics.Reports.ReportBuilder.Instance().table.columnManager.columns.length; i++) {
if (Unibase.Platform.Analytics.Reports.ReportBuilder.Instance().table.columnManager.columns[i].definition.visible == true) {
$(".dropdown-menu_" + i).find(".dropdown-menu").removeClass("open-left-side");
$(".dropdown-menu_" + i).find(".dropdown-menu").addClass("open-right-side");
break;
}
}
$($(".table-wrap .tabulator-col:visible")[1]).find('ul.dropdown-menu .dropdown-menu').removeClass('open-left-side').addClass('open-right-side');
$($(".table-wrap .tabulator-col:visible")[2]).find('ul.dropdown-menu .dropdown-menu').removeClass('open-left-side').addClass('open-right-side');
if (event) {
instance.setColumnDpMenuPosition(event);
}
}
setColumnDpMenuPosition(event) {
event.stopPropagation();
const targetEl = $(event.currentTarget);
if (targetEl.siblings('.column-dp-menu').hasClass('show')) {
targetEl.siblings('.column-dp-menu').removeClass('show');
}
else {
$('#tabulatorReportbuilder .tabulator-header').find('.column-dp-menu.show').removeClass('show');
const elLeftPos = targetEl.offset().left - $('#tabulatorReportbuilder').offset().left;
const headerHeight = $('#tabulatorReportbuilder .tabulator-header').outerHeight(true);
targetEl.siblings('.column-dp-menu').css({ position: 'fixed', top: headerHeight, left: elLeftPos }).addClass('show').attr('onclick', 'event.stopPropagation();');
}
}
loadLeftNav() {
var instance = this;
let html = instance._reportBuilderTemplate.loadLeftNav();
$("#DefaultLeftNav_body").html(html);
}
loadSorting(elementId, displayText) {
var instance = this;
let Index = instance.getIndexByDisplayText_sortColumnsArray(displayText);
let IsSortBy = instance.SortColumns[Index].SortOrder;
if (IsSortBy == "Asc") {
$("#SortOrder_" + elementId + "_Asc").addClass('selected');
$("#SortOrder_" + elementId + "_Desc").removeClass('selected');
}
else if (IsSortBy == "Desc") {
$("#SortOrder_" + elementId + "_Desc").addClass('selected');
$("#SortOrder_" + elementId + "_Asc").removeClass('selected');
}
else {
$("#SortOrder_" + elementId + "_Asc").addClass('selected');
}
for (var i = 0; i < Unibase.Platform.Analytics.Reports.ReportBuilder.Instance().table.columnManager.columns.length; i++) {
if (Unibase.Platform.Analytics.Reports.ReportBuilder.Instance().table.columnManager.columns[i].definition.visible == true) {
$(".dropdown-menu_" + i).find(".dropdown-menu").removeClass("open-left-side");
$(".dropdown-menu_" + i).find(".dropdown-menu").addClass("open-right-side");
break;
}
}
}
clickedTableCaret(ElementId, DisplayText, DataType) {
var instance = this;
let html = "";
var Aggr = 0;
var Sortby = "none";
var ColumnFormat = "";
var Aggregation = instance.getAggregationsByDataType(DataType);
if (Aggregation) {
for (var i = 0; i < Aggregation.length; i++) {
if (i == 0) {
Aggr = Aggregation[i].Value;
}
html += `
` + Aggregation[i].AggrType + ` `;
}
}
$('#dropdown_Aggregation_' + DisplayText).find(".dropdown-menu").html(html);
$("#dsl_column_" + DisplayText).find('#dropdown_Aggregation_' + DisplayText).find(".dropdown-menu").html(html);
if (DataType == Unibase.Platform.Analytics.Reports.Enums.DataType.dateTime) {
var formathtml = "";
formathtml = instance.loadFormats(DataType, ElementId, DisplayText);
$('#ColumnFormat_' + DisplayText).find(".dropdown-menu").html(formathtml);
$("#dsl_column_" + DisplayText).find('#ColumnFormat_' + DisplayText).find(".dropdown-menu").html(formathtml);
}
else {
$('#ColumnFormat_' + DisplayText).remove();
$("#dsl_column_" + DisplayText).find('#ColumnFormat_' + DisplayText).remove();
}
let Index = instance.getIndexByAliasName_selectedColumnsArray(DisplayText);
Aggr = instance.selectedColumns[Index].Aggregation;
Sortby = instance.selectedColumns[Index].SortOrder;
DisplayText = instance.selectedColumns[Index].AliasName;
ColumnFormat = instance.selectedColumns[Index].ColumnFormat == "" ? "Default" : instance.selectedColumns[Index].ColumnFormat;
$("#DisplayText_" + DisplayText).val(DisplayText);
$("#DisplayText_" + DisplayText).focus();
let grpby = $("#groupby_select").val();
if (jQuery.inArray(ElementId.toString(), grpby) != -1) {
$('#dropdown_Aggregation_' + DisplayText).find(".sub-dropdown-menu").removeClass("show-on-hover");
$('#dropdown_Aggregation_' + DisplayText).find(".sub-dropdown-menu").find(".dropdown-item").css("cursor", "not-allowed");
}
else {
$('#dropdown_Aggregation_' + DisplayText).find(".sub-dropdown-menu").addClass("show-on-hover");
$('#dropdown_Aggregation_' + DisplayText).find(".sub-dropdown-menu").find(".dropdown-item").css("cursor", "pointer");
}
let IsFilterable = instance.selectedColumns[Index].IsFilterable;
if (IsFilterable == true)
$("#DropDown_IsFilterable_" + DisplayText).removeClass('hidden');
else
$("#DropDown_IsFilterable_" + DisplayText).addClass('hidden');
let IsPrimaryKey = instance.selectedColumns[Index].IsPrimaryKey;
if (IsPrimaryKey == true)
$("#DropDown_IsPrimaryKey_" + DisplayText).removeClass('hidden');
else
$("#DropDown_IsPrimaryKey_" + DisplayText).addClass('hidden');
let IsContactColumn = instance.selectedColumns[Index].IsContactColumn;
if (IsContactColumn == true)
$("#DropDown_IsContactColumn_" + DisplayText).removeClass('hidden');
else
$("#DropDown_IsContactColumn_" + DisplayText).addClass('hidden');
let IsAggregation = instance.selectedColumns[Index].Aggregation;
if (IsAggregation == Unibase.Platform.Analytics.Reports.Enums.AggregationType.none)
$("#Aggr_" + DisplayText + "_" + IsAggregation).addClass("selected");
else
$("#Aggr_" + DisplayText + "_" + IsAggregation).addClass("selected");
let IsSortBy = instance.selectedColumns[Index].SortOrder;
if (IsSortBy == "Asc") {
$("#SortOrder_" + ElementId + "_Asc").addClass('selected');
$("#SortOrder_" + ElementId + "_Desc").removeClass('selected');
}
else if (IsSortBy == "Desc") {
$("#SortOrder_" + ElementId + "_Desc").addClass('selected');
$("#SortOrder_" + ElementId + "_Asc").removeClass('selected');
}
else {
$("#SortOrder_" + ElementId + "_Asc").addClass('selected');
}
let format = instance._columnFormat.loadFormats(DataType).find(x => x.format == ColumnFormat);
if (format != undefined) {
$("#" + instance.containerId).find(".Format_" + DisplayText + "_" + format.id).addClass("selected");
}
for (i = 1; i <= Unibase.Platform.Analytics.Reports.ReportBuilder.Instance().table.columnManager.columns.length; i++) {
if (Unibase.Platform.Analytics.Reports.ReportBuilder.Instance().table.columnManager.columns[i].definition.visible == true) {
$(".dropdown-menu_" + i).find(".dropdown-menu").removeClass("open-left-side");
$(".dropdown-menu_" + i).find(".dropdown-menu").addClass("open-right-side");
break;
}
}
}
loadQueryBuilderDiv() {
var instance = this;
var fromDate = "";
var toDate = "";
var cf_fromDate = Unibase.Platform.Helpers.NavigationHelper.commonFilter_FromDate;
var cf_toDate = Unibase.Platform.Helpers.NavigationHelper.commonFilter_ToDate;
if (cf_fromDate != null && cf_toDate != null) {
fromDate = cf_fromDate.toString();
toDate = cf_toDate.toString();
}
else {
fromDate = Unibase.Platform.Helpers.DateTimeHelper.Instance().formatLocalDateformat(new Date(Unibase.Platform.Helpers.DateTimeHelper.Instance().currentDate()), "YYYY/MM/DD");
toDate = Unibase.Platform.Helpers.DateTimeHelper.Instance().formatLocalDateformat(new Date(Unibase.Platform.Helpers.DateTimeHelper.Instance().currentDate()), "YYYY/MM/DD");
}
if (instance.reportType == Unibase.Platform.Analytics.Reports.Enums.ReportType.Table) {
$("#Categories").removeClass("hidden");
}
else if (instance.reportType == Unibase.Platform.Analytics.Reports.Enums.ReportType.Chart) {
$("#Categories").addClass("hidden");
}
$("#QueryBuilder").html(`
`);
var DataListId = instance.DataListId;
$("#DatalistColumns_Search").val("");
let qelem;
qelem = $('#builder');
instance.filtersArray = [];
qelem.on("afterAddRule.queryBuilder", (event, group) => {
this.addCheckbox();
});
for (var i = 0; i < instance.QueryBuilder_Columns.length; i++) {
let element = instance.QueryBuilder_Columns[i];
let dataType = "";
let IsInput = false;
let serviceurl = "apis/v4/unibase/platform/analytics/reportcolumndata";
serviceurl = _appsettings.server_url() + (serviceurl.startsWith('/') ? serviceurl : ('/' + serviceurl));
let dataTypeid = element.DataType;
let plugin_config = {
placeholder: "Select Options",
width: "auto",
unique: true,
allowClear: true,
tags: true,
ajax: {
url: serviceurl,
contentType: 'application/json',
dataType: 'json',
type: "POST",
traditional: true,
crossDomain: true,
async: true,
beforeSend: function (xhr) {
if (Unibase.Platform.Membership.Infos.Identity.getCurrentUser() !== undefined && Unibase.Platform.Membership.Infos.Identity.getCurrentUser() !== null) {
xhr.setRequestHeader('Authorization', 'Basic ' + Unibase.Platform.Membership.Infos.Identity.getCurrentUser().sessionId);
xhr.setRequestHeader('geoposition', Unibase.Platform.Membership.Infos.Identity.getCurrentUser().latd + ':' + Unibase.Platform.Membership.Infos.Identity.getCurrentUser().lgId);
}
},
data: function (params) {
let name = this[0].name.substring(0, this[0].name.indexOf("_value_"));
searchName = params.term;
var Qb_Col = instance.QueryBuilder_Columns.find(q => q.ColumnId == element.ColumnId);
let repObj = new ReportObject();
repObj.DataListId = instance.DataListId;
let Aggr = Reports.Enums.AggregationType.none;
if (params.hasOwnProperty("term") == true) {
repObj.StaticFilter = "CAST(" + element.ColumnName + " AS text) " + " ILIKE('%" + params.term + "%')";
if (instance.DataSourceId == Number(Platform.DataSources.Enums.DataSource.MongoDB)) {
repObj.StaticFilter = "{" + element.ColumnName + ":" + params.term + "}";
if (Analytics.Reports.Enums.DataType[element.DataType] == "string") {
repObj.StaticFilter = "{" + element.ColumnName + ":{$regex:'" + params.term + "'" + "}}";
}
}
}
repObj.TopRecords = 5;
repObj.Distinct = true;
let col = new ReportColumn();
col.ColumnValue = element.ColumnId;
col.ReportColumnName = element.ColumnName;
col.AliasName = element.ColumnName;
col.DlColumnName = (Qb_Col) ? Qb_Col.DlColumnName : null;
col.AggrFuncId = Aggr;
repObj.ReportColumns = [];
repObj.ReportColumns.push(col);
repObj.FromDate = fromDate;
repObj.ToDate = toDate;
return JSON.stringify(repObj);
},
processResults: function (data) {
var col = [];
var defaultid;
var id = searchName;
var autoCompleteId = $(".select2-container--open").parent().parent()[1].id;
console.log(autoCompleteId);
var identity = $("#" + autoCompleteId + "_checkbox").prop("checked");
if (identity) {
var identityinfo = Unibase.Platform.Membership.Infos.Identity.currentUser;
var keys = Object.keys(identityinfo);
for (let i = 0; i < keys.length; i++) {
col.push({ id: "Identity_" + keys[i], text: "Identity_" + keys[i] });
}
var settings = identityinfo.settings;
if (settings && settings.length != 0) {
for (var s = 0; s < settings.length; s++) {
col.push({ id: "Identity_" + settings[s].settingName, text: "Identity_" + settings[s].settingName });
}
}
console.log(col);
}
else {
if (JSON.parse(data.result).Data != "") {
defaultid = {
id: 0,
text: '------'
};
col.push(defaultid);
for (let i = 0; i < JSON.parse(JSON.parse(data.result).Data).length; i++) {
let jsondata = JSON.parse(JSON.parse(data.result).Data);
var col_text = jsondata[i][element.ColumnName];
if (col_text != null) {
var ids = {
id: jsondata[i][element.ColumnName],
text: col_text.toString()
};
col.push(ids);
}
}
}
else {
if (searchName == "") {
defaultid = {
id: 0,
text: '------'
};
}
else {
defaultid = {
id: id,
text: searchName
};
}
col.push(defaultid);
}
}
return {
results: col
};
}
},
};
let Values = [];
let Input = 'select';
let Plugin = 'select2';
if (dataTypeid == Unibase.Platform.Analytics.Reports.Enums.DataType.string) {
dataType = "string";
}
else if (dataTypeid == Unibase.Platform.Analytics.Reports.Enums.DataType.int32 || dataTypeid == Unibase.Platform.Analytics.Reports.Enums.DataType.int64) {
dataType = "integer";
}
else if (dataTypeid == Unibase.Platform.Analytics.Reports.Enums.DataType.decimal) {
dataType = "double";
}
else if (dataTypeid == Unibase.Platform.Analytics.Reports.Enums.DataType.boolean) {
dataType = "string";
Values = ["true", "false"];
Input = 'radio';
Plugin = '';
}
else if (dataTypeid == Unibase.Platform.Analytics.Reports.Enums.DataType.date || dataTypeid == Unibase.Platform.Analytics.Reports.Enums.DataType.dateTime) {
dataType = 'date';
IsInput = true;
}
if (element.StaticFilterControlType == Unibase.Platform.Analytics.Reports.Enums.StaicFilterControlType.Text) {
IsInput = true;
Input = 'text';
}
let searchName = "";
let filter = {};
if (dataTypeid == Unibase.Platform.Analytics.Reports.Enums.DataType.date || dataTypeid == Unibase.Platform.Analytics.Reports.Enums.DataType.dateTime) {
filter = {
id: element.ColumnName,
label: element.ColumnName,
field: element.ColumnName,
type: dataType,
validation: {
format: 'YYYY/MM/DD'
},
plugin: 'datepicker',
plugin_config: {
format: 'yyyy/mm/dd',
todayBtn: 'linked',
todayHighlight: true,
autoclose: true
}
};
}
else {
filter = {
id: element.ColumnName,
label: element.ColumnName,
field: element.ColumnName,
type: dataType,
size: 30,
unique: true,
input: Input,
plugin: !IsInput && Plugin,
plugin_config: !IsInput && plugin_config,
values: Values
};
}
instance.filtersArray.push(filter);
}
qelem.queryBuilder({
filters: instance.filtersArray
});
if (instance.queryBuilderJson && instance.queryBuilderJson != "[]") {
let qeleme = $('#builder');
let qb_json = JSON.parse(instance.queryBuilderJson);
let qb_rules = instance.changeFieldnametoId(qb_json.rules);
qeleme.queryBuilder('setRules', qb_rules);
var ruledata = JSON.parse(instance.queryBuilderJson);
var jsonarray = JSON.stringify(ruledata);
jsonarray = jsonarray.replace(/[{}\[\]']/g, '');
jsonarray = jsonarray.split(',"');
var finalarray = [];
for (var arrayvalue of jsonarray) {
if (arrayvalue.includes('value') == true) {
var value = arrayvalue.split(':');
if (value[1].includes('"') == true) {
value[1] = value[1].replace(/"/g, '');
}
finalarray.push(value[1]);
}
}
for (let k = 0; k < finalarray.length; k++) {
var id = $('[id*=select2-builder_rule_' + k + ']').attr('id');
$('#' + id).html('');
$('#' + id).css('width', $('#' + id).width() + 150);
$('#' + id).html('
' + finalarray[k] + ' ');
if (finalarray[k] && finalarray[k].includes("Identity_")) {
let valueContainer = $('#' + id).closest(".rule-value-container").next();
valueContainer.children().first().removeClass("hidden");
valueContainer.find("input").prop("checked", true);
}
}
}
$('#btn-reset-query').on('click', function () {
instance.queryBuilderString = "";
instance.querybuilderCheckboxes = [];
instance.queryBuilderJson = "";
$(".qry-builder-container").hide();
instance.load_data(instance.table);
qelem.queryBuilder('reset');
instance.queryBuilderJson = "";
});
$('#builder').on('afterApplyRuleFlags.queryBuilder', function (e, rule) {
let selectValue = $("#" + rule.id).find(".rule-filter-container").children().first().val();
if (selectValue != -1 && selectValue) {
$("#" + rule.id).find(".rule-check-container").children().first().removeClass("hidden");
}
});
$('#builder-widgets').on('afterUpdateRuleValue.queryBuilder', function (e, rule) {
if (rule.filter.plugin === 'datepicker') {
rule.$el.find('.rule-value-container input').datepicker('update');
}
});
$('#builder').on('afterUpdateRuleOperator.queryBuilder', (e, rule) => {
if (rule.operator.type == "in")
rule.$el.find(".rule-value-container select").prop('multiple', true).attr('name', 'sub_type[]');
else
rule.$el.find(".rule-value-container select").prop('multiple', false).attr('name', 'sub_type');
});
}
addCheckbox() {
let instance = this;
let isChecked = '';
let checkboxId = $($('.rule-container')[$('.rule-container').length - 1]).attr('id') + '_checkbox';
console.log(instance.querybuilderCheckboxes);
for (let i = 0; i < instance.querybuilderCheckboxes.length; i++) {
if (checkboxId.replace('_checkbox', '') == instance.querybuilderCheckboxes[i]) {
isChecked = 'checked';
break;
}
}
$($('.rule-container')[$('.rule-container').length - 1]).append(`
`);
$('#' + checkboxId).change(function () {
var id = $(this).attr('id').replace('_checkbox', '');
$("#" + id).find(".rule-value-container select").empty();
if ($(this).is(':checked')) {
instance.querybuilderCheckboxes.push(id);
}
else {
for (let i = 0; i < instance.querybuilderCheckboxes.length; i++) {
let checkbox_id = instance.querybuilderCheckboxes[i];
if (checkbox_id == id) {
instance.querybuilderCheckboxes.splice(i, 1);
break;
}
}
}
});
}
changeFieldnametoId(rules) {
var instance = this;
for (var r = 0; r < rules.length; r++) {
let rule = rules[r];
if (rule.rules)
rule.rules = instance.changeFieldnametoId(rule.rules);
rules[r].id = rule.field;
}
return rules;
}
toggleQueryBuilderDiv() {
$(".report-builder-body").toggleClass("hidden");
$("#QueryBuilder").toggleClass("hidden");
}
reportTypeChange(id) {
var instance = this;
if (id == "fa fa-bar-chart-o") {
instance.reportType = Unibase.Platform.Analytics.Reports.Enums.ReportType.Chart;
instance._chartBuilder.loadChartIcons();
if (instance.TenureReport.length != 0 && instance.reportid == 0) {
Unibase.Platform.Analytics.Reports.Tenure.Instance().CheckedTenure();
instance._chartBuilder.tenureChart('myChart', instance.reportid);
}
else {
if (instance.reportid != 0) {
instance._chartBuilder.select2DataBinding("");
}
instance._chartBuilder.select2DataBinding("ReportTypeChanged");
}
$('.report-builder-body').find('#table-canvan').height($(window).outerHeight() - $('.report-builder-body').find('#chart-container').height() - $(".modal-footer").height() - 100);
}
else {
instance.reportType = Unibase.Platform.Analytics.Reports.Enums.ReportType.Table;
}
$(".ChartIcons").toggleClass("hidden");
$("#ChartIcon_Default").toggleClass("hidden");
if (instance.reportType == Unibase.Platform.Analytics.Reports.Enums.ReportType.Chart) {
instance._chartBuilder.IsChartBuilder = true;
instance.EditableTitle = false, instance.HeaderSort = true;
$(".divselect2_GroupBy").removeClass("hidden");
$(".TableIcon").addClass("hidden");
$("#datalabel_div").removeClass("hidden");
$("#chart-container").removeClass("hidden");
$('.report-builder-body').find('#table-canvan').height($(window).outerHeight() - $('.report-builder-body').find('#chart-container').height() - $(".modal-footer").height() - 105);
if ($("#DataListsDiv").hasClass("hidden") && instance.TenureReport.length == 0) {
$("#XAxis").removeClass("hidden");
$("#YAxis").removeClass("hidden");
var x_val = $('#xaxis_select').val().toString();
var y_val = $('#yaxis_select').val().toString();
if (x_val.length == 0) {
$('#xaxis_select').val('').trigger('change');
}
if (y_val.length == 0) {
$('#yaxis_select').val('').trigger('change');
}
}
$("#ChartCanvasDiv").removeClass("hidden");
if ($("#txt_totalrecords").val() == "") {
$("#txt_totalrecords").val("5");
}
if (instance._chartBuilder.legendTitleTypeId == Unibase.Platform.Analytics.Enums.LegendTitleType.Column) {
$("#lagendtypecolumn").prop("checked", true);
}
else {
$("#lagendtypedata").prop("checked", true);
}
$("#showtooltipheader_checkbox").prop("checked", instance._chartBuilder.isTooltipHeader);
$("#isdatalabel").prop("checked", instance._chartBuilder.isDataLabel);
$("#label_length").val(instance._chartBuilder.tickLabelLength);
if (instance._chartBuilder.chartBaseValue)
$("#dataset_base_value").val(instance._chartBuilder.chartBaseValue);
}
else {
instance.isCharttoTable = true;
if ($("#DataListsDiv").hasClass("hidden")) {
$("#Categories").removeClass("hidden");
}
instance.EditableTitle = true, instance.HeaderSort = false;
instance._chartBuilder.select2DataBinding("");
if (instance.selectedColumns.length > 0) {
instance.load_data(instance.table);
}
$(".TableIcon").removeClass("hidden");
$("#datalabel_div").addClass("hidden");
$("#ExpandIcon, #CollapseIcon").addClass("hidden");
$("#chart-container").addClass("hidden");
var height = $(".report-builder-body").height() - 35 + "px";
instance.table.setHeight(height);
$("#table-canvan").height(height);
$(".bl-nav-right").addClass("hidden");
$("#bl-nav-right-default").removeClass("hidden");
$("#XAxis").addClass("hidden");
$("#YAxis").addClass("hidden");
$("#ChartCanvasDiv").addClass("hidden");
}
}
getAggregationName(AggrFuncId) {
var AggrName = Unibase.Platform.Analytics.Reports.Enums.AggregationType[AggrFuncId];
return AggrName;
}
getAggregationsByDataTypes(DataType) {
var aggrType = Unibase.Platform.Analytics.Reports.Enums.AggregationType;
var items = {
"String": [{ "Value": aggrType.none, "AggrType": "none" },
{ "Value": aggrType.count, "AggrType": "count" }],
"DateTime": [{ "Value": aggrType.none, "AggrType": "none" },
{ "Value": aggrType.count, "AggrType": "count" },
{ "Value": aggrType.month, "AggrType": "month" },
{ "Value": aggrType.year, "AggrType": "year" }],
"Int64": [{ "Value": aggrType.none, "AggrType": "none" },
{ "Value": aggrType.count, "AggrType": "count" },
{ "Value": aggrType.sum, "AggrType": "sum" },
{ "Value": aggrType.avg, "AggrType": "avg" },
{ "Value": aggrType.max, "AggrType": "max" },
{ "Value": aggrType.min, "AggrType": "min" }],
"Int32": [{ "Value": aggrType.none, "AggrType": "none" },
{ "Value": aggrType.count, "AggrType": "count" },
{ "Value": aggrType.sum, "AggrType": "sum" },
{ "Value": aggrType.avg, "AggrType": "avg" },
{ "Value": aggrType.max, "AggrType": "max" },
{ "Value": aggrType.min, "AggrType": "min" }],
"Decimal": [{ "Value": aggrType.none, "AggrType": "none" },
{ "Value": aggrType.count, "AggrType": "count" },
{ "Value": aggrType.sum, "AggrType": "sum" },
{ "Value": aggrType.avg, "AggrType": "avg" },
{ "Value": aggrType.max, "AggrType": "max" },
{ "Value": aggrType.min, "AggrType": "min" }],
"Boolean": [{ "Value": aggrType.none, "AggrType": "none" },
{ "Value": aggrType.count, "AggrType": "count" }],
"none": [
{}
]
};
return items[DataType];
}
getAggregationsByDataType(DataType) {
var items = [];
var aggrType = Unibase.Platform.Analytics.Reports.Enums.AggregationType;
switch (DataType) {
case Unibase.Platform.Analytics.Reports.Enums.DataType.string:
items = [{ "Value": aggrType.none, "AggrType": "none" },
{ "Value": aggrType.count, "AggrType": "count" }];
break;
case Unibase.Platform.Analytics.Reports.Enums.DataType.dateTime:
items = [{ "Value": aggrType.none, "AggrType": "none" },
{ "Value": aggrType.count, "AggrType": "count" },
{ "Value": aggrType.month, "AggrType": "month" },
{ "Value": aggrType.year, "AggrType": "year" }];
break;
case Unibase.Platform.Analytics.Reports.Enums.DataType.int64:
items = [{ "Value": aggrType.none, "AggrType": "none" },
{ "Value": aggrType.count, "AggrType": "count" },
{ "Value": aggrType.sum, "AggrType": "sum" },
{ "Value": aggrType.avg, "AggrType": "avg" },
{ "Value": aggrType.max, "AggrType": "max" },
{ "Value": aggrType.min, "AggrType": "min" }];
break;
case Unibase.Platform.Analytics.Reports.Enums.DataType.int32:
items = [{ "Value": aggrType.none, "AggrType": "none" },
{ "Value": aggrType.count, "AggrType": "count" },
{ "Value": aggrType.sum, "AggrType": "sum" },
{ "Value": aggrType.avg, "AggrType": "avg" },
{ "Value": aggrType.max, "AggrType": "max" },
{ "Value": aggrType.min, "AggrType": "min" }];
break;
case Unibase.Platform.Analytics.Reports.Enums.DataType.decimal:
items = [{ "Value": aggrType.none, "AggrType": "none" },
{ "Value": aggrType.count, "AggrType": "count" },
{ "Value": aggrType.sum, "AggrType": "sum" },
{ "Value": aggrType.avg, "AggrType": "avg" },
{ "Value": aggrType.max, "AggrType": "max" },
{ "Value": aggrType.min, "AggrType": "min" }];
break;
case Unibase.Platform.Analytics.Reports.Enums.DataType.boolean:
items = [{ "Value": aggrType.none, "AggrType": "none" },
{ "Value": aggrType.count, "AggrType": "count" }];
break;
case Unibase.Platform.Analytics.Reports.Enums.DataType.none:
[{}];
break;
}
return items;
}
getColumnIconByDataTypes(DataTypeId) {
let icon = "";
switch (DataTypeId) {
case Unibase.Platform.Analytics.Reports.Enums.DataType.string:
icon = `
`;
break;
case Unibase.Platform.Analytics.Reports.Enums.DataType.int32:
case Unibase.Platform.Analytics.Reports.Enums.DataType.int64:
case Unibase.Platform.Analytics.Reports.Enums.DataType.decimal:
case Unibase.Platform.Analytics.Reports.Enums.DataType.boolean:
icon = `
`;
break;
case Unibase.Platform.Analytics.Reports.Enums.DataType.dateTime:
icon = `
`;
break;
}
return icon;
}
dataType(type) {
var DataType;
switch (type) {
case "String":
DataType = Unibase.Platform.Analytics.Reports.Enums.DataType.string;
break;
case "Int32":
DataType = Unibase.Platform.Analytics.Reports.Enums.DataType.int32;
break;
case "Int64":
DataType = Unibase.Platform.Analytics.Reports.Enums.DataType.int64;
break;
case "DateTime":
DataType = Unibase.Platform.Analytics.Reports.Enums.DataType.dateTime;
break;
case "Decimal":
DataType = Unibase.Platform.Analytics.Reports.Enums.DataType.decimal;
break;
case "Boolean":
DataType = Unibase.Platform.Analytics.Reports.Enums.DataType.boolean;
break;
}
return DataType;
}
_sortColumns() {
var instance = this;
let list = $('#sort_selected_columns');
if (!list)
return;
let itemName;
let endIndex;
list.sortable({
connectWith: "#sort_selected_columns",
cursor: 'move',
update: function (event, ui) {
$.each($('#sort_selected_columns .dsl-block'), function (index, item) {
let itemName = $(item).attr('id').slice(11);
let sindex = instance.SortColumns.findIndex(x => x.AliasName == itemName);
if (sindex > -1) {
instance.SortColumns[sindex].SortIndex = index;
}
let scolindex = instance.selectedColumns.findIndex(x => x.ColumnName == itemName);
if (scolindex > -1) {
instance.selectedColumns[scolindex].SortIndex = index;
}
});
instance.load_data(instance.reportid);
}
});
}
getIndexByColumnName_selectedColumnsArray(ColumnName) {
var instance = this;
return instance.selectedColumns.findIndex(x => x.ColumnName == ColumnName);
}
getIndexByAliasName_selectedColumnsArray(AliasName) {
var instance = this;
return instance.selectedColumns.findIndex(x => x.AliasName == AliasName);
}
getIndexByDisplayTextAndColumnName_selectedColumnsArray(AliasName, ColumnName) {
var instance = this;
return instance.selectedColumns.findIndex(x => x.AliasName == AliasName && x.ColumnName == ColumnName);
}
getColumnId_ByColumnName_datalistColumnsArray(ColumnName) {
var instance = this;
let Col = instance.datalistColumnsResponseData.find(x => x.ColumnName == ColumnName);
return Col.ColumnId;
}
getDlColumn_ByColumnId_datalistColumnsArray(ColumnId) {
var instance = this;
let Col = instance.datalistColumnsResponseData.find(x => x.ColumnId == ColumnId);
return Col.DlColumnName;
}
getIndexByDisplayText_sortColumnsArray(DisplayText) {
var instance = this;
return instance.SortColumns.findIndex(x => x.DisplayText == DisplayText);
}
getIndexByAliasName_DatalistColumnsArray(AliasName) {
return this.datalistColumnsResponseData.findIndex(x => x.AliasName == AliasName);
}
getIndexByAliasName_chartSelectedColumnsArray(AliasName) {
var instance = this;
return instance._chartBuilder.ChartSelectedColumns.findIndex(x => x.AliasName == AliasName);
}
loadReportGroups() {
var url = _appsettings.server_url() + '/apis/v4/unibase/platform/analytics/reportgroups_autocomplete';
AutoCompleteHelper.getHelper().Create("#RptGroup_AutoComplete", "#hfAutoComplete_ReportGroup", url, null);
}
getAvailableReportGroups(reportGroupsResponseData) {
var instance = this;
let html = "";
for (let i = 0; i < reportGroupsResponseData.length; i++) {
var template = instance._reportBuilderTemplate.loadDataListsTemplate();
var templateScript = Handlebars.compile(template);
var context = { "SelectText": reportGroupsResponseData[i].GroupName, "Value": reportGroupsResponseData[i].ReportGroupId };
html += templateScript(context);
}
if (reportGroupsResponseData.length == 0) {
var template = instance._reportBuilderTemplate.loadDataListsTemplate();
var templateScript = Handlebars.compile(template);
}
$("#RptGroup_AutoComplete").append(html);
}
reportColumns_Array(repCol) {
var instance = this;
let col = new ReportColumn();
col.ReportColumnId = instance.isduplicate == true ? 0 : repCol.ReportColumnId;
col.ColumnValue = (repCol.ColumnValue) ? repCol.ColumnValue : 0;
col.ReportColumnName = repCol.ReportColumnName;
col.DataListColumnName = repCol.DataListColumnName;
col.DlColumnName = repCol.DlColumnName;
col.DisplayText = (repCol.DisplayText) ? repCol.DisplayText : repCol.AliasName;
col.AliasName = (repCol.AliasName) ? repCol.AliasName : col.DisplayText;
col.DataType = (repCol.DataType) ? repCol.DataType : 0;
col.Isvisible = (repCol.Isvisible) ? repCol.Isvisible : false;
col.AggrFuncId = !isNaN(repCol.AggrFuncId) ? repCol.AggrFuncId : Reports.Enums.AggregationType.none,
col.SortType = (repCol.SortType) ? repCol.SortType : "none";
col.SortIndex = (repCol.SortIndex) ? repCol.SortIndex : 0;
col.GroupBy = (repCol.GroupBy) ? repCol.GroupBy : false;
col.IsPivotAggrColumn = (repCol.IsPivotAggrColumn) ? repCol.IsPivotAggrColumn : false;
col.IsPivotColumn = (repCol.IsPivotColumn) ? repCol.IsPivotColumn : false;
col.IsPivotRow = (repCol.IsPivotRow) ? repCol.IsPivotRow : false;
col.IsPivotRowSelected = (repCol.IsPivotRowSelected) ? repCol.IsPivotRowSelected : false;
col.IsPivotParentColumn = (repCol.IsPivotParentColumn) ? repCol.IsPivotParentColumn : false;
col.IsPivotChildColumn = (repCol.IsPivotChildColumn) ? repCol.IsPivotChildColumn : false;
col.PivotValue = 0;
col.PivotValueSelected = (instance.pivot && instance.pivot.PivotValue_Selected) ? repCol.PivotValueSelected : 0;
col.IsPivotRowSelected = (repCol.IsPivotRowSelected) ? repCol.IsPivotRowSelected : false;
col.PivotDateType = isNaN(repCol.PivotDateType) ? 0 : Number(repCol.PivotDateType);
col.TimeInterval = (repCol.TimeInterval) ? repCol.TimeInterval : "";
col.ColumnFormat = (repCol.ColumnFormat == "No Format" || !(repCol.ColumnFormat)) ? "" : repCol.ColumnFormat;
col.YearComparisonType = (repCol.YearComparisonType) ? repCol.YearComparisonType : 0;
col.WidthUnit = "px";
col.RoleId = "0";
col.IsFilterable = false;
col.IsPrimaryKey = (repCol.IsPrimaryKey) ? repCol.IsPrimaryKey : false;
col.IsContactColumn = (repCol.IsContactColumn) ? repCol.IsContactColumn : false;
col.GroupByCategory = (repCol.GroupByCategory) ? repCol.GroupByCategory : false;
col.IsTenureApplied = (repCol.IsTenureApplied) ? repCol.IsTenureApplied : false;
col.Width = (repCol.Width) ? repCol.Width : 0;
col.ColumnIndex = (repCol.ColumnIndex) ? repCol.ColumnIndex : 0;
col.DistinctOn = (repCol.DistinctOn) ? repCol.DistinctOn : false;
col.IsPivotTableCol = (repCol.IsPivotTableCol) ? repCol.IsPivotTableCol : false;
col.IsDownload = (repCol.IsDownload) ? repCol.IsDownload : false;
col.TableAggrTypeId = !isNaN(repCol.TableAggrTypeId) ? repCol.TableAggrTypeId : Reports.Enums.AggregationType.none;
col.IsNumFormatting = (repCol.IsNumFormatting) ? repCol.IsNumFormatting : false;
col.IsRowTotal = (repCol.IsRowTotal) ? repCol.IsRowTotal : false;
col.IsImageUrl = (repCol.IsImageUrl) ? repCol.IsImageUrl : false;
col.PivotTableAggrTypeId = (repCol.PivotTableAggrTypeId) ? repCol.PivotTableAggrTypeId : 0;
let PivotDateType = instance.pivot && instance.pivot.DateType ? instance.pivot.DateType : 0;
if (instance.pivot && instance.pivot.AggColumnName != "") {
if (instance.pivot.AggColumnName == col.ReportColumnName) {
col.AggrFuncId = Number(instance.pivot.AggFuncId);
col.IsPivotAggrColumn = true;
}
if (instance.pivot.ColumnName == col.ReportColumnName) {
col.IsPivotColumn = true;
var Tenure = instance.TenureReport[instance.pivot.ColumnName];
col.TimeInterval = Tenure != undefined ? Tenure.TimeInterval : "";
col.PivotDateType = Number(PivotDateType);
}
if (instance.pivot.ChildColumnName != "") {
if (instance.pivot.ChildColumnName == col.ReportColumnName) {
col.IsPivotChildColumn = true;
if (repCol.PivotValue == undefined) {
col.PivotValue = Number(instance.pivot.ChildColumnValue);
}
else {
col.PivotValue = Number(instance.pivot.PivotValue_Selected);
}
instance.IsPivotTree = true;
}
if (instance.pivot.ParentColumnName == col.ReportColumnName) {
col.IsPivotParentColumn = true;
}
}
}
if (repCol.TimeInterval != "") {
}
instance.ReportColumns.push(col);
}
groupByAggregation() {
var instance = this;
var isGrp = instance.selectedColumns.find(g => g.GroupBy == true);
if (isGrp) {
for (var i = 0; i < instance.selectedColumns.length; i++) {
var scol = instance.selectedColumns[i];
if (!scol.GroupBy && scol.Aggregation == Unibase.Platform.Analytics.Reports.Enums.AggregationType.none) {
let Index = instance.getIndexByColumnName_selectedColumnsArray(scol.AliasName);
var Col = instance.selectedColumns[Index];
Col.Aggregation = Unibase.Platform.Analytics.Reports.Enums.AggregationType.count;
}
}
}
}
saveReport(containerid, reportid) {
var instance = this;
this.navigationHelper.showLoading();
let rptGroupId = Number($("#RptGroup_AutoComplete").val());
if (rptGroupId == 0)
return MessageHelper.Instance().showError("Please select ReportGroup", 'divReport_ErrorMessage');
instance.ReportColumns = [];
var grpby = instance.selectedColumns.filter(x => x.GroupBy == true);
var agg = [];
var SortArry = [];
if (grpby.length > 0) {
agg = instance.selectedColumns.filter(x => x.Aggregation == Reports.Enums.AggregationType.none).filter(x => x.GroupBy == false);
}
if (agg.length > 0 && instance.reportType == Unibase.Platform.Analytics.Reports.Enums.ReportType.Table) {
var cols = "";
if (agg.length == 1) {
cols = " Column \"";
}
else {
cols = " Columns \"";
}
for (var a = 0; a < agg.length; a++) {
cols += " " + agg[a].ColumnName + ",";
}
cols = cols.substring(0, cols.length - 1) + " ";
alert("SAVE FAILED: " + cols + "\" must be added in groupby or need to give aggregation. For UI Groupby add in Categories instead of groupby");
return false;
}
else {
for (var i = 0; i < instance.selectedColumns.length; i++) {
let selectedColumn = instance.selectedColumns[i];
let Width = 0;
if (selectedColumn.Width != undefined) {
Width = selectedColumn.Width;
}
var Tenure = instance.TenureReport[selectedColumn.ColumnName];
let AggrFuncId = selectedColumn.Aggregation;
let col = new ReportColumn();
col.ReportColumnId = selectedColumn.ReportColumnId,
col.ReportColumnName = selectedColumn.ColumnName,
col.AliasName = selectedColumn.AliasName,
col.DisplayText = selectedColumn.DisplayText,
col.DlColumnName = selectedColumn.DlColumnName,
col.ColumnIndex = selectedColumn.ColumnIndex,
col.Width = Width,
col.ColumnValue = Number(selectedColumn.ColumnId),
col.DataType = selectedColumn.DataType,
col.IsFilterable = selectedColumn.IsFilterable,
col.IsPrimaryKey = selectedColumn.IsPrimaryKey,
col.IsContactColumn = selectedColumn.IsContactColumn,
col.Isvisible = selectedColumn.Isvisible,
col.GroupBy = selectedColumn.GroupBy,
col.SortType = selectedColumn.SortOrder,
col.SortIndex = selectedColumn.SortIndex,
col.AggrFuncId = AggrFuncId,
col.IsTenureApplied = Tenure != undefined ? true : false,
col.GroupByCategory = selectedColumn.GroupByCategory,
col.ColumnFormat = selectedColumn.ColumnFormat == "Default" ? "" : selectedColumn.ColumnFormat,
col.PivotValue = instance.pivot.PivotValue_Selected,
col.DistinctOn = selectedColumn.DistinctOn,
col.IsPivotTableCol = selectedColumn.IsPivotTableCol,
col.IsDownload = selectedColumn.IsDownload,
col.TableAggrTypeId = selectedColumn.TableAggrTypeId,
col.IsNumFormatting = selectedColumn.IsNumFormatting,
col.IsRowTotal = selectedColumn.IsRowTotal,
col.IsImageUrl = selectedColumn.IsImageUrl,
col.PivotTableAggrTypeId = selectedColumn.PivotTableAggrTypeId,
instance.reportColumns_Array(col);
}
let pivotRows = instance.pivot.PivotRows;
if (instance.SortColumns.length != 0) {
for (var i = 0; i < instance.SortColumns.length; i++) {
var col = instance.SortColumns.find(x => x.SortIndex == i);
if (col)
SortArry.push({ Name: col.DisplayText, Order: col.SortOrder });
}
}
if (SortArry.length == 0) {
if (instance.reportType == Unibase.Platform.Analytics.Reports.Enums.ReportType.Chart) {
instance.navigationHelper.hideLoading();
return MessageHelper.Instance().showError('Please Select SortColumn', 'div_ReportBuilderErrorMessage');
}
SortArry.push({ Name: instance.selectedColumns[0].AliasName, Order: "Desc" });
}
instance._chartBuilder.chartColumns();
if (instance.isduplicate == true) {
$("#txt_reportid").val(0);
if ($("#txt_reportname").val() == "") {
$("#errordiv").show();
$("#errordiv").html('
Error! Mandatory fields are missing
');
$("#errordiv").css({ "height": "50px", "visibility": "hidden", "opacity": "0", "transition": "visibility 0s 6s,opacity 6s linear" });
setTimeout(function () {
$("#errordiv").removeAttr('style');
$("#errordiv").hide();
}, 6000);
return false;
}
}
var dependencyapps = $("#dependecyapps").val();
let ReportName = $("#txt_reportname").val().toString();
instance.reportname = String($("#txt_reportname").val());
var SearchColumns_Data = $("#searchcolumns").select2('data');
var SearchCols = "";
for (var i = 0; i < SearchColumns_Data.length; i++) {
SearchCols += SearchColumns_Data[i].text + "|";
}
let connectedAppsArray = $("#connectedapps").select2('data');
let connectedReportsArray = $("#connectedreports").select2('data').map(x => x.id);
let connectedApps = connectedAppsArray.map(x => x.id).join("|");
let connectedReports = connectedReportsArray.join("|");
let baseValue = $("#dataset_base_value").val();
if (instance.res && instance.res.UniqueId) {
if (connectedReportsArray.includes(instance.res.UniqueId)) {
instance.navigationHelper.hideLoading();
return MessageHelper.Instance().showError("Same report cannot be selected as connected report", 'divReport_ErrorMessage');
}
}
instance.updateDynamicFilterIndex();
var fromDate = "";
var toDate = "";
var cf_fromDate = Unibase.Platform.Helpers.NavigationHelper.commonFilter_FromDate;
var cf_toDate = Unibase.Platform.Helpers.NavigationHelper.commonFilter_ToDate;
if (cf_fromDate != null && cf_toDate != null) {
fromDate = cf_fromDate.toString();
toDate = cf_toDate.toString();
}
else {
fromDate = Unibase.Platform.Helpers.DateTimeHelper.Instance().formatLocalDateformat(new Date(Unibase.Platform.Helpers.DateTimeHelper.Instance().currentDate()), "YYYY/MM/DD");
toDate = Unibase.Platform.Helpers.DateTimeHelper.Instance().formatLocalDateformat(new Date(Unibase.Platform.Helpers.DateTimeHelper.Instance().currentDate()), "YYYY/MM/DD");
}
let uniqueId = instance.res && instance.res.UniqueId ? instance.res.UniqueId : "Bizgaze_Platform_Analytics_Reports_" + ReportName.replace(/\s/g, '');
if (instance.reportType == Unibase.Platform.Analytics.Reports.Enums.ReportType.Table && instance.isCharttoTable) {
instance.navigationHelper.hideLoading();
bootbox.confirm("Do you want to switch Chart to Table ?", function (result) {
if (result) {
instance.navigationHelper.showLoading();
instance.isCharttoTable = false;
instance.saveReport(containerid, reportid);
}
});
}
else {
let model = new Unibase.Platform.Analytics.Requests.Report();
model.SearchColumns = SearchCols;
model.SubReports = instance.subreportdata;
model.DependencyApps = dependencyapps.join('|');
model.DynamicFilters = instance.dynamicFilters;
model.ReportId = Number($("#txt_reportid").val());
model.ReportName = String($("#txt_reportname").val());
model.DisplayName = String($("#txt_displayname").val());
model.ReportTypeId = instance.reportType;
model.DataListId = instance.DataListId;
model.Description = '';
model.ReportGroupId = Number($("#RptGroup_AutoComplete").val());
model.ReportColumns = instance.ReportColumns;
model.ChartColumns = instance.ChartColumns;
model.RoleSettings = instance.roleSettings;
model.EditFilters = null;
model.StaticFilter = instance.queryBuilderJson;
model.SortColumns = JSON.stringify(SortArry);
model.TopRecords = Number($("#txt_totalrecords").val());
model.Parameters = String($("#txt_dynamicparameters").val()).trim();
model.ChartTypeId = instance._chartBuilder.ChartTypeId;
model.DateColumn = String($("#DateColumnDropDown").val());
model.UniqueId = uniqueId;
model.ViewerId = instance.ViewerId;
model.ViewerTypeId = instance.ViewerTypeId;
model.OnClick = String($("#txt_onclick").val());
model.InstalledAppId = isNaN(Number($("#InstalledApp_AutoComplete option:selected").val())) == true ? 0 : Number($("#InstalledApp_AutoComplete option:selected").val());
model.IsNotification = instance.IsNotification;
model.TableTypeId = Number($("#tableTypeSelect").val());
model.DisplayName = String($("#txt_displayname").val());
model.IsLegend = instance._chartBuilder.displayLegend;
model.LegendTypeId = isNaN(Number($("#legend-select").val())) == true ? 0 : Number($("#legend-select").val());
model.IsInternalReport = instance.IsInternalReport;
model.IsPivotTree = instance.IsPivotTree;
model.PivotValue = (instance.pivot.PivotValue_Selected) ? Number(instance.pivot.PivotValue_Selected) : 0;
model.IsEnableCount = instance.enableCount;
model.IsEnableGlobalDatepicker = instance.enableGlobalDatepicker;
model.PaletteId = instance.paletteId;
model.ColorAppliedTypeId = instance._chartBuilder.colorAppliedOn;
model.PivotTypeId = instance._pivot.pivotTypeId;
model.TimeInterval = instance.Interval;
model.ConnectedApps = connectedApps;
model.LinkReportId = instance.linkReportId;
model.IsTreeExpand = instance._pivot.isDataTreeExpand;
model.ReportIndex = 0;
model.ViewAll = instance.viewAll;
model.ConnectedReports = connectedReports;
model.LegendTitleTypeId = instance._chartBuilder.legendTitleTypeId;
model.ChartBaseValue = baseValue === undefined ? 0 : Number(baseValue);
model.FromDate = fromDate;
model.ToDate = toDate;
model.EnablePivotTableConfig = instance.enablePivotTableConfig;
model.Js = String($("#txt_js").val());
model.PinDynamicFilters = $('#pindynamicfilters_checkbox').is(":checked");
model.IsDataLabel = $("#isdatalabel").prop("checked");
model.IsTooltipHeader = $("#showtooltipheader_checkbox").prop("checked");
model.ShowDataListColsOnDynFil = instance.showDynamicFilters;
model.TickLabelLength = instance._chartBuilder.tickLabelLength;
instance.reportManager.saveReport(model).then(function (response) {
instance.navigationHelper.hideLoading();
if (response.status == Unibase.Data.Status.Error) {
MessageHelper.Instance().showError(response.message, 'divReport_ErrorMessage');
$('#save_as_modal #divReport_ErrorMessage #Bizgaze-messageInfo').addClass('btn mx-4 my-3');
$('#save_as_modal #divReport_ErrorMessage #Bizgaze-messageInfo').css('border-radius', '.25rem');
}
else {
MessageHelper.Instance().showSuccess(response.message, '');
$('#' + containerid).modal('hide');
$('#' + containerid).remove();
instance._chartBuilder.clearSelectedChartFields();
instance.clearSelectedTableFields();
instance.querybuilderCheckboxes = [];
var res = JSON.parse(response.result);
if (reportid != 0 && !instance.isReportWidget) {
const lastContainerId = instance.lastContainerId;
$(`#${lastContainerId}`).modal("hide");
$(`#${lastContainerId}`).remove();
if (lastContainerId.includes('_viewall') || lastContainerId.includes('_ViewAllByUniqueId_') || lastContainerId.includes('fullscreen') || lastContainerId.includes('_linkedreport_')) {
Unibase.Platform.Helpers.NavigationHelper.reportViewerInstance = Unibase.Platform.Helpers.NavigationHelper.reportViewerInstance.filter(instance => instance.childcontainerid !== lastContainerId);
instance._reportViewer.report_ViewAll(reportid, 0, lastContainerId, null);
if (lastContainerId.includes('fullscreen') && lastContainerId.includes('div_dashboardportletwidget')) {
const widgetContainerId = lastContainerId.replace('fullscreen_', '');
instance.reloadDashboardPortletWidget(widgetContainerId);
}
}
else {
instance._reportViewer.InstalledAppId = res.InstalledAppId;
instance.navigationHelper.popin(res.ReportId, "", instance._reportViewer, null);
}
}
else if (instance.isReportWidget) {
instance.reloadReportWidget(instance.reportWidgetType);
if (instance.reportWidgetType == 'portlet' && instance.lastContainerId) {
$("#" + instance.lastContainerId).modal("hide");
$("#" + instance.lastContainerId).remove();
instance._reportViewer.report_ViewAll(0, 0, 0, null);
}
}
}
});
}
}
}
reloadDashboardPortletWidget(widgetContainerId) {
const instance = this;
const containerId = widgetContainerId ? widgetContainerId : instance.lastContainerId;
const widgetItem = $(`#${containerId}`).closest('.dashboardwidget-item');
const widgetId = Number($(`#${containerId}`).closest('.dashboardwidget-item').find('#hf_widgetId').val());
const portletwidgetid = Number(widgetItem.find('#hf_portletwidgetId').val());
Unibase.Themes.Compact.Components.ReportWidgets.Default.Instance().getReportWidget(portletwidgetid, widgetId, containerId, [], [], false, 0, false);
}
reloadReportWidget(widgetType) {
const instance = this;
if (widgetType == 'dashboard') {
instance.reloadDashboardPortletWidget();
}
else if (widgetType == 'portlet') {
$('._bizgaze_detail_container:visible').find('#layout-detail-tabs .tab-item a.active').trigger('click');
}
}
clearSelectedTableFields() {
var instance = this;
instance.datalistColumnsResponseData = [];
instance.selectedColumns = [];
instance.ReportColumns = [];
instance.SortColumns = [];
instance.stringifyed_SortColumns = "";
instance.queryBuilderJson = "";
instance.reportGroupId = 0;
instance.reportType = 1;
instance.Categories = [];
instance.dynamicFilters = [];
instance.roleSettings = [];
instance.TenureReport = [];
instance.subreportdata = [];
instance.dataTreeRowExpandedColumn = [];
instance.Edit_BindData = false;
instance.isEdit = false;
instance._pivot.pivotTypeId = 0;
instance.IsInternalReport = true;
instance.isCharttoTable = false;
}
defaultReportGroup() {
var instance = this;
if (instance.IsInternalReport) {
let groupName = "InternalGroup";
instance.reportManager.getReportGroupByName(groupName).then(function (grpresponse) {
if (grpresponse.result == "") {
let model = new Unibase.Platform.Analytics.Reports.Requests.ReportGroup();
model.GroupName = groupName;
instance.reportManager.saveReportGroup(model).then(function (response) {
if (response.result != null) {
let res = JSON.parse(response.result);
instance.reportGroupId = res.ReportGroupId;
$("#RptGroup_AutoComplete").append("
" + res.GroupName + " ");
}
});
}
else {
instance.reportGroupId = grpresponse.result.ReportGroupId;
$("#RptGroup_AutoComplete").append("
" + grpresponse.result.GroupName + " ");
}
});
}
else {
$('#RptGroup_AutoComplete').removeAttr('disabled');
}
}
closeReportBuilder(containerid, reportid) {
var instance = this;
instance._chartBuilder.clearSelectedChartFields();
instance.clearSelectedTableFields();
$('#' + containerid).modal('hide');
$('#' + containerid).remove();
}
loadreportviewerdata(reportid) {
var instance = this;
instance.isEdit = true;
instance.loadDynmaicFilters(reportid);
instance.bindReportData(reportid);
}
loadDynmaicFilters(reportid) {
var instance = this;
instance.reportManager.getDynamicFilters(reportid).then(function (response) {
instance.dynamicFilters = [];
for (let i = 0; i < response.length; i++) {
var data = response.find(d => d.Index == i);
if (data != undefined) {
var model = new DynamicFilterModel();
model.DynamicFilterId = data.DynamicFilterId;
model.IsFilterableColumn = data.IsFilterableColumn.trim();
model.DataListId = Number(data.DatalistId);
model.DataListName = data.DataListName != null ? (data.DataListName).toString() : null;
model.ReportId = data.ReportId;
model.MappedColumn = data.MappedColumn;
model.TextColumn = data.TextColumn != null ? data.TextColumn : null;
model.ValueColumn = data.TextColumn != null ? data.ValueColumn : null;
model.Index = data.Index;
model.ControlTypeId = data.ControlTypeId;
model.DataType = data.DataType;
model.DisplayName = data.DisplayName;
model.IsPartition = data.IsPartition;
model.FontCaseTypeId = data.FontCaseTypeId;
model.IsDefault = data.IsDefault;
model.IsUnLimited = data.IsUnLimited;
model.IsRequired = data.IsRequired;
model.ParentColumn = data.ParentColumn;
model.ApplyFor = data.ApplyFor;
model.IsCustomFilter = data.IsCustomFilter;
model.ReplaceExistingDates = data.ReplaceExistingDates;
model.DateRangeTypeId = data.DateRangeTypeId;
instance.dynamicFilters.push(model);
Unibase.Platform.Analytics.Reports.DynamicFilter.Instance().dynamicFilters = instance.dynamicFilters;
let html = instance._reportBuilderTemplate.loadDynamicFilterColumn(Number(model.DynamicFilterId), model.IsFilterableColumn, '');
$("#dynamic-list-group-wrapper").append(html);
if (data.DataType == Unibase.Platform.Analytics.Reports.Enums.DataType.dateTime) {
}
if (data.IsPartition)
$("#chk_ispartition_" + data.IsFilterableColumn.trim()).prop("checked", true);
if (data.IsUnLimited)
$('#isunlimited_checkbox').prop('checked', true);
else
$('#isunlimited_checkbox').prop('checked', false);
Unibase.Platform.Analytics.Reports.DynamicFilter.Instance().sortDynamicFilter(model);
}
}
});
}
bindReportData(reportid) {
var instance = this;
var reportObj = {
ReportId: reportid,
IsEditReport: true
};
instance.reportManager.getReportInfo(reportObj).then(function (response) {
return __awaiter(this, void 0, void 0, function* () {
if (response.status == Unibase.Data.Status.Error) {
return MessageHelper.Instance().showError(response.message, 'div_ReportBuilderErrorMessage');
}
var res = response.result.ReportInfo;
instance.DataListId = res.DataListId;
instance.DataSourceId = res.DataSourceId;
instance.topRecords = res.TopRecords;
yield instance.loadDataListColumns(res.DataListId, null, false, false, instance.DataSourceId);
instance.initiateDataListSearch();
instance._chartBuilder.isDataLabel = response.result.ReportInfo.IsDataLabel;
instance.pinDynamicFilters = res.PinDynamicFilters;
if (res.appDependents != null) {
let dependecyapps = [];
if (res.appDependents.length) {
for (let i = 0; i < res.appDependents.length; i++) {
dependecyapps.push(res.appDependents[i].InstalledAppId);
}
$("#dependecyapps").val(dependecyapps).trigger("change");
}
}
$("#txt_reportid").val(res.ReportId);
if (instance.isduplicate != true) {
$("#txt_reportname").val(res.ReportName);
$("#txt_reportname").attr("disabled", "disabled");
}
if (res.SearchColumns != null) {
instance.SearchColumns = res.SearchColumns;
}
$("#header_datalist_name").text(res.DataListName);
$("#txt_totalrecords").val(res.TopRecords);
$("#txt_onclick").val(res.Onclick);
$("#txt_js").val(res.Js);
$("#pindynamicfilters_checkbox").prop("checked", res.PinDynamicFilters);
instance.togglePinDynamicFilters();
if (res.ShowDataListColsOnDynFil)
$("#showdatalistcolumns_checkbox").trigger("click");
if (res.Js) {
instance.Js = res.Js;
}
if (res.InstalledAppId != 0) {
$("#InstalledApp_AutoComplete").append(`
` + res.AppTitle + ` `);
$("#InstalledApp_AutoComplete").val(res.InstalledAppId).trigger("change");
}
if (res.ConnectedApps) {
let connectApps = res.ConnectedApps.split("|");
$("#connectedapps").val(connectApps).trigger("change");
}
if (res.ConnectedReports) {
let connectedReports = res.ConnectedReports.split("|");
for (var i = 0; i < connectedReports.length; i++) {
yield Unibase.Platform.Analytics.Managers.ReportManager.Instance().getReportByUniqueIdEncoded(btoa(connectedReports[i])).then((res) => {
if (res.result && res.status == Unibase.Data.Status.Success) {
let option = new Option(res.result.ReportName, connectedReports[i], true);
$("#connectedreports").append(option);
}
});
}
;
$("#connectedreports").val(connectedReports).trigger("change");
}
if (res.IsNotification) {
$(".chkNotification").attr("checked", "checked");
}
instance.Interval = res.TimeInterval;
instance.IsInternalReport = res.IsInternalReport;
$('#internalreport_checkbox').prop('checked', instance.IsInternalReport);
instance.isInternalGroup = res.IsInternalGroup;
if (instance.isInternalGroup) {
instance.updateInternalReportCb(true, true);
}
if (!res.IsEnableCount) {
instance.enableCount = false;
$('#count_checkbox').prop('checked', false);
}
else {
instance.enableCount = true;
$('#count_checkbox').prop('checked', true);
}
if (!res.IsEnableGlobalDatepicker) {
instance.enableGlobalDatepicker = false;
$('#enableglobaldatepicker_checkbox').prop('checked', false);
}
else {
instance.enableGlobalDatepicker = true;
$('#enableglobaldatepicker_checkbox').prop('checked', true);
}
Unibase.Platform.Analytics.Components.LinkReport.Instance().linkreportid = res.LinkReportId;
instance.reportGroupId = res.ReportGroupId;
$("#RptGroup_AutoComplete").append(`
` + res.GroupName + ` `);
$("#RptGroup_AutoComplete").val(res.ReportGroupId);
$("#txt_displayname").val(res.DisplayName);
$("#tableTypeSelect").val(res.TableTypeId);
$('#chkPivotTableConfig_checkbox').prop('checked', res.EnablePivotTableConfig);
$('#chktreeexpand_checkbox').prop('checked', res.IsTreeExpand);
instance.enablePivotTableConfig = res.EnablePivotTableConfig;
instance._pivot.isDataTreeExpand = res.IsTreeExpand;
instance.IsPivotTree = res.IsPivotTree;
instance._pivot.pivotTypeId = res.PivotTypeId;
instance._pivot.intervals = res.TimeInterval;
instance._chartBuilder.displayLegend = res.IsLegend;
instance._chartBuilder.tickLabelLength = res.TickLabelLength;
instance._pivot.selectedpivotType(res.PivotTypeId);
if (res.StaticFilter != null) {
instance.queryBuilderJson = res.StaticFilter;
}
instance.ViewerTypeId = res.ViewerTypeId;
instance.ViewerId = res.ViewerId;
if (res.SortColumns != null) {
instance.stringifyed_SortColumns = res.SortColumns;
var sortCols = JSON.parse(res.SortColumns);
for (var sc = 0; sc < sortCols.length; sc++) {
let sortcol = sortCols[sc];
instance.SortColumns.push({ DisplayText: sortcol.Name, SortOrder: sortcol.Order, SortIndex: sc });
var rptCols;
if (res.DataSourceId == Number(Unibase.Platform.DataSources.Enums.DataSource.MongoDB)) {
rptCols = res.ReportColumns.find(s => s.AliasName.toLowerCase() == sortcol.Name.toLowerCase());
}
else {
rptCols = res.ReportColumns.find(s => s.AliasName.toLowerCase() == sortcol.Name);
}
var html = instance._reportBuilderTemplate.loadSortSelect2Column(rptCols.ColumnValue, rptCols.AliasName, rptCols.DataType);
$("#sort_selected_columns").append(html);
if (instance.SortColumns[0].SortOrder == "Desc") {
$("#dsl_column_" + sortcol.DisplayText + " .sort-icon").addClass('la-sort-down');
$("#dsl_column_" + sortcol.DisplayText + " .sort-icon").removeClass('la-sort-up');
}
else {
$("#dsl_column_" + sortcol.DisplayText + " .sort-icon").removeClass('la-sort-down');
$("#dsl_column_" + sortcol.DisplayText + " .sort-icon").addClass('la-sort-up');
}
instance.setSelectOption("sortColumns_select");
instance._sortColumns();
}
}
instance.roleSettings = res.RoleSettings ? res.RoleSettings : [];
if (!res.LegendTitleTypeId)
res.LegendTitleTypeId = Unibase.Platform.Analytics.Enums.LegendTitleType.Column;
instance.legendTypeId = res.LegendTypeId;
if (res.LegendTitleTypeId == Unibase.Platform.Analytics.Enums.LegendTitleType.Column) {
$("#lagendtypecolumn").prop("checked", true);
instance._chartBuilder.legendTitleTypeId = Unibase.Platform.Analytics.Enums.LegendTitleType.Column;
}
else {
$("#lagendtypedata").prop("checked", true);
instance._chartBuilder.legendTitleTypeId = Unibase.Platform.Analytics.Enums.LegendTitleType.Data;
}
instance._chartBuilder.chartBaseValue = res.ChartBaseValue;
instance.viewAll = res.ViewAll;
if (res.LinkReportId) {
instance.linkReportId = res.LinkReportId;
}
instance.res = res;
let id = "";
id = res.ReportTypeId == Unibase.Platform.Analytics.Reports.Enums.ReportType.Table ? 'fa fa-table' : 'fa fa-bar-chart-o';
instance.reportTypeChange(id);
if (res.ReportTypeId == Unibase.Platform.Analytics.Reports.Enums.ReportType.Table) {
yield instance.bindTableData(res.ReportColumns, reportid);
instance.reportType = res.ReportTypeId;
$("#no_of_records").closest(".card").first().addClass("hidden");
}
else {
instance._chartBuilder.ChartTypeId = res.ChartTypeId;
instance.reportType = res.ReportTypeId;
$("#ReportTypeChart").find('i').toggleClass('fa-table fa-bar-chart-o');
instance._reportBuilderTemplate.loadChartSideBar();
instance._chartBuilder.sortTooltipColumnsEvent();
instance._chartBuilder.loadReportTypeChart('fa fa-bar-chart-o');
$('#tabulatorReportbuilder').addClass('contains-chartview');
if (res.ColorAppliedTypeId == Unibase.Platform.Analytics.Enums.ColorType.column) {
$("#columnRadio").prop("checked", true);
instance._chartBuilder.colorAppliedOn = Unibase.Platform.Analytics.Enums.ColorType.column;
}
else {
$("#rowRadio").prop("checked", true);
instance._chartBuilder.colorAppliedOn = Unibase.Platform.Analytics.Enums.ColorType.row;
}
instance._chartBuilder.ChartSelectedColumns = res.ChartColumns;
instance._chartBuilder.bindChartColumns(res.ChartColumns);
instance._chartBuilder.prepareAndBindToolTipColumns(res.ChartColumns);
instance.paletteId = res.PaletteId;
const indexInstance = Unibase.Themes.Compact.Components.Index.Instance();
if (instance.paletteId !== 0 || indexInstance.currentTheme.paletteId) {
let paletteId = instance.paletteId;
if (!paletteId) {
instance._chartBuilder.paletteColors.push(...indexInstance.themePalette);
}
else {
instance._chartBuilder.getpaletteColors(paletteId, false);
}
}
$("#legend-select").val(res.LegendTypeId);
instance._chartBuilder.loadSelectedLegend(res.LegendTypeId, false);
instance.bindTableData(res.ReportColumns, reportid);
}
instance.loadAllDataListColumns();
instance.loadSelectedDataListColumns();
instance._chartBuilder.loadSearchSelect2();
instance._chartBuilder.loadSortColumnsSelect2();
instance._chartBuilder.loadDynamicFilterSelect(instance.showDynamicFilters);
instance._chartBuilder.loadCategoriesSelect2();
});
});
}
bindTableData(reportColumns, reportid) {
return __awaiter(this, void 0, void 0, function* () {
var instance = this;
if (reportColumns && reportColumns.length) {
reportColumns = reportColumns.sort((x, y) => x.ColumnIndex - y.ColumnIndex);
}
var data = reportColumns;
instance.pivot.ColumnName = "";
var pivotChildCol = data.filter(c => c.IsPivotChildColumn == true);
var pivotParentCol = data.filter(c => c.IsPivotParentColumn == true);
var groupby = [];
var categories = [];
var categories_text = [];
var searchcolumns = instance.SearchColumns.split('|');
for (var i = 0; i < data.length; i++) {
var selCol = new SelectedColumns();
selCol.ReportColumnId = data[i].ReportColumnId;
selCol.ColumnId = data[i].ColumnValue;
selCol.ColumnName = data[i].ReportColumnName;
selCol.AliasName = data[i].AliasName;
selCol.DataListColumnName = data[i].DataListColumnName;
selCol.DlColumnName = data[i].DlColumnName;
selCol.DataType = data[i].DataType;
selCol.GroupBy = data[i].GroupBy;
selCol.Aggregation = data[i].AggrFuncId;
selCol.SortOrder = data[i].SortType;
selCol.Isvisible = data[i].Isvisible;
selCol.SortIndex = data[i].SortIndex;
selCol.DisplayText = data[i].DisplayText;
selCol.IsFilterable = data[i].IsFilterable;
selCol.IsPrimaryKey = data[i].IsPrimaryKey;
selCol.IsContactColumn = data[i].IsContactColumn;
selCol.ColumnIndex = data[i].ColumnIndex;
selCol.GroupByCategory = data[i].GroupByCategory;
selCol.DistinctOn = data[i].DistinctOn;
selCol.IsPivotColumn = data[i].IsPivotColumn;
selCol.IsPivotAggrColumn = data[i].IsPivotAggrColumn;
selCol.IsPivotTableCol = data[i].IsPivotTableCol;
selCol.IsDownload = data[i].IsDownload;
selCol.TableAggrTypeId = data[i].TableAggrTypeId;
selCol.IsNumFormatting = data[i].IsNumFormatting;
selCol.IsRowTotal = data[i].IsRowTotal;
selCol.IsImageUrl = data[i].IsImageUrl;
selCol.PivotTableAggrTypeId = data[i].PivotTableAggrTypeId;
selCol.ColumnFormat = data[i].ColumnFormat;
if (data[i].Width != 0) {
selCol.Width = data[i].Width;
}
selCol.IsDragged = true;
if (data[i].GroupBy == true) {
groupby.push(data[i].ColumnValue);
}
if (data[i].GroupByCategory == true) {
categories.push(data[i].ColumnValue);
categories_text.push({ id: data[i].ColumnValue, text: data[i].ReportColumnName });
}
if (data[i].IsFilterable) {
$("#DropDown_IsFilterable_" + data[i].AliasName).removeClass('hidden');
}
else {
$("#DropDown_IsFilterable_" + data[i].AliasName).addClass('hidden');
}
if (data[i].IsPrimaryKey) {
$("#DropDown_IsPrimaryKey_" + data[i].AliasName).removeClass('hidden');
}
else {
$("#DropDown_IsPrimaryKey_" + data[i].AliasName).addClass('hidden');
}
if (data[i].IsContactColumn) {
$("#DropDown_IsContactColumn_" + data[i].AliasName).removeClass('hidden');
}
else {
$("#DropDown_IsContactColumn_" + data[i].AliasName).addClass('hidden');
}
instance._selectedColumns(selCol);
if (selCol.GroupByCategory) {
var html = instance._reportBuilderTemplate.loadSelect2Column(selCol.ColumnId, selCol.AliasName, selCol.DataType);
$("#categories_selected_columns").append(html);
instance.setSelectOption("categories_select");
}
if (data[i].TimeInterval != "" && data[i].TimeInterval != null) {
instance.TenureReport[data[i].ReportColumnName] = {
TimeInterval: data[i].TimeInterval
};
instance.TenureReport.length = instance.TenureReport.length + 1;
}
if (data[i].IsPivotColumn) {
instance.pivot.ColumnName = data[i].ReportColumnName;
yield instance.getDistinctData(0, data[i].ReportColumnName, data[i].PivotDateType);
}
if (data[i].IsPivotAggrColumn) {
instance.pivot.AggColumnName = data[i].ReportColumnName;
instance.pivot.AggFuncId = data[i].AggrFuncId;
}
if (data[i].PivotDateType != "") {
instance.pivot.DateType = data[i].PivotDateType;
}
if (data[i].IsPivotChildColumn) {
instance.pivot.ChildColumnName = pivotChildCol[0].ReportColumnName;
instance.pivot.ChildColumnValue = data[i].PivotValue;
instance.pivot.PivotValue_Selected = data[i].PivotValue;
instance.pivot.ParentColumnName = pivotParentCol[0].ReportColumnName;
}
}
instance.Categories = categories_text;
instance._chartBuilder.select2DataBinding("");
if (instance._pivot.pivotTypeId == Unibase.Platform.Analytics.Reports.Enums.PivotType.PivotTable) {
yield instance._pivot.loadPivotTable(instance.table);
instance.getSubReports(reportid);
instance.navigationHelper.hideLoading();
}
else {
yield instance.load_data(instance.table);
}
if (instance.TenureReport.length != 0) {
Unibase.Platform.Analytics.Reports.Tenure.Instance().CheckedTenure();
instance._chartBuilder.tenureChart('myChart', instance.reportid);
}
if (instance.reportType == Unibase.Platform.Analytics.Reports.Enums.ReportType.Chart) {
if (instance.pivot.ColumnName) {
instance._chartBuilder.chartType('myChart');
}
}
var SearchCols = [];
for (var s = 0; s < searchcolumns.length; s++) {
if (searchcolumns[s] != "") {
let SearchCol_Index = instance.datalistColumnsResponseData.findIndex(x => x.ColumnName == searchcolumns[s]);
if (SearchCol_Index != -1) {
var col = instance.datalistColumnsResponseData[SearchCol_Index].ColumnId;
SearchCols.push(col);
}
}
}
$("#searchcolumns").val(SearchCols).trigger("change");
});
}
addParameter() {
let parameterHtml = "";
let parameterDropdownHtml = "";
let elementNumber = this.parameterNumber;
parameterHtml += `
`;
$("#parameter-options").append(parameterHtml);
parameterDropdownHtml += `
Parameter ${elementNumber}
`;
$("#parameter-dropdown").append(parameterDropdownHtml);
let para = `para_${elementNumber}`;
let obj = { paraId: para };
this.parameterArray.push(obj);
this.parameterNumber++;
}
removeSelectParameter(paraId) {
var instance = this;
for (var i = 0; i < instance.parameterArray.length; i++)
if (instance.parameterArray[i].paraId === paraId) {
instance.parameterArray.splice(i, 1);
$("#parameter-options").find('[data-target = ' + paraId + ']').remove();
$("#parameter-dropdown").find('#' + paraId).remove();
break;
}
}
error(name) {
return MessageHelper.Instance().showError('Column -"' + name + '" Already Exists. Please change display text and try again', 'div_ReportBuilderErrorMessage');
}
isNotificationCheck() {
var instance = this;
var tenantindex = instance.selectedColumns.findIndex(x => x.ColumnName == "tenantid");
var versionguidindex = instance.selectedColumns.findIndex(x => x.ColumnName == "versionguid");
if ($('#notification_checkbox').prop('checked') == true) {
if (tenantindex == -1) {
let tenantcol = instance.datalistColumnsResponseData.find(d => d.ColumnName == "tenantid");
if (tenantcol) {
tenantcol.Isvisible = true;
instance._selectedColumns(tenantcol);
}
else {
$('#notification_checkbox').prop('checked', false);
return MessageHelper.Instance().showError("tenantid Column doesn't exist", "div_ReportBuilderErrorMessage");
}
if (versionguidindex > -1)
instance.load_data(instance.table);
}
if (versionguidindex == -1) {
let versionguidcol = instance.datalistColumnsResponseData.find(d => d.ColumnName == "versionguid");
if (versionguidcol) {
versionguidcol.Isvisible = true;
instance._selectedColumns(versionguidcol);
}
else {
$('#notification_checkbox').prop('checked', false);
return MessageHelper.Instance().showError("versionguid Column doesn't exist", "div_ReportBuilderErrorMessage");
}
if (tenantindex > -1)
instance.load_data(instance.table);
}
instance.IsNotification = true;
}
else {
instance.IsNotification = false;
if (tenantindex > -1)
instance.selectedColumns.splice(tenantindex);
if (versionguidindex > -1)
instance.selectedColumns.splice(versionguidindex);
return instance.load_data(instance.table);
}
if (tenantindex == -1 && versionguidindex == -1 || tenantindex > -1 && versionguidindex > -1)
instance.load_data(instance.table);
}
getSelectedColumns_Select2_Data() {
let data = [{ id: "0", text: "- Select Columns -" }];
for (var i = 0; i < this.selectedColumns.length; i++) {
data.push({ id: this.selectedColumns[i].ColumnId, text: this.selectedColumns[i].AliasName });
}
return data;
}
getSelectedColumns_Select2_Data_AliasName_As_TextValue() {
let data = [{ id: "0", text: "- Select Columns -" }];
for (var i = 0; i < this.selectedColumns.length; i++) {
data.push({ id: this.selectedColumns[i].AliasName, text: this.selectedColumns[i].AliasName });
}
return data;
}
getSelect2DataForDynamicFiltersDatalistColumns() {
let data = [{ id: "0", text: "- Select Columns -" }];
for (var i = 0; i < this.datalistColumnsResponseData.length; i++) {
data.push({ id: this.datalistColumnsResponseData[i].ColumnId, text: this.datalistColumnsResponseData[i].AliasName });
}
return data;
}
bindSearchColumns() {
var searchcolumns = this.SearchColumns.split('|');
var SearchCols = [];
for (var s = 0; s < searchcolumns.length; s++) {
if (searchcolumns[s] != "") {
let SearchCol_Index = this.selectedColumns.findIndex(x => x.AliasName == searchcolumns[s]);
if (SearchCol_Index != -1) {
var col = this.selectedColumns[SearchCol_Index].ColumnId;
SearchCols.push(col);
}
}
}
$("#searchcolumns").val(searchcolumns).trigger("change");
}
changeDisplayname() {
$("#txt_displayname").val($("#txt_reportname").val());
}
getSortColumnsStringify() {
let SortArry = [];
for (var i = 0; i < this.SortColumns.length; i++) {
var col = this.SortColumns.find(x => x.SortIndex == i);
if (col)
SortArry.push({ Name: col.DisplayText, Order: col.SortOrder });
}
return SortArry.length ? JSON.stringify(SortArry) : "";
}
bindConnectedReportsSelect2(id) {
var url = _appsettings.server_url() + '/apis/v4/unibase/platform/analytics/reportsautocompletevalueasuniqueid';
AutoCompleteHelper.getHelper().Create(id, "hfReportAutoComplete", url, null);
}
removeAndUpdateStringfiedSortColumns(AliasName) {
let index = this.SortColumns.findIndex(i => i.DisplayText === AliasName);
if (index != -1) {
this.SortColumns.splice(index, 1);
let item = `#sort_selected_columns #dsl_column_${AliasName}`;
$(item).remove();
this.stringifyed_SortColumns = this.getSortColumnsStringify();
}
}
isDownload(columnId, aliasName) {
var instance = this;
let index = instance.getIndexByAliasName_selectedColumnsArray(aliasName);
if (index > -1) {
if ($("#isDownload_" + columnId).prop("checked") == true) {
instance.selectedColumns[index].IsDownload = true;
}
else {
instance.selectedColumns[index].IsDownload = false;
}
}
}
isNumFormatting(columnId, aliasName) {
var instance = this;
let index = instance.getIndexByAliasName_selectedColumnsArray(aliasName);
if (index > -1) {
if ($("#isNumFormatting_" + columnId).prop("checked") == true) {
instance.selectedColumns[index].IsNumFormatting = true;
}
else {
instance.selectedColumns[index].IsNumFormatting = false;
}
}
}
isRowTotal(columnId, aliasName) {
var instance = this;
let index = instance.getIndexByAliasName_selectedColumnsArray(aliasName);
if (index > -1) {
if ($("#isRowTotal_" + columnId).prop("checked") == true) {
instance.selectedColumns[index].IsRowTotal = true;
}
else {
instance.selectedColumns[index].IsRowTotal = false;
}
}
}
isImageUrl(columnId, aliasName) {
var instance = this;
let index = instance.getIndexByAliasName_selectedColumnsArray(aliasName);
if (index > -1) {
if ($("#isimageurl_" + columnId).prop("checked") == true) {
instance.selectedColumns[index].IsImageUrl = true;
}
else {
instance.selectedColumns[index].IsImageUrl = false;
}
}
}
updateDynamicFilterIndex() {
$("#dynamic-list-group-wrapper").children().each((i, e) => {
let colAliasName = $(e).data("isfilterablecolumn");
if (colAliasName) {
let idx = this.dynamicFilters.findIndex(x => x.IsFilterableColumn == colAliasName);
if (idx != -1) {
this.dynamicFilters[idx].Index = i;
}
}
});
}
updateInternalReportCb(isInternalreport, disabled) {
$("#internalreport_checkbox").prop('checked', isInternalreport).attr("disabled", disabled);
}
togglePinDynamicFilters() {
const instance = this;
const filter = instance.dynamicFilters.find(x => x.IsRequired === true);
if (filter) {
$('#pindynamicfilters_checkbox').prop({ 'checked': true, 'disabled': true });
}
else if (!instance.pinDynamicFilters) {
$('#pindynamicfilters_checkbox').prop({ 'checked': false, 'disabled': false });
}
else {
$('#pindynamicfilters_checkbox').prop('disabled', false);
}
}
static Instance() {
if (this.rb_instance === undefined) {
this.rb_instance = new ReportBuilder();
}
return this.rb_instance;
}
}
Reports.ReportBuilder = ReportBuilder;
})(Reports = Analytics.Reports || (Analytics.Reports = {}));
})(Analytics = Platform.Analytics || (Platform.Analytics = {}));
})(Platform = Unibase.Platform || (Unibase.Platform = {}));
})(Unibase || (Unibase = {}));
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var Unibase;
(function (Unibase) {
let Platform;
(function (Platform) {
let Analytics;
(function (Analytics) {
let Managers;
(function (Managers) {
class ReportManager extends Platform.Core.BaseManager {
updatecolumns(reportid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/datalistcolumnstring/reportid/' + reportid;
return yield this.dataHelper().getAsync(url).then(function (response) {
return response;
});
});
}
getViewableReports() {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/viewablereportgroups';
var groups;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
getViewableReportsByparentgroupid(parentid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/viewablereportgroupswithparent/' + parentid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
getReportGroupById(reportgroupid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/reportgroup/reportgroupid/' + reportgroupid;
var groups;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
getReportGroupByName(groupname) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/reportgroupname/reportgroupname/' + groupname;
var groups;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null && response.result !== "")
response.result = JSON.parse(response.result);
return response;
});
});
}
saveReportGroup(obj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/savereportgroup';
return yield this.dataHelper().postAsync(url, obj).then(function (response) {
return response;
});
});
}
exportGroupreports(reportgroupid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/exportgroupreports/reportgroupid/' + reportgroupid;
return yield this.dataHelper().getAsync(url).then(function (response) {
return response;
});
});
}
deleteReportGroup(reportgroupid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/deletereportgroup/reportgroupid/' + reportgroupid;
return yield this.dataHelper().postAsync(url, null).then(function (response) {
return response;
});
});
}
getReportGroups() {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/bizgaze/integrations/reportgroup/getreportfolders';
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
getReportsbyGroupId(groupid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/bizgaze/integrations/reportgroup/getreportbygroupid/reportgroupid/' + groupid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
checkReportGroupDependency(groupid, parentGroupId) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/checkreportgroupdependency/groupid/' + groupid + '/parentgroupid/' + parentGroupId;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
updateReportGroupStatus(groupid, statusId) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/updatereportgroupstatus/reportgroupid/' + groupid + '/statusid/' + statusId;
return yield this.dataHelper().postAsync(url, null).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
getReportById(reportid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/report/' + reportid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
getReportByUniqueId(uniqueid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/reportbyuniqueid/' + uniqueid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != "" && response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
getReportByUniqueIdEncoded(encodedUniqueId) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/reportbyuniqueidencoded/' + encodedUniqueId;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != "" && response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
getReports() {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/getallreports';
var reports;
return yield this.dataHelper().getAsync(url).then(function (response) {
reports = JSON.parse(response.result);
return reports;
});
});
}
getReportCategoriesByReportId(reportid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/reportcategories/reportid/' + reportid;
return yield this.dataHelper().getAsync(url).then(function (response) {
return response;
});
});
}
getReportInfo(repObj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/reportinfo';
return yield this.dataHelper().postAsync(url, repObj).then(function (response) {
if (response.result !== null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getFullReportInfo(reportid) {
return __awaiter(this, void 0, void 0, function* () {
const url = `apis/v4/unibase/platform/analytics/getfullreportinfo/${reportid}`;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getSubReports(reportid) {
return __awaiter(this, void 0, void 0, function* () {
let term = null;
const url = 'apis/v4/unibase/platform/analytics/subreports/reportid/' + reportid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result)
response.result = JSON.parse(response.result);
return response;
});
});
}
getSubReportById(reportid) {
return __awaiter(this, void 0, void 0, function* () {
let term = null;
const url = 'apis/v4/unibase/platform/analytics/subreportsbyid/subreportid/' + reportid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result)
response.result = JSON.parse(response.result);
return response;
});
});
}
saveReport(obj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/report';
return yield this.dataHelper().postAsync(url, obj).then(function (response) {
return response;
});
});
}
deleteReport(reportid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/deletereport/reportid/' + reportid;
return yield this.dataHelper().postAsync(url, null).then(function (response) {
return response;
});
});
}
getColumns(reportid) {
return __awaiter(this, void 0, void 0, function* () {
let term = null;
const url = 'apis/v4/unibase/platform/analytics/reportcolumns/reportid/' + reportid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getIsContactReportColumns(reportid) {
return __awaiter(this, void 0, void 0, function* () {
let term = null;
const url = 'apis/v4/unibase/platform/analytics/getiscontactreportcolumns/reportid/' + reportid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getReportColumnsByAppId(installedAppId) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/getreportcolumnsbyappid/installedappid/' + installedAppId;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getReportColumnByAliasName(reportid, aliasName) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/getreportcolumnbyaliasname/reportid/' + reportid + '/aliasname/' + aliasName;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null) {
response.result = JSON.parse(response.result);
}
return response;
});
});
}
getDataLists() {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/datalists/getallnoninternaldatalists';
var dataList;
return yield this.dataHelper().getAsync(url).then(function (response) {
dataList = JSON.parse(response.result);
return dataList;
});
});
}
getDataListColumns(datalistid, term, parameters) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/datalistcolumns/datalistid/' + datalistid + '/term/' + term + '/parameters/' + parameters;
return yield this.dataHelper().getAsync(url).then(function (response) {
return response;
});
});
}
getTableData(postdata) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/reportpreviewdata';
return yield this.dataHelper().postAsync(url, postdata).then(function (response) {
return response;
});
});
}
getTenureData(postdata) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/tenuredata';
return yield this.dataHelper().postAsync(url, postdata).then(function (response) {
return JSON.parse(response.result);
});
});
}
getReportNamesByGroup(reportgroupid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/reports/reportgroupid/' + reportgroupid;
var reportDetails;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
refreshReports() {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/refreshreports/np';
return yield this.dataHelper().postAsync(url, "{}").then(function (response) {
return response.message;
});
});
}
getHeaderColumns(reportid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/headers/reportid/' + reportid;
var headers;
return yield this.dataHelper().getAsync(url).then(function (response) {
headers = JSON.parse(response.result);
return headers;
});
});
}
getDynamicFilterData(reportid, columnname) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/dynamicfilterdata/reportid/' + reportid + '/columnname/' + columnname;
var dynamicfilters;
return yield this.dataHelper().getAsync(url).then(function (response) {
dynamicfilters = JSON.parse(response.result);
return dynamicfilters;
});
});
}
getDynamicFilterCascadingData(dynamicFilObj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/dynamicfiltercascadingdata';
return yield this.dataHelper().postAsync(url, dynamicFilObj).then(function (response) {
return response;
});
});
}
getDynamicFilters(reportid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/dynamicfilters/reportid/' + reportid;
var commonfilters;
return yield this.dataHelper().getAsync(url).then(function (response) {
commonfilters = JSON.parse(response.result);
return commonfilters;
});
});
}
getReportViewerData(repObj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/tabledata';
return yield this.dataHelper().postAsync(url, repObj).then(function (response) {
return response;
});
});
}
getReportCount(repObj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/tablecount';
return yield this.dataHelper().postAsync(url, repObj).then(function (response) {
return response;
});
});
}
getDistinctColumnData(datalistid, columnname, aggregationtypeid, fromdate, todate) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/distinctcolumndata/datalistid/' + datalistid + '/columnname/' + columnname + '/aggregationtypeid/' + aggregationtypeid + '/fromdate/' + fromdate + '/todate/' + todate;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result) {
response.result = JSON.parse(response.result);
}
return response.result;
});
});
}
startDownloadLargeFile(repObj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/downloadreportlargefile';
return yield this.dataHelper().postAsync(url, repObj).then(function (response) {
return response;
});
});
}
deleteDynamicFilter(reportid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/deletedynamicfilter/reportid/' + reportid;
return yield this.dataHelper().postAsync(url, null).then(function (response) {
return response;
});
});
}
getCommonFilters(portletid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/commonfilters/portletid/' + portletid;
var commonfilters;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result != "")
commonfilters = JSON.parse(response.result);
return commonfilters;
});
});
}
getCommonFilterColumns(portletid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/commonfiltercolumns/portletid/' + portletid;
var commonfiltercolumns;
return yield this.dataHelper().getAsync(url).then(function (response) {
commonfiltercolumns = JSON.parse(response.result);
return commonfiltercolumns;
});
});
}
getCommonFilterColumnsByCommonFilterId(commonfilterid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/commonfiltercolumnsbycommonfilterid/commonfilterid/' + commonfilterid;
var commonfiltercolumns;
return yield this.dataHelper().getAsync(url).then(function (response) {
commonfiltercolumns = JSON.parse(response.result);
return commonfiltercolumns;
});
});
}
getCommonFiltersByWidgetId(widgetid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/commonfiltercolumnsbywidgetid/widgetid/' + widgetid;
var commonfiltercolumns;
return yield this.dataHelper().getAsync(url).then(function (response) {
commonfiltercolumns = JSON.parse(response.result);
return commonfiltercolumns;
});
});
}
getCommonFilterColumnData(cfObj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/commonfiltercolumndata';
return yield this.dataHelper().postAsync(url, cfObj).then(function (response) {
return response;
});
});
}
getCommonFilterTreeData(cfObj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/getcommonfiltertreedata';
return yield this.dataHelper().postAsync(url, cfObj).then(function (response) {
return response;
});
});
}
deleteCommonFilterColumnId(commonfiltercolumnid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/deletecommonfiltercolumn/commonfiltercolumnid/' + commonfiltercolumnid;
return yield this.dataHelper().postAsync(url, commonfiltercolumnid).then(function (response) {
return response;
});
});
}
deleteCommonFilter(commonfilterid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/deletecommonfilter/commonfilterid/' + commonfilterid;
return yield this.dataHelper().postAsync(url, commonfilterid).then(function (response) {
return response;
});
});
}
exportCommonFilter(commonfilterid, portletId) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/exportcommonfilters/commonfilterid/' + commonfilterid + "/portletid/" + portletId;
return yield this.dataHelper().getAsync(url).then(function (response) {
return response;
});
});
}
exportReports() {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/exportreports/';
return yield this.dataHelper().getAsync(url).then(function (response) {
return response;
});
});
}
exportreport(reportid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/exportreport/reportid/' + reportid;
return yield this.dataHelper().getAsync(url).then(function (response) {
return response;
});
});
}
getReportRoles(reportid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/reportroles/reportid/' + reportid;
return yield this.dataHelper().getAsync(url).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
addReportRole(obj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/savereportrole';
return yield this.dataHelper().postAsync(url, obj).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
removeReportRole(obj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/removereportrole';
return yield this.dataHelper().postAsync(url, obj).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
setViewable(reportId, viewAll) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/setasviewable/reportid/' + reportId + '/viewall/' + viewAll;
return yield this.dataHelper().postAsync(url, null).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
saveReportRoleSettings(obj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/savereportrolesetting';
return yield this.dataHelper().postAsync(url, obj).then(function (response) {
if (response.result !== null)
response.result = JSON.parse(response.result);
return response;
});
});
}
refreshStaticObj(reportid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/refreshstaticreportobj/reportid/' + reportid;
return yield this.dataHelper().getAsync(url).then(function (response) {
return response;
});
});
}
saveDynamicFilter(reportid, array) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/savedynamicfilter/' + reportid + "/List";
return yield this.dataHelper().postAsync(url, array).then(function (response) {
return response;
});
});
}
updateReportStatus(reportid, statusid) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/updatereportstatus/reportid/' + reportid + "/statusid/" + statusid;
return yield this.dataHelper().postAsync(url, null).then(function (response) {
return response;
});
});
}
duplicateReport(obj) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/duplicatereport';
return yield this.dataHelper().postAsync(url, obj).then(function (response) {
return response;
});
});
}
exportDynamicFilters(reportId) {
return __awaiter(this, void 0, void 0, function* () {
const url = 'apis/v4/unibase/platform/analytics/exportdynamicfilters/reportid/' + reportId;
return yield this.dataHelper().getAsync(url).then(function (response) {
return response;
});
});
}
static Instance() {
if (this._instance === undefined)
this._instance = new ReportManager();
return this._instance;
}
}
Managers.ReportManager = ReportManager;
})(Managers = Analytics.Managers || (Analytics.Managers = {}));
})(Analytics = Platform.Analytics || (Platform.Analytics = {}));
})(Platform = Unibase.Platform || (Unibase.Platform = {}));
})(Unibase || (Unibase = {}));
var Unibase;
(function (Unibase) {
let Platform;
(function (Platform) {
let Analytics;
(function (Analytics) {
let Components;
(function (Components) {
class WidgetReportviewer extends Components._ReportViewer {
constructor() {
super();
this.PortletWidgetId = 0;
this.widgetmanager = Platform.Widgets.Managers.WidgetManager.Instance();
}
jsFiles() {
return this._jsFiles();
}
cssFiles() {
return this._cssFiles();
}
html(id, containerid) {
return this._html(id.Data.ReportId, containerid);
}
load(id, containerid, callback) {
var reportwidgetdata = id;
if (containerid.includes("div_dashboardportletwidget_")) {
$('.BindData_' + containerid).parents().closest('div._bizgaze_detail_container').removeClass('hidden');
}
else {
var ModalContainers = Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds;
var ContainerId = ModalContainers[ModalContainers.length - 1];
$('#' + ContainerId).removeClass('hidden');
}
$(".Border").find(".cardbody").addClass("bg-white");
$(".Border").find(".Templateheader").addClass(" mx-10 my-0");
Unibase.Platform.Analytics.Components.ReportViewer.Instance().PortletWidgetId = this.PortletWidgetId;
let _PortletWidgetId;
if (Unibase.Themes.Providers.DetailHelper.installedAppId == 0) {
_PortletWidgetId = $('#' + containerid).siblings('#hf_PortletWidgetId').val();
}
if (Unibase.Themes.Providers.DetailHelper.installedAppId != 0) {
_PortletWidgetId = $('#' + containerid).parent().siblings('#hf_PortletWidgetId').val();
}
reportwidgetdata.Data.PortletWidgetId = _PortletWidgetId;
if (_PortletWidgetId != undefined) {
Unibase.Platform.Widgets.Managers.WidgetManager.Instance().getPortletWidget(_PortletWidgetId).then(function (portletresponse) {
if (portletresponse.result.PortletWidgetHeight != null) {
reportwidgetdata.Data.PortletWidgetHeight = portletresponse.result.PortletWidgetHeight;
}
if (portletresponse.result.IsCollapse != null) {
reportwidgetdata.Data.portletWidgetIsCollapse = portletresponse.result.IsCollapse;
}
if (portletresponse.result.PortletWidgetCss != null || portletresponse.result.PortletWidgetCss != '') {
reportwidgetdata.Data.PortletWidgetCss = portletresponse.result.PortletWidgetCss;
}
});
}
this.loadReport(reportwidgetdata.Data.ReportId, reportwidgetdata, containerid, callback);
}
static Instance() {
if (this._instance === undefined)
this._instance = new WidgetReportviewer();
return this._instance;
}
}
Components.WidgetReportviewer = WidgetReportviewer;
})(Components = Analytics.Components || (Analytics.Components = {}));
})(Analytics = Platform.Analytics || (Platform.Analytics = {}));
})(Platform = Unibase.Platform || (Unibase.Platform = {}));
})(Unibase || (Unibase = {}));
var Unibase;
(function (Unibase) {
let Platform;
(function (Platform) {
let Analytics;
(function (Analytics) {
let Components;
(function (Components) {
class UserDesignConfigApps extends Components._ReportViewer {
constructor() {
super(...arguments);
this.PortletWidgetId = 0;
this.totalreportWidgetData = [];
this.ReportId = 0;
}
jsFiles() {
return this._jsFiles();
}
cssFiles() {
return this._cssFiles();
}
html(id, containerid) {
var instance = this;
let html = ``;
return html;
}
load(id, containerid, callback) {
var instance = this;
}
init(containerid) {
var instance = this;
instance.loadConfigSettings(containerid);
}
loadConfigSettings(containerid) {
let reportid = 0;
let totalcontent = '';
var jsfiles = ["apps/transact/managers/inventory/transactsettingmanager.js"];
$(`.${containerid}`).append(`
`);
let height = $(`.${containerid}`).siblings('#hf_portletwidgetheight').val();
if (height != '0px') {
$('.userDesignWidgetCardBody').css({ "height": `` + height + ``, "overflow-x": "hidden" }).addClass("biz-custom-scrollbar");
}
var instance = this;
instance.fileCacheHelper.loadJsFiles(["apps/transact/managers/inventory/transactsettingmanager.js"], () => {
Unibase.Platform.Apps.Managers.AppManager.Instance().getConfigurationApps().then((res) => {
let appdata = res.result.sort(function (a, b) {
var a1 = a.AppGroupName.toLowerCase(), b1 = b.AppGroupName.toLowerCase();
if (a1 == b1)
return 0;
return a1 > b1 ? 1 : -1;
});
let totalcount = res.result.length;
let old_groupname = "";
for (var i = 0; i < appdata.length; i++) {
let icon = '';
let imgurl = '';
var data = res.result[i];
let appname = data.AppTitle;
let appdescription = data.Description;
icon = data.IconName;
imgurl = data.ImageUrl;
let installedappid = data.MyAppId;
let count = i;
let appgroupname = data.AppGroupName;
if (appgroupname == '')
appgroupname = "No Group";
let avatarTxt = "";
let matches = appname.match(/\b(\w)/g);
if (matches.length == 1) {
avatarTxt = $.trim(appname).substr(0, 2).toUpperCase();
}
else {
avatarTxt = matches.join('').slice(0, 2).toUpperCase();
}
if (appgroupname != old_groupname) {
let appgroupnameid = appgroupname.replace(/ /g, "_");
appgroupnameid = appgroupnameid.replace(/&/g, "_");
let groupnamecontent = '';
if (old_groupname != '') {
groupnamecontent = ``;
groupnamecontent = ``;
}
groupnamecontent += `
` + avatarTxt + `
` + appname + ` ` + appdescription + `
`;
totalcontent += groupnamecontent;
old_groupname = appgroupname;
}
else {
let childsetting = `` + avatarTxt + `
` + appname + ` ` + appdescription + `
`;
totalcontent += childsetting;
}
}
$("#userdesignedTreeview").html(totalcontent);
if (screen.width < 1198) {
$(".appname").addClass("font-12");
$(".text-truncate.description-Text").addClass("font-11").removeClass("font-12");
}
});
});
instance.settingsearch(containerid);
}
getform(AppName, InstalledAppId, callback) {
var instance = this;
if (AppName != " ") {
Unibase.Platform.Helpers.NavigationHelper.Instance().loadSettings(InstalledAppId, callback);
}
else {
Bizgaze.Apps.Transact.Managers.TransactSettingManager.Instance().getBranchSettingByInstalledApp(InstalledAppId).then(function (bs_res) {
let Pk_Id = 0;
if (bs_res.result != "" && bs_res.result != null) {
Pk_Id = bs_res.result.BranchSettingId;
}
var FormUniqueId = 'Bizgaze_Extension_Transact_Apps_' + AppName;
Unibase.Platform.Forms.Managers.FormManager.Instance().getFormbyUniqueId(FormUniqueId).then(function (response) {
var successCallBack = {
CallBack: function (id) {
},
Parameters: null,
};
var formviewerObj = {
FormId: response.result.FormId,
AppConfigurationId: 0,
Pk_Value: Pk_Id,
PortletWidgetId: 0,
OnSuccess: successCallBack,
OnFail: null,
OnLoad: null,
FormSize: Platform.Helpers.Size.Medium,
};
Unibase.Platform.Forms.Components.FormViewer.Instance().init(formviewerObj);
instance.navigationHelper.hideLoading();
});
});
}
}
settingsearch(containerid) {
$(".biz-highlight-opacity").mouseover(function () {
$(this).css({ "cursor": "context-menu" });
});
$('.clear_icon').click(function () {
$("#ListSearch").val('');
$('.userdesignedTreeview_' + containerid).find('.report-group-tree-view').css("display", "block");
$('.userdesignedTreeview_' + containerid).find('.report-group-tree-view').find('.lireportgrp-item').css("display", "block");
$(".clear_icon").addClass("d-none");
});
if (($(window).width()) <= 1198) {
$("#userdesignedTreeview").css({ "column-count": "2" });
$(".search-wrapper").css({ "display": "block !important" });
}
if (($(window).width()) <= 576) {
$("#userdesignedTreeview").css({ "column-count": "1" });
$(".search-wrapper").css({ "display": "block !important" });
$(".report-group-tree-view").each(function (index) {
let width = $(this).width();
let maxwidth = $(this).width() - 100;
$(this).find(".report-Header-Title").css("width", width + 'px');
$(this).find(".lireportgrp-item").find(".description-Text").css("max-width", maxwidth + 'px');
});
}
$('#' + containerid).find("#ListSearch").on('keyup', function () {
$(".clear_icon").removeClass("d-none");
var _value = $(this).val().toString(), value = _value.toUpperCase();
if (_value == '') {
$(".clear_icon").addClass("d-none");
}
$('.userdesignedTreeview_' + containerid).find('.report-group-tree-view').each(function () {
let reportName = $(this).find('.lireportgrp-item a').text();
if (reportName.toUpperCase().indexOf(value) > -1) {
$(this).css('display', 'block');
$(this).find('.lireportgrp-item a').each(function () {
let reportName = $(this).text();
let reportGroupName = $(this).find('.a').text();
if (reportName.toUpperCase().indexOf(value) > -1) {
$(this).parent().css('display', 'block');
}
else {
$(this).parent().css('display', 'none');
}
});
}
else {
$(this).css('display', 'none');
}
});
});
}
generatecolor() {
}
static Instance() {
if (this._instance === undefined)
this._instance = new UserDesignConfigApps();
return this._instance;
}
}
Components.UserDesignConfigApps = UserDesignConfigApps;
})(Components = Analytics.Components || (Analytics.Components = {}));
})(Analytics = Platform.Analytics || (Platform.Analytics = {}));
})(Platform = Unibase.Platform || (Unibase.Platform = {}));
})(Unibase || (Unibase = {}));
var Unibase;
(function (Unibase) {
let Platform;
(function (Platform) {
let Analytics;
(function (Analytics) {
let Components;
(function (Components) {
class UserDesignSettingReport extends Components._ReportViewer {
constructor() {
super(...arguments);
this.PortletWidgetId = 0;
this.totalreportWidgetData = [];
this.ReportId = 0;
}
jsFiles() {
return this._jsFiles();
}
cssFiles() {
return this._cssFiles();
}
html(id, containerid) {
var instance = this;
let html = ``;
return html;
}
load(id, containerid, callback) {
var instance = this;
}
init(containerid) {
var instance = this;
instance.loadSettings(containerid);
}
loadSettings(containerid) {
let reportid = 0;
let totalcontent = '';
var jsfiles = ["apps/transact/managers/inventory/transactsettingmanager.js"];
$(`.${containerid}`).append(``);
let height = $(`.${containerid}`).siblings('#hf_portletwidgetheight').val();
if (height != '0px') {
$('.userDesignWidgetCardBody').css({ "height": `` + height + ``, "overflow-x": "hidden" }).addClass("biz-custom-scrollbar");
}
var instance = this;
instance.fileCacheHelper.loadJsFiles(["apps/transact/managers/inventory/transactsettingmanager.js"], () => {
Unibase.Platform.Apps.Managers.AppManager.Instance().getSettingApps().then((res) => {
let appdata = res.result.sort(function (a, b) {
var a1 = a.AppGroupName.toLowerCase(), b1 = b.AppGroupName.toLowerCase();
if (a1 == b1)
return 0;
return a1 > b1 ? 1 : -1;
});
let totalcount = res.result.length;
let old_groupname = "";
for (var i = 0; i < appdata.length; i++) {
let icon = '';
let imgurl = '';
var data = res.result[i];
let appname = data.AppTitle;
let appdescription = data.Description;
icon = data.IconName;
imgurl = data.ImageUrl;
let installedappid = data.MyAppId;
let count = i;
let appgroupname = data.AppGroupName;
if (appgroupname == '')
appgroupname = "No Group";
let avatarTxt = "";
let matches = appname.match(/\b(\w)/g);
if (matches.length == 1) {
avatarTxt = $.trim(appname).substr(0, 2).toUpperCase();
}
else {
avatarTxt = matches.join('').slice(0, 2).toUpperCase();
}
if (appgroupname != old_groupname) {
let appgroupnameid = appgroupname.replace(/ /g, "_");
appgroupnameid = appgroupnameid.replace(/&/g, "_");
let groupnamecontent = '';
if (old_groupname != '') {
groupnamecontent = ` `;
groupnamecontent = ``;
}
groupnamecontent += `
` + avatarTxt + `
` + appname + `
` + appdescription + `
`;
totalcontent += groupnamecontent;
old_groupname = appgroupname;
}
else {
let childsetting = `` + avatarTxt + `
` + appname + ` ` + appdescription + `
`;
totalcontent += childsetting;
}
}
$("#userdesignedTreeview").html(totalcontent);
if (screen.width < 1198) {
$(".appname").addClass("font-12");
$(".text-truncate.description-Text").addClass("font-11").removeClass("font-12");
}
});
});
instance.settingsearch(containerid);
}
getform(AppName, InstalledAppId, callback) {
var instance = this;
if (AppName != " ") {
Unibase.Platform.Helpers.NavigationHelper.Instance().loadSettings(InstalledAppId, callback);
}
else {
Bizgaze.Apps.Transact.Managers.TransactSettingManager.Instance().getBranchSettingByInstalledApp(InstalledAppId).then(function (bs_res) {
let Pk_Id = 0;
if (bs_res.result != "" && bs_res.result != null) {
Pk_Id = bs_res.result.BranchSettingId;
}
var FormUniqueId = 'Bizgaze_Extension_Transact_Apps_' + AppName;
Unibase.Platform.Forms.Managers.FormManager.Instance().getFormbyUniqueId(FormUniqueId).then(function (response) {
var successCallBack = {
CallBack: function (id) {
},
Parameters: null,
};
var formviewerObj = {
FormId: response.result.FormId,
AppConfigurationId: 0,
Pk_Value: Pk_Id,
PortletWidgetId: 0,
OnSuccess: successCallBack,
OnFail: null,
OnLoad: null,
FormSize: Platform.Helpers.Size.Medium,
};
Unibase.Platform.Forms.Components.FormViewer.Instance().init(formviewerObj);
instance.navigationHelper.hideLoading();
});
});
}
}
settingsearch(containerid) {
$(".biz-highlight-opacity").mouseover(function () {
$(this).css({ "cursor": "context-menu" });
});
$('.clear_icon').click(function () {
$("#ListSearch").val('');
$('.userdesignedTreeview_' + containerid).find('.report-group-tree-view').css("display", "block");
$('.userdesignedTreeview_' + containerid).find('.report-group-tree-view').find('.lireportgrp-item').css("display", "block");
$(".clear_icon").addClass("d-none");
});
if (($(window).width()) <= 1198) {
$("#userdesignedTreeview").css({ "column-count": "2" });
$(".search-wrapper").css({ "display": "block !important" });
}
if (($(window).width()) <= 576) {
$("#userdesignedTreeview").css({ "column-count": "1" });
$(".search-wrapper").css({ "display": "block !important" });
$(".report-group-tree-view").each(function (index) {
let width = $(this).width();
let maxwidth = $(this).width() - 100;
$(this).find(".report-Header-Title").css("width", width + 'px');
$(this).find(".lireportgrp-item").find(".description-Text").css("max-width", maxwidth + 'px');
});
}
$('#' + containerid).find("#ListSearch").on('keyup', function () {
$(".clear_icon").removeClass("d-none");
var _value = $(this).val().toString(), value = _value.toUpperCase();
if (_value == '') {
$(".clear_icon").addClass("d-none");
}
$('.userdesignedTreeview_' + containerid).find('.report-group-tree-view').each(function () {
let reportName = $(this).find('.lireportgrp-item a').text();
if (reportName.toUpperCase().indexOf(value) > -1) {
$(this).css('display', 'block');
$(this).find('.lireportgrp-item a').each(function () {
let reportName = $(this).text();
let reportGroupName = $(this).find('.a').text();
if (reportName.toUpperCase().indexOf(value) > -1) {
$(this).parent().css('display', 'block');
}
else {
$(this).parent().css('display', 'none');
}
});
}
else {
$(this).css('display', 'none');
}
});
});
}
generatecolor() {
}
settingsListEditForm(pkid, formid, configureid) {
let id = pkid;
let form = Number(formid);
let configure = configureid;
Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFiles(["platform/forms/components/formviewer/formviewer.js"], function () {
var formviewerobj = {
FormId: form,
Pk_Value: id,
AppConfigurationId: configure,
PortletWidgetId: 0,
OnLoad: null,
OnSuccess: null,
OnFail: null,
FormContainer: null,
FormSize: Unibase.Platform.Helpers.Size.Medium,
OnClose: null,
};
Unibase.Platform.Forms.Components.FormViewer.Instance().init(formviewerobj);
$("#btn_CloseForm_" + formid).click(function () {
Unibase.Platform.Helpers.NavigationHelper.Instance().closePopUp();
});
});
}
static Instance() {
if (this._instance === undefined)
this._instance = new UserDesignSettingReport();
return this._instance;
}
}
Components.UserDesignSettingReport = UserDesignSettingReport;
})(Components = Analytics.Components || (Analytics.Components = {}));
})(Analytics = Platform.Analytics || (Platform.Analytics = {}));
})(Platform = Unibase.Platform || (Unibase.Platform = {}));
})(Unibase || (Unibase = {}));
var Bizgaze,__awaiter,Unibase;(function(Bizgaze){let Apps;(function(Apps){let Crm;(function(Crm){let Components;(function(Components){class SelfDeclaration extends Unibase.Platform.Core.BaseComponent{constructor(){super(...arguments);this._dateTimeHelper=Unibase.Platform.Helpers.DateTimeHelper.Instance()}jsFiles(){return["platform/forms/components/formviewer/formviewer.js","libs/parsley/parsley.min.js"]}cssFiles(){return[]}html(){return""}loadhtml(Containerid){$("."+Containerid).html('