二开方案.如何限制账表引出操作的数据范围

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

二开方案.如何限制账表引出操作的数据范围

针对部分用户账表的引出数据量过大,导致执行时间过长,占用服务器资源的场景,以下以物料收发明细表为例,以表单插件方式干预用户引出操作的数据范围。


插件代码如下:

/// <summary>
/// 干预引出操作
/// </summary>
[Description("【客户端插件】干预引出操作"), HotUpdate]
public class ExportOperationTestPlugIn : AbstractSysReportPlugIn
{
    /// <inheritdoc />
    public override void BeforeDoOperation(BeforeDoOperationEventArgs e)
    {
        var operation = e.Operation.FormOperation.Operation;
        if (operation.EqualsIgnoreCase("Export")//引出
            || operation.EqualsIgnoreCase("ExportRptAllPage")//引出所有页
            || operation.EqualsIgnoreCase("ExportRptAllPage2OneSheet"))//引出所有页到一个页签
        {
            var customFilter = ((MoveReportModel)e.Operation.View.Model).FilterParameter.CustomFilter;
            var beginDate = Convert.ToDateTime(customFilter["BeginDate"]);
            var endDate = Convert.ToDateTime(customFilter["EndDate"]);
            if ((endDate - beginDate).Days > 30)
            {
                this.View.ShowErrMessage("引出日期范围超过30天,请重新选择日期范围!");
                e.Cancel = true;
            }
        }

        base.BeforeDoOperation(e);
    }
}


设计器中配置:

image.webp


在物料收发明细表点击【引出】操作的效果:

image.webp

根据插件中配置的操作,【引出】、【引出所有页】、【引出所有页到一个页签】操作的数据范围就被限制到了30天之内,可以根据需要自行配置允许的范围

二开方案.如何限制账表引出操作的数据范围

针对部分用户账表的引出数据量过大,导致执行时间过长,占用服务器资源的场景,以下以物料收发明细表为例,以表单插件方式干预用户引出操作...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息