powerbi-cli
Version:
Power BI command line interface for managing Power BI Embedded workspace collections
48 lines • 2.17 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var powerbi = require("powerbi-api");
var msrest = require("ms-rest");
var cli_1 = require("./cli");
var config_1 = require("./config");
var program = require("commander");
function CliRebindReport() {
var pkg = require('../package.json');
program.version(pkg.version)
.option('-c, --collection <collection>', 'The Power BI workspace collection')
.option('-w, --workspace <workspace>', 'The Power BI workspace Id')
.option('-k, --accessKey <accessKey>', 'The Power BI workspace collection access key')
.option('-r, --report <reportId>', 'The Power BI report id')
.option('-d, --dataset <datasetId>', 'The Power BI dataset id')
.option('-b --baseUri [baseUri]', 'The base uri to connect to');
program.on('--help', function () {
console.log(' Description:');
console.log('');
console.log(' Rebinds a report with another dataset. Old dataset and new dataset should have the same schema.');
console.log('');
console.log(' Examples:');
console.log('');
console.log(' $ powerbi rebind-report -c <collection> -w <workspace> -k <accessKey>');
});
program.parse(process.argv);
var settings = config_1.Config.merge(program);
if (!(settings.collection && settings.workspace && settings.accessKey && settings.report && settings.dataset)) {
program.help();
return;
}
try {
var credentials = new msrest.TokenCredentials(settings.accessKey, 'AppKey');
var client = new powerbi.PowerBIClient(credentials, settings.baseUri, null);
var params = { datasetId: settings.dataset };
client.reports.rebindReport(settings.collection, settings.workspace, settings.report, params, function (err, result) {
if (err) {
return cli_1.Cli.error(err);
}
cli_1.Cli.success('Rebind report has been completed successfully');
});
}
catch (err) {
cli_1.Cli.error(err);
}
}
exports.default = CliRebindReport;
//# sourceMappingURL=cli-rebind-report.js.map