如何实现列表自动刷新

栏目:云星空知识作者:金蝶来源:金蝶云社区发布:2024-09-16浏览:1

如何实现列表自动刷新

       部分客户希望动态表单,单据或者列表自动刷新。或者放置超时自动退出登录。目前Cloud可以实现通过插件定时由客户端向服务端发送请求,然后服务端再做刷新或者其他操作。

        需要注意的是,目前此方案不支持报表,包括直接SQL账表、简单账表等。如果是报表相关需要,可以转成动态表单实现。

        具体插件代码如下,下面的方案是注册到需要刷新的单据的列表插件上。刷新的间隔通过para["delay"] = "300000"指定,示例中是300000毫秒,建议刷新间隔是5-10分钟。


    [Description("自动刷新列表")]

    public class AutoRefreshListPlugIn : AbstractListPlugIn
    {
        private const string TestKey = "TestKey";
        public override void AfterBindData(EventArgs e)
        {
            base.AfterBindData(e);
            KeepAlive();
        }

        public void KeepAlive()
        {
            JSONObject para = new JSONObject();
            para["key"] = TestKey;
            para["eventName"] = "CustomEvents";
            var data = new JSONObject();
            para["data"] = data;
            data["refreshData"] = DateTime.Now;
            para["delay"] = "300000";
            this.View.AddAction(JSAction.FireCustomRequest, para);
        }

        public override void CustomEvents(CustomEventsArgs e)
        {
            base.CustomEvents(e);
            if (e.Key.EqualsIgnoreCase(TestKey))
            {
                var data = JSONObject.Parse(e.EventArgs);

                if (data != null && data.ContainsKey("refreshData"))
                {
                    this.View.Refresh();
                }
            }

        }
    }

老师为什么只自动刷新一次,后面就不能自动刷新了呢?


Happy


楼主这个适用于单据吧【emoji】


【emoji】正需要,学习了


【emoji】

如何实现列表自动刷新

部分客户希望动态表单,单据或者列表自动刷新。或者放置超时自动退出登录。目前Cloud可以实现通过插件定时由客户端向服务端发送请...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息