我想按一下按钮刷新siebel中的视图

时间:2013-03-25 08:17:22

标签: siebel escript

我正在使用siebel v 8.0。

我想在点击小程序中的按钮时刷新视图。

单击该按钮时,我需要一些可以刷新视图的浏览器脚本中的代码。

我试过了

1. this.BusComp().InvokeMethod("RefreshRecord");
2. this.BusComp().InvokeMethod("RefreshBusComp");
3. theApplication().InvokeMethod("RefreshBusComp"); 
4. theApplication().GetService("FINS Teller UI Navigation").InvokeMethod ("RefreshCurrentApplet", theApplication(). NewPropertySet(), theApplication().NewPropertySet());

但他们都没有奏效。但我需要刷新整个视图而不是当前的applet。请帮忙。

2 个答案:

答案 0 :(得分:2)

在使用BS:FINS Teller UI Navigation时,尝试将参数“Refresh All”传递为true。

var svcUI = TheApplication().GetService("FINS Teller UI Navigation");
var psIn = TheApplication().NewPropertySet();
var psOut = TheApplication().NewPropertySet();
psIn.SetProperty("Refresh All","Y");
svcUI.InvokeMethod("RefreshCurrentApplet",psIn,psOut);

如果仍然不适合您,您可以尝试使用javascript刷新视图,假设您的应用程序具有高交互性。在javascript中使用window.location.reload()来刷新整个视图。

答案 1 :(得分:1)

拦截Applet上浏览器端脚本上的按钮单击事件,并从浏览器端脚本调用自定义业务服务。在业务服务的服务器端脚本使用

TheApplication().GoToView("Name Of View to Refresh");

将“查看名称”和其他参数从浏览器传递到服务器端以维护上下文,这将使其具有通用性和可重用性。最后,您将刷新View。