表单插件.多语言文本.调用三方翻译接口进行翻译原创
金蝶云社区-rongtao_bie
rongtao_bie
14人赞赏了该文章 294次浏览 未经作者许可,禁止转载编辑于2024年01月22日 12:00:18

【应用场景】

在单据上使用多语言文本字段,输入简体中文,英文自动翻译


【案例演示】

员工,新增多语言文本字段

image.png

多语言文本英文自动翻译成英文

image.png


【实现步骤】

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

using Kingdee.BOS;

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.ComponentModel;

namespace Jac.XkDemo.BOS.Business.PlugIn

{

    /// <summary>

    /// 【表单插件】多语言文本

    /// </summary>

    [Description("【表单插件】多语言文本"), HotUpdate]

    public class MultiLangTextFieldFormPlugIn : AbstractDynamicFormPlugIn

    {

        /// <summary>

        /// 字段标识

        /// </summary>

        const string FieldKey = "FMulLangText_Test";

        public override void DataChanged(BOS.Core.DynamicForm.PlugIn.Args.DataChangedEventArgs e)

        {

            switch(e.Field.Key)

            {

                case FieldKey:

                    LocaleValue lv = e.Field.GetFieldValue(this.Model.DataObject) as LocaleValue;

                    LocaleValue oldValue = e.OldValue as LocaleValue;

                    string cnValue = lv[2052];


                    //lv[1033] = 调用三方接口翻译 cnValue 的值;

                    //示例,翻译成固定英文

                    lv[1033] = "hello";

                    break;

            }


}

    }

}


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

image.png


<3>BOSIDE扩展员工,新增多语言文本字段,注册表单插件,保存元数据,开发完毕。

image.png


image.png



多语言参考贴:https://vip.kingdee.com/article/390913912260561408?productLineId=1&isKnowledge=2

赞 14