qvx

qvx

Node library for reading and writing QlikView qvx files.

Showing:

Popularity

Downloads/wk

0

GitHub Stars

6

Maintenance

Last Commit

6yrs ago

Contributors

1

Package

Dependencies

8

License

MIT

Type Definitions

Tree-Shakeable

No?

Categories

Readme

node-qvx

Read and Write Qlik QVX data using Streams

Status

Build Status

Documentation needs to so please have a look at the tests.

Have a look at https://github.com/kmpm/node-qvxserver for a Hapi based webserver that will give you qvx data.

There is a live demo of this library at https://qvx-demo.herokuapp.com that pulls information from http://www.scb.se/api and converts to qvx.

Installation

npm install

There is a dependency on a module called bignum that uses some native SSL libraries for handling 64 bit integers. This dependency might be tricky to install in windows. Go to https://slproweb.com/products/Win32OpenSSL.html and download the latest full version of OpenSLL and install it to it's default location. That might help.

Examples

Outbound

Have a look at https://github.com/kmpm/node-qvxserver for a Hapi based webserver that will give you qvx data that for example QlikView can read. Also look at tests/outbound.tests.js and test/schema.tests.js.

Since the process is quit simple but quite verbos it's not suitable for the readme but you basically do.

  1. Create a field definition with datatypes
  2. Create a resuable schema instance using these field definitions
  3. From a stream of objects that match the field definition, pipe through the schema instance.

Inbound

This shows a use of Inbound, something that you would do if you needed to read qvx data from somewhere. It's used internally for testing and validation.


var concat = require('concat-stream');
var JSONStream = require('JSONStream');
var fs = require('fs');

var qvx = require('qvx');

var inbound = new qvx.Inbound({recordFormat: 'object'});
var fileStream = fs.createReadStream('test_expressor.qvx');
var stringify = JSONStream.stringify(false);

fileStream
.pipe(inbound)
.pipe(stringify)
.pipe(concat(function (body) {
  console.log(body);
}));

There is currently also a cli that is really quick and dirty. It just takes a qvx as input and outputs the records as arrays.

qvxcat test/fixtures/test_expressor.qvx

This will just print the records as JSON arrays.

Resources

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100
No reviews found
Be the first to rate

Alternatives

No alternatives found

Tutorials

No tutorials found
Add a tutorial