Lotus脚本调用Java代理并在In-Memory-Document中将参数传递给它。代理执行一些计算并在共享文档的属性中报告其进度。表单上的Timer会定期检查表示文档进度的值,并相应地更新UI。
代理人已经取得了一些进展,他说:
doc.replaceItemValue("Percent", String.valueOf(percent));
doc.save(true, false);
表单上的计时器定期加载文档并尝试读取如下值:
Set doc = db.GetDocumentByID(parDocId)
percent = doc.getItemValue("Percent")(0)
Call uidoc.FieldSetText("Percent", percent)
问题是,在代理完全完成处理之前,定时器不会读取代理程序所做的更改。因此,在最终出现100%之前,GUI不会更新。
我想知道是否有更好的方法来做到这一点。
我试图让这些组件通过环境变量进行通信,但那些是我不想使用的限制操作。