如何解决在表单的init方法中初始化edit方法的值
我想在表单的init方法内部初始化一个edit方法的值,我这样写:
[Form]
public class foo extends FormRun
{
str paymTermId;
public void init()
{
CustTable custTable = CustTable::find("DE-001");
paymTermId = custTable.paymTermId;
super();
}
edit str edtpaymTermId(boolean set,str _paymTermId)
{
if (set)
{
paymTermId= _paymTermId;
}
return paymTermId ;
}
}
但是当我打开表格时,控件仍然为空。
有什么建议吗?
解决方法
我试图重现该问题,但未成功。对我来说,打开表单时,控件会显示一个值。
它对您不起作用的可能原因是您在错误的公司中打开了表格。在代码中,您从客户DE-001的付款条件中检索要显示在控件中的值。此客户存在于Contoso演示数据中的USMF公司中,付款期限为Net10。如果在该公司中打开表格,则该值将显示在控件中。如果您在另一家公司(例如DAT),则不会显示任何值。
,我发现有两件事是错误的:
- 您是在 super() 之前设置值。应该在之后。
- 你不应该通过字段初始化值,你应该调用编辑方法来初始化。编辑方法有一个布尔 SET 参数,它可以模拟设置值的调用。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。