二开案例.表单插件.富文本字段显示编辑界面

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

二开案例.表单插件.富文本字段显示编辑界面

【应用场景】富文本字段是通过三个小点点的小按钮弹出编辑窗体,有用户觉得不是很好操作,那么还可以通过主菜单添加按钮来弹出编辑窗体。

【案例演示】采购申请单,新增一个富文本内容编辑字段,通过主菜单添加按钮来弹出编辑窗体。

【实现步骤】

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

using Kingdee.BOS.Core;

using Kingdee.BOS.Core.DynamicForm;

using Kingdee.BOS.Core.DynamicForm.PlugIn;

using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;

using Kingdee.BOS.Core.Metadata.FieldElement;

using Kingdee.BOS.Util;

using System;

using System.ComponentModel;


namespace Jac.XkDemo.BOS.Business.PlugIn

{

    /// <summary>

    /// 【表单插件】富文本字段显示编辑界面

    /// </summary>

    [Description("【表单插件】富文本字段显示编辑界面"), HotUpdate]

    public class LargeRichTextFieldShowEditFormFormPlugIn : AbstractDynamicFormPlugIn

    {

        public override void BarItemClick(BarItemClickEventArgs e)

        {

            base.BarItemClick(e);

            if (e.BarItemKey.Equals("tbShowEditForm", StringComparison.OrdinalIgnoreCase))

            {

                var fieldKey = "F_Jac_RichEditTips";

                var ctl = this.View.LayoutInfo.GetAppearance(fieldKey);

                var para = new DynamicFormShowParameter();

                para.FormId = FormIdConst.BOS_RichTextEdit;

                para.ParentPageId = this.View.PageId;

                para.CustomParams.Add("FieldKey", fieldKey);

                var entityKey = ((LargeRichTextFieldAppearance)ctl).Field.Entity.Key;

                var row = this.Model.GetEntryCurrentRowIndex(entityKey);

                var allowEdit = this.View.GetFieldEditor(fieldKey, row).Enabled;

                para.CustomParams.Add("AllowEdit", allowEdit.ToString());

                this.View.ShowForm(para);

            }

        }

    }

}


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


<3>BOSIDE扩展采购申请单,新增一个富文本内容编辑字段,主菜单新增一个菜单项,注册表单插件,保存元数据,开发完毕。


如果使用Python插件(参见文末附件),注册方式如下:

#【Python】【表单插件】富文本字段显示编辑界面

import clr

clr.AddReference('mscorlib')

clr.AddReference('Kingdee.BOS.Core')

from System import *

from Kingdee.BOS.Core import *

from Kingdee.BOS.Core.DynamicForm import *

from Kingdee.BOS.Core.DynamicForm.PlugIn import *

from Kingdee.BOS.Core.DynamicForm.PlugIn.Args import *

from Kingdee.BOS.Core.Metadata.FieldElement import *


def BarItemClick(e):

    if (e.BarItemKey.Equals("tbShowEditForm", StringComparison.OrdinalIgnoreCase)):

        fieldKey = "F_Jac_RichEditTips";

        ctl = this.View.LayoutInfo.GetAppearance(fieldKey);

        para = DynamicFormShowParameter();

        para.FormId = FormIdConst.BOS_RichTextEdit;

        para.ParentPageId = this.View.PageId;

        para.CustomParams.Add("FieldKey", fieldKey);

        entityKey = ctl.Field.Entity.Key;

        row = this.Model.GetEntryCurrentRowIndex(entityKey);

        allowEdit = this.View.GetFieldEditor(fieldKey, row).Enabled;

        para.CustomParams.Add("AllowEdit", allowEdit.ToString());

        this.View.ShowForm(para);

#######################################################################




现在可以登录业务站点,打开采购申请单新增界面,点击主菜单上的【显示富文本编辑窗】,就可以弹出富文本的编辑界面啦。














【金蝶云星空BOS二次开发案例演示】https://vip.kingdee.com/article/94751030918525696

【表单插件】富文本字段显示编辑界面.rar

二开案例.表单插件.富文本字段显示编辑界面

【应用场景】富文本字段是通过三个小点点的小按钮弹出编辑窗体,有用户觉得不是很好操作,那么还可以通过主菜单添加按钮来弹出编辑窗体。【...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息