You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在DAC中新增适配用户语言的Description Family列并正确使用PXLocalizableDefault

正确实现方案

你使用PXLocalizableDefault时不需要手动传入用户语言参数,该特性会自动读取当前登录用户的语言配置,自动返回对应翻译的本地化字段值。
修正后的代码如下:

public class InventoryItemExt : PXCacheExtension<PX.Objects.IN.InventoryItem>
{
    #region UsrDescription
        [PXUIField(DisplayName = "Famille description")]
        [PXLocalizableDefault(
            typeof(Search<INItemClass.descr,
                Where<INItemClass.itemClassID,
                Equal<InventoryItem.itemClassID>>>),
            PersistingCheck = PXPersistingCheck.Nothing)]
        public virtual string UsrDescription { get; set; }
        public abstract class usrDescription : PX.Data.BQL.BqlString.Field<usrDescription> { }
    #endregion
}

注意事项

  • 你需要提前在物料类(INItemClass)的多语言翻译维护界面,配置好对应语言的descr字段翻译值,PXLocalizableDefault才能正常拉取到对应语言的描述
  • 该特性默认会从目标字段的本地化翻译表中读取对应语言值,无需额外指定用户语言参数,你原来写的typeof(User.languageName????)属于多余参数,直接删除即可
  • 只有你需要强制指定取某一种固定语言的翻译时,才需要传入第二个语言代码参数,例如"fr-CA"就会固定返回法语加拿大版本的翻译,适配当前用户语言的场景不需要传这个参数

功能对应界面参考:
Description screen

内容的提问来源于stack exchange,提问作者Xavier METRAL

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 07:24:00