node-rdlc

0.0.1 • Public • Published

node-rdlc

Node.JS bindings to .NET's ReportViewer (Windows Only)

With this module you can run RDLC reports and populate them with javascript data. It's highly recomended that you read Microsoft's Report Documentation and that you use Report Designer to build your report designs (RDLC files)

There's a lot of documentation on the web on how to create usefull report designs. This documentation will only handle specifics on how to run and pass data to a report from Node.JS, but will assume you know how to design a report.

Install

npm install --save node-rdlc

Usage

var rdlc = require('../index.js')
rdlc ({ report: 'test.rdl' }, function (err, result) {
    if (!!err) throw err;
    var fs = require('fs')
    fs.writeFileSync('test.pdf', result)
})

Populating Data

Basically, there are two ways to pass data: Report parameters (variables) and Report Datasets (tables).

Report Parameters

Populate report parameters by passing setting a parameters object in the configuration object. Each key is a parameter.

var rdlc = require('../index.js')
 
rdlc ({ 
 
    report: 'test.rdl', 
 
    parameters: {
        param1: 1,
        param2: 2,
        param3: 'Hello World!'
    }
 
}, function (err, result) {
    if (!!err) throw err;
    var fs = require('fs')
    fs.writeFileSync('test.pdf', result)
})

Parameters act like variables or constants inside the report. They represent a single value.

NOTE: You have to make sure the RDLC Report is expecting the parameters you send.

Report DataSets

Report datasets are tables accessible inside the report. You should take a look at the examples since they are easily understandable.

TODO: Improve this documentation

var rdlc = require('../index.js')
 
rdlc ({ 
 
    report: 'test.rdl', 
 
    data: {
 
        DataSet1: [
            { name: 'Barry Allen', id: 1 },
            { name: 'Oliver Queen', id: 2 },
            { name: 'Clark Kent', id: 3 }
        ]
 
    }
 
}, function (err, result) {
    if (!!err) throw err;
    var fs = require('fs')
    fs.writeFileSync('test.pdf', result)
})

NOTE: The report must be properly designed to expect the corresponding data format.

Readme

Keywords

none

Package Sidebar

Install

npm i node-rdlc

Weekly Downloads

2

Version

0.0.1

License

none

Last publish

Collaborators

  • ivantodorovich