我正在解决如何在JS控件加载项和NAV之间交换数据。
现在,当我想从JS控件加载项获取数据到NAV时。我从NAV,JS方法和JS方法调用我在NAV中调用方法。见下面的例子。
有一些简单的方法,例如从资产净值第一次调用返回值? 因为我需要一种方法来自JS的数据。
感谢您的帮助。
C / AL代码
d::someMethod()
//I need to work with data from JS here
CurrPage.d.getDataFromJS();
d::receiveDataFromJS(data: Variant)
//here I receive data from JS
JS
function getDataFromJS() {
var result = 'bla bla';
Microsoft.Dynamics.NAV.InvokeExtensibilityMethod('receiveDataFromJS', [result]);
}
答案 0 :(得分:1)
您可以通过事件从插件中返回数据。只要在您的dll中定义事件并重新包含您的插件,它就应该在C / AL中可见。要在JavaScript端触发事件,请使用Microsoft.Dynamics.NAV.InvokeExtensibilityMethod('eventName', [parameters]);
然后,您在此处解析的参数可用于将数据解析到NAV端。希望对您有帮助