2012-09-19 3 views
3

SOAP API 파트너 WSDL을 사용하여 프로그래밍 방식으로 SalesForce에서 사용자를 만들고 싶습니다. 나는이 Java 프로그램을 실행할 때 표시 다음과 같은 출력을 제공합니다, 그러나SOAP 파트너 API를 사용하여 SalesForce '사용자'를 만드는 방법은 무엇입니까?

import com.sforce.soap.partner.Connector; 
import com.sforce.soap.partner.PartnerConnection; 
import com.sforce.soap.partner.QueryResult; 
import com.sforce.soap.partner.SaveResult; 
import com.sforce.soap.partner.sobject.SObject; 
import com.sforce.ws.ConnectionException; 
import com.sforce.ws.ConnectorConfig; 

import com.sforce.soap.partner.sobject.*; 
import com.sforce.soap.partner.*; 
import com.sforce.soap.*; 
import com.sforce.*; 

public class PartnerAPICreateUser { 

    /** 
    * @param args 
    */ 
    public static void main(String[] args) { 

     ConnectorConfig config = new ConnectorConfig(); 
     config.setUsername("[email protected]"); 
     config.setPassword("dhskjhkjgfkjsdhkfjg"); 

     PartnerConnection connection = null; 

     try { 
      SObject user = new SObject(); 

      user.setType("user"); 

      user.setField("Alias", "abcd"); 
      user.setField("DefaultGroupNotificationFrequency", "P"); 
      user.setField("DigestFrequency", "D"); 
      user.setField("Email", "[email protected]"); 
      user.setField("EmailEncodingKey", "ISO-8859-1"); 
      user.setField("LanguageLocaleKey", "English"); 
      user.setField("LastName", "Rau"); 
      user.setField("LocaleSidKey", "En"); 
      user.setField("TimeZoneSidKey", "America/Los_Angeles"); 
      user.setField("Username", "[email protected]"); 
      user.setField("UserPermissionsCallCenterAutoLogin", "true"); 
      user.setField("UserPermissionsMarketingUser", "true"); 
      user.setField("UserPermissionsOfflineUser", "true"); 


      connection = Connector.newConnection(config); 
      SaveResult[] results = connection.create(new SObject[] { user }); 
      System.out.println("Created user: " + results[0].getId()); 

      QueryResult queryResults = connection 
        .query("SELECT Id, Name from User " 
          + "ORDER BY CreatedDate DESC LIMIT 5"); 
      if (queryResults.getSize() > 0) { 
       for (SObject s : queryResults.getRecords()) { 
        System.out.println("Id: " + s.getField("Id") + " - Name: " 
          + s.getField("Name")); 
       } 
      } 

     } catch (ConnectionException ce) { 
      ce.printStackTrace(); 
     } 
    } 
} 

: 이것은 내 코드입니다 '만든 사용자 : 널 (null)'

Created user: null 
Id: 005E0000001fb3vIAA - Name: Rau 
Id: 005E0000001fVTTIA2 - Name: Chatter Expert 
Id: 005E0000001fVU1IAM - Name: Wap Rau 

관리 권한 :-(내가 MyName로 갈 때> 설정> (관리 설정에서) 사용자> 무슨 잘못

enter image description here

당신이 말해 줄 수 프로파일을 관리?

감사합니다,

의 WAP 라우

답변

4

만들기 호출이 오류를 반환하지만, 당신이 사용자를 만들지 않은 이유를 반환 SaveResult 당신이 무언가를 원하는, 당신을 말할 것이다, 그것을 확인하지 않습니다 like

SaveResult[] results = connection.create(new SObject[] { user }); 
if (results[0].isSuccess()) 
    System.out.println("Created user: " + results[0].getId()); 
else 
    System.out.println("Error: " + results[0].getErrors()[0].getStatusCode() + 
         ":" + results[0].getErrors()[0].getMessage()); 
+0

안녕하세요, 수퍼 펠, 너는 왕이야! 나는 문제가 어디로 가고 있는지 이해할 수 있었기 때문에 내 문제를 해결했다. 다시 한번 감사드립니다. – waprau

관련 문제