每次用户设置新日期(来自 WebService 的数据)时,我都需要重新填充网格。根据事件触发顺序,我在想:
(1) 动作事件:调用一个过程来获取数据,对其进行转换,填充 SDT 并将其放在 WebSession var 上。
(2) 刷新事件:用新值重新构建本地 SDT。
(3) 加载事件:加载网格。
但是,当我构建它时,我可以看到一个警告说:
spc0185:在对 Refresh 事件的调用之间不会保留 Websession 的内容。
而且我可以确认该行为有点奇怪(网格仅在用户第一次更改日期时刷新)。
Event &myDate.ControlValueChanged
composite
setGridJson(&mydate)
Refresh
endcomposite
Endevent
Event Refresh
&mydate = ctod(&websession.get('newDate')) //to refresh the date var
&myJSON = &websession.get('GridJSON')
&mySDT.FromJson(&myJSON)
Endevent
Event Load
for &mySDTItem in &mySDT
&field1 = &mySDTItem.field1
&field2 = &mySDTItem.field2
&field3 = &mySDTItem.field3
LOAD
endfor
Endevent
有什么解决方法吗?每次 &myDate var 更改时如何重新填充网格?
谢谢