二开实现附件列表直接点击附件文件名预览文件

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

二开实现附件列表直接点击附件文件名预览文件

【应用场景】

方便在线预览,预览操作由 标准的选择附件 再 点击在线预览菜单 简化为 直接点击附件预览


【实现步骤】

<1>编写表单插件和服务插件,代码如下。 

using System.ComponentModel;
using System.Linq;
using System.Reflection;
using Kingdee.BOS.Core.DynamicForm.PlugIn;
using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
using Kingdee.BOS.Core.List.PlugIn;
using Kingdee.BOS.Core.List.PlugIn.Args;
using Kingdee.BOS.JSON;
using Kingdee.BOS.Util;
using Kingdee.BOS.Web.DynamicForm;

namespace DemoPlugin
{
    [Description("附件列表插件扩展"), HotUpdate]
    public class AttachmentListPlugInExt : AbstractListPlugIn
    {
        public override void ListCreateColumns(ListCreateColumnsEventArgs e)
        {
            base.ListCreateColumns(e);
            var attachmentNameCol = e.Columns
                .Select(c => c as JSONObject)
                .FirstOrDefault(c => "FAttachmentName".EqualsIgnoreCase(c["dataIndex"].GetString()));
            //attachmentNameCol["header"] = "11213121212";
            //attachmentNameCol["width"] = 500;

            attachmentNameCol.Put("xColDspCtrlType", "kdlinkbutton");
        }

        public override void EntryButtonCellClick(EntryButtonCellClickEventArgs e)
        {
            base.EntryButtonCellClick(e);

            BarItemClickEventArgs args = new BarItemClickEventArgs("", "", "tbbtn_OnLineView");
            var view = this.View as DynamicWebFormView;
            if (view != null)
            {
                var type = typeof(DynamicWebFormView);
                var prop = type.GetProperty("EventsProxy", BindingFlags.Instance | BindingFlags.NonPublic);
                var proxy = prop.GetGetMethod(true).Invoke(view, null) as DynamicFormViewPlugInProxy;
                proxy.FireBarItemClick(args);
            }
        }
    }
}


<2>拷贝插件组件到应用站点的WebSite\Bin目录下,重启IIS。

<3>BOSIDE扩展附件明细,注册列表插件,保存元数据,开发完毕。


【功能验证】

<1>登录业务站点,打开单据的附件列表,可以看文件名显示成了超链接,点击超链接即可在线预览。



【金蝶云星空BOS二次开发案例演示】

https://vip.kingdee.com/article/94751030918525696



二开实现附件列表直接点击附件文件名预览文件

【应用场景】方便在线预览,预览操作由 标准的选择附件 再 点击在线预览菜单 简化为 直接点击附件预览【实现步骤】<1>编写表单插件和...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息