1

我正在使用 REST API 将对象插入 Salesforce。我有一个具有地理位置数据类型的字段。如何使用 java 向该字段插入值?我的示例代码如下。

parishud.put("gps__c",?????);

有两个字段要插入(gps(纬度)gps(经度))但在API中我发现只有一个名称为gps__c的字段

  HttpClient client = new httpclient.HttpClient();
  JSONObject parishud = new JSONObject();
  try {
      parishud.put("Name","ParishudhTest4");
      parishud.put("entitled__c","Yes");

      parishud.put("Comments__c","Comments");
      parishud.put("fallill_count_after__c","5");
      parishud.put("fallill_count_before__c","7");
      parishud.put("influencedcount__c","8");
      parishud.put("toiletusaseperday__c","3");
      parishud.put("parishudhid__c","002");
      parishud.put("Received_NBA_Incentive__c","Yes");
      parishud.put("Received_NREGA_Incentive__c","Yes");

      //parishud.put("gps__c",?????);


    PostMethod postaccount = new PostMethod("https://ap1.salesforce.com/services/data/v20.0/sobjects/Parishudh__c/");
    postaccount.setRequestHeader("Authorization", "OAuth " + accessToken);
    postaccount.setRequestEntity(new StringRequestEntity(parishud.toString(),"application/json", null));
    client.executeMethod(postaccount);
4

1 回答 1

1

Geolocation 字段实际上由 3 个字段组成,其中 2 个可供我们访问。

如果您的字段名称是,gps那么您可以将数据存储在gps__Latitude__sand中gps__Longitude__s(注意开头的双下划线,就像它是一个托管包,结尾是“s”,而不是“c”)。

确保您为 Java 集成用户设置了配置文件级别的安全性,以便能够访问此字段。

如果您需要代码示例 - 您可以查看我的答案如何将 Salesforce 与 Google 地图集成?或例如http://blog.internetcreations.com/2012/09/creating-a-geolocation-trigger-in-salesforce-winter-13/

于 2012-12-13T15:20:52.910 回答