reveal-sdk-node
Version:
RevealBI Node.js SDK
90 lines (89 loc) • 3.26 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.RVReportingServicesDataSourceItem = void 0;
const RVDataSourceItem_1 = require("../AbstractClasses/RVDataSourceItem");
const RVReportingServicesRenderMode_1 = require("./RVReportingServicesRenderMode");
const RVReportingServicesDataSource_1 = require("./RVReportingServicesDataSource");
/** Microsoft Reporting Services (MS SSRS) data source item */
class RVReportingServicesDataSourceItem extends RVDataSourceItem_1.RVDataSourceItem {
/** @hidden */
constructor(arg) {
super(arg);
this._parameters = {};
this._path = null;
this._dynamic = null;
this._renderMode = RVReportingServicesRenderMode_1.RVReportingServicesRenderMode.Report;
if (!(arg instanceof RVReportingServicesDataSource_1.RVReportingServicesDataSource)) {
var params = arg.Parameters;
this._path = params["Path"];
this._dynamic = params["Dynamic"];
var renderModeStr = params["RPRenderMode"];
if (renderModeStr) {
this._renderMode = RVReportingServicesRenderMode_1.RVReportingServicesRenderMode[renderModeStr];
}
this._parameters = params;
delete this._parameters["Path"];
delete this._parameters["Dynamic"];
delete this._parameters["RPRenderMode"];
}
else {
this._path = arg.path;
}
}
/** @hidden */
toJson() {
var json = super.toJson();
var params = {
'Path': this._path,
'Dynamic': this._dynamic,
'RPRenderMode': RVReportingServicesRenderMode_1.RVReportingServicesRenderMode[this._renderMode],
};
Object.assign(params, this._parameters);
json['Parameters'] = params;
return json;
}
/** Path to the report */
get path() {
return this._path;
}
set path(value) {
this._path = value;
}
/** */
get dynamic() {
return this._dynamic;
}
set dynamic(value) {
this._dynamic = value;
}
get parameters() {
return this._parameters;
}
set parameters(value) {
this._parameters = value;
}
/**
* Render mode, might be data or report. Data means Reveal will request the report to be exported to CSV and will use that data as regular input data.
* Report means the report will be exported to PDF and rendered that way.
*/
get renderMode() {
return this._renderMode;
}
set renderMode(value) {
this._renderMode = value;
}
/** @hidden */
getType() {
return "RVReportingServicesDataSourceItem";
}
/** @hidden */
_getWrapper() {
let wrapper = super._getWrapper();
wrapper.path(this.path);
wrapper.dynamic(this.dynamic);
wrapper.parameters(this.parameters);
wrapper.renderMode(this.renderMode == RVReportingServicesRenderMode_1.RVReportingServicesRenderMode.Report ? 0 : 1);
return wrapper;
}
}
exports.RVReportingServicesDataSourceItem = RVReportingServicesDataSourceItem;