动态访问 Salesforce APEX 中的字段
Dynamically Access Fields in Salesforce APEX
我正在编写一个 APEX 触发器来验证对象上的数据输入。我有许多字段遵循类似的命名格式并且都是相同的数据类型:
Field 1
Field 2
etc.
Field 10
我想遍历字段并在验证失败时添加错误:
for (i=1; i<=10; i++){
if !validate(Object.get('Field '+String.valueOf(i)){
\ Here I need code that can add an error to "Field i"
}
}
问题是 Object.get(fieldname) 没有 return 对字段本身的引用。它 return 是该字段中的值。我在这里找到了一个话题
https://developer.salesforce.com/forums/?id=906F000000091aFIAQ
这似乎试图解决这个问题,但没有解决。谁能明确地说这在 salesforce APEX 中可行或不可行?
不可能。您可以 addError()
到您的 whole sObject 但不能到动态引用的字段。结果将是错误将出现在页面顶部而不是此特定字段上。
勾选https://salesforce.stackexchange.com/questions/79291/how-to-use-adderror-with-a-dynamically-derived-field-name
并且有一个想法要投票:https://success.salesforce.com/ideaview?id=08730000000GoC5AAK
我正在编写一个 APEX 触发器来验证对象上的数据输入。我有许多字段遵循类似的命名格式并且都是相同的数据类型:
Field 1
Field 2
etc.
Field 10
我想遍历字段并在验证失败时添加错误:
for (i=1; i<=10; i++){
if !validate(Object.get('Field '+String.valueOf(i)){
\ Here I need code that can add an error to "Field i"
}
}
问题是 Object.get(fieldname) 没有 return 对字段本身的引用。它 return 是该字段中的值。我在这里找到了一个话题
https://developer.salesforce.com/forums/?id=906F000000091aFIAQ
这似乎试图解决这个问题,但没有解决。谁能明确地说这在 salesforce APEX 中可行或不可行?
不可能。您可以 addError()
到您的 whole sObject 但不能到动态引用的字段。结果将是错误将出现在页面顶部而不是此特定字段上。
勾选https://salesforce.stackexchange.com/questions/79291/how-to-use-adderror-with-a-dynamically-derived-field-name 并且有一个想法要投票:https://success.salesforce.com/ideaview?id=08730000000GoC5AAK