Uniface中如何访问实体字段值?ORDER.NAME引用报错求助
Uniface中实体字段的正确访问方式
你编译时遇到的警告:
warning: 1000 - Field 'ORDER.NAME' not found
是因为Uniface不支持直接用实体名.字段名的格式访问字段,正确写法需根据使用场景区分:
当前组件内的默认实体实例:如果在实体
ORDER所属组件的触发器、操作中访问,直接写字段名即可:NAMEUniface会自动关联当前上下文的实体实例,无需额外限定。
明确指定实体实例:如果需要指定特定实例(比如多实例场景、跨组件访问),使用实例引用语法:
$entinst(ORDER)->NAME若要访问当前激活的实体实例,也可简写为:
$currententity->NAME函数式灵活访问:如果需要动态指定字段名等灵活场景,可使用
$field函数:$field(ORDER.NAME)
额外排查要点:
- 确认实体
ORDER的定义中确实存在NAME字段,检查拼写、大小写是否与实体定义一致(Uniface虽不严格区分大小写,但拼写错误会导致字段找不到) - 确认实体
ORDER已被正确添加到当前使用的组件中
内容的提问来源于stack exchange,提问作者Mi2830
相关产品推荐
相关产品推荐

