Я пытаюсь сериализовать приложение Qlik Sense (файл .qvf) в объект JSON. Для этого я передаю файл .qvf в приведенном ниже коде, как указано здесь - https://github.com/mindspank/serializeapp
Основная причина этого упражнения - сохранить JSON в Gitlab для контроля версий поскольку мы не можем сохранить .qvf в Git для контроля версий, так как это двоичный файл.
var qsocks = require('qsocks')
var serializeapp = require('serializeapp')
qsocks.Connect()
.then(global => global.openDoc('Executive D:\Users\ddas7071\Documents\Qlik\Sense\Apps\NewDeb.qvf'))
.then(app => serializeapp(app))
.then(result => console.log(result))
serializeapp = require('serializeapp')
const enigma = require('enigma.js')
const WebSocket = require('ws')
enigma.getService('qix', {
schema: require(`./node_modules/enigma.js/schemas/qix/12.67.2.json`),
session: {
host: 'localhost',
port: 4848,
secure: false
},
createSocket: (url) => new WebSocket(url)
})
.then(qix => qix.global.openDoc('Executive
D:\Users\ddas7071\Documents\Qlik\Sense\Apps\NewDeb.qvf'))
.then(app => serializeapp(app))
.then(result => console.log(result))
Но во время выполнения кода (в windows) я сталкиваюсь с приведенной ниже проблемой -
D: \ Users \ ddas7071 \ Desktop \ Novartis_TechnicalDetails \ myfile. js: 12 enigma.getAttribute ('qix', {^
TypeError: enigma.getAttribute не является функцией в Object . (D: \ Users \ ddas7071 \ Desktop \ Novartis_TechnicalDetails \ myfile. js: 12: 8) [90 м в Module._compile (внутренний / modules / cjs / loader. js: 1158: 30) [39 м [90 м at Object.Module._extensions .. js (внутренний / modules / cjs / loader. js: 1178: 10) [39 м [90 м при Module.load (внутренний / modules / cjs / loader. js: 1002 : 32) [39 м [90 м в Function.Module._load (внутренний / modules / cjs / loader. js: 901: 14) [39 м [90 м в Function.executeUserEntryPoint [как runMain] (внутренний /modules/run_main.js:74:12)[39m [90 м по внутреннему / main / run_main_module. js: 18: 47 [39m
Хотя я понимаю ошибку, но не знаю, как это сделать решить это. Примечание. Все предварительные условия уже выполнены.