动态NAV控制加载项交换数据

时间:2018-01-05 10:03:25

标签: javascript microsoft-dynamics navision microsoft-dynamics-nav

我正在解决如何在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]);   
}

1 个答案:

答案 0 :(得分:1)

您可以通过事件从插件中返回数据。只要在您的dll中定义事件并重新包含您的插件,它就应该在C / AL中可见。要在JavaScript端触发事件,请使用Microsoft.Dynamics.NAV.InvokeExtensibilityMethod('eventName', [parameters]); 然后,您在此处解析的参数可用于将数据解析到NAV端。希望对您有帮助