Salesforce:具有动态价值的领料单(多个)

时间:2012-08-24 12:55:44

标签: salesforce custom-fields

我已在Salesforce中将自定义字段添加到具有选项列表(多个)的帐户。但是,picklist的值应该是从其他对象动态生成的。如果没有,是否可以从本机应用程序(用ruby编写)推送选项列表中的值?

3 个答案:

答案 0 :(得分:1)

我不认为标准控制器支持动态添加可能的选项列表(选择列表)值。

您可以做的是添加文本字段而不是选项列表,并使用visualforce创建自定义页面。使用带有代码扩展名的标准控制器。 创建一个新的自定义对象,用于保存字段的选项列表值(可以重复用于其他字段)。用可能的选项列表值填充它 在页面控制器中,加载该字段的值 在visualforce中,显示自定义字段的选项列表并从控制器加载值 如果需要,可以添加额外的输入字段以手动插入 保存时,将选取列表(或输入框)的值插入自定义字段。

可以找到更详细的指南here

答案 1 :(得分:0)

为什么不在Apex中使用正常的SelectOption List?

public List<SelectOption> getMyPicklist()
{   
    List<SelectOption> options = new List<SelectOption>();
    List<Account> acc = [ Select Id, Name From  Account Limit 10 ];

    for(Account a : acc){
        options.add(new SelectOption(a.Id,a.Name));
    }

    return options;
}

答案 2 :(得分:0)

我必须使用我的数据库中的值更新选项列表(而不是来自某些visualforce页面)。所以我使用Databasedotcom gem对帐户进行了身份验证,它提供了很好的Api来与Salesforce对象(标准和自定义)进行迭代。

 client.authenticate :token => "my-oauth-token", :instance_url => "http://na1.salesforce.com"  #=> "my-oauth-token"

 account = client.materialize("Account")
 account_to_be_updated = account.find(account_id) # here account is same as Instance of Activerecord
 account_to_be_updated.my_picklist = [value1; value2; value3; value4]
 account_to_be_updated.save