二开案例.表达式.获取多语言文本字段的指定语言文本
【应用场景】
获取多语言文本字段的指定语言文本。
【案例演示】
物料的名称字段为多语言文本字段,分别获取物料名称的中文和英文,并赋值给其它文本字段。
注意:此案例要求您的环境已经启用了英文。
【实现步骤】
<1>BOSIDE扩展物料,新增两个文本字段。
<2>物料的名称字段设置值更新事件,设置完毕后,保存元数据,开发完毕。
获取中文:
前置条件:
len(filter(lambda x:x[1]==2052,FBillHead.ActiveObject['MultiLanguageText']))>0
计算公式:
F_Jac_Text_ZH = filter(lambda x:x[1]==2052,FBillHead.ActiveObject['MultiLanguageText'])[0][2]
获取英文文:
前置条件:
len(filter(lambda x:x[1]==1033,FBillHead.ActiveObject['MultiLanguageText']))>0
计算公式:
F_Jac_Text_EN = filter(lambda x:x[1]==1033,FBillHead.ActiveObject['MultiLanguageText'])[0][2]
【功能验证】
<1>登录业务站点,打开物料新增界面,给物料的名称分别录入中文和英文,此时中英文文本字段已经自动获取到对应语言下的物料名称。
---------------------------------------------------------------------------------------------------------
【数据结构】
以物料为例,多语言字段在单据数据包中的数据结构如下图所示。
例如:
名称字段,对应的属性名是Name,索引是2,获取中文名称的公式:filter(lambda x:x[1]==2052,FBillHead.ActiveObject['MultiLanguageText'])[0][2]
描述字段,对应的属性名是Description,索引是3,获取中文描述的公式:filter(lambda x:x[1]==2052,FBillHead.ActiveObject['MultiLanguageText'])[0][3]
规格型号,对应的属性名是Specification,索引是4,获取中文规格型号的公式:filter(lambda x:x[1]==2052,FBillHead.ActiveObject['MultiLanguageText'])[0][4]
或者filter(lambda x:x[1]==2052,FBillHead.ActiveObject['MultiLanguageText'])[0]['Specification']
---------------------------------------------------------------------------------------------------------
【金蝶云星空BOS二次开发案例演示】https://vip.kingdee.com/article/94751030918525696
二开案例.表达式.获取多语言文本字段的指定语言文本
本文2024-09-23 04:17:08发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-164320.html