目前,我正在设法从应用程序中将对象(图表/表/变量/维度/等等)发布到Qlik集线器。我一直在使用Javascript、Enigma.js,并将应用程序作为mashup扩展托管在Qlik服务器的同一台机器上。
我注意到Qlik中有一个名为createObject()的方法,用于Engima.js中的通用对象,但我已经开始工作,但只在本地创建对象(在应用程序内存中,而不是持久的,而不是在集线器中)。如果我试图调用该对象上的发布()方法,就会收到一个“坏请求”错误。
这是Engima.js:https://github.com/qlik-oss/enigma.js的回购。和API模式:https://github.com/qlik-oss/enigma.js/blob/master/schemas/12.1477.0.json
如果被困住了,任何帮助都是非常感谢的。
谢谢,
哑光
我尝试过使用createObject()方法:
"CreateObject": {
"In": [{ "Name": "qProp","DefaultValue": {"qInfo": {"qId": "", "qType": ""}, "qExtendsId": "", "qMetaDef": {}, "qStateName": ""} }],
"Out": [{ "Name": "qInfo" }]
}in tandem with publish() which is for Generic Objects in Qlik:
"Publish": {
"In": [],
"Out": []
}但是收到一个坏请求错误。
发布于 2022-11-12 00:03:50
这里可能有误会(假设我没有误读)。您不能发布单个对象(图表、工作表、书签等)。到集线器的方式和发布应用程序的方式一样。这是因为Qlik对象是特定于单个应用程序的。一个图表不能从一个应用程序中消除歧义--即使你从一个应用程序复制并粘贴图表到另一个应用程序,它实际上只是创建一个新的深拷贝图表。
考虑到这一点,剩下的选项取决于最终目标和您正在使用的Qlik感觉版本。如果您使用的是Qlik SaaS,那么您可以“监视集线器”您的图表,如下所示:

。

但是,如果在Windows上使用Qlik,则无法做到这一点(在撰写本文时)。您可以做的是创建一个mashup,以显示来自不同应用程序的图表,同时仍然能够执行安全规则并完全控制外观(请参阅有关mashup这里的更多信息)。您可以考虑的另一个解决方案(通过更多的精力和复杂性)是使用动态视图,允许您将多个单独应用程序的图表嵌入到一个“父”应用程序(更多这里)中。
https://stackoverflow.com/questions/74212777
复制相似问题