我正在使用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。请帮忙。
答案 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。