簡體   English   中英

通過Salesforce API創建記錄時出錯

[英]Error while creating a record through salesforce API

在運行以下代碼時,

private static void createAccounts() {

    Itil_b__Incident__c[] records = new Itil_b__Incident__c[5];

    try {

      // create 5 test accounts
      for (int i=0;i<1;i++) {
        Itil_b__Incident__c a = new Itil_b__Incident__c();
        a.setCurrencyIsoCode("USD");
        a.setIsDeleted(Boolean.FALSE);
        a.setItil_b__Age_Minutes__c(29d);
        a.setHas_Managed_Services__c(Boolean.FALSE);
        a.setItil_b__Priority_from_ITIL_Matrix__c("Medium");
        a.setItil_b__Priority__c("Medium");
        a.setItil_b__Description__c("Testing API Descrition");
        a.setRank_Zero__c(Boolean.FALSE);
        a.setItil_b__Close_With_Problem__c(Boolean.FALSE);
        a.setItil_b__Subject__c("Test from API");
        a.setItil_b__Origin__c("Phone");
        a.setItil_b__Age__c("29 Days");
        a.setItil_b__Status__c("New");
        a.setAssigned_for_Today__c(Boolean.FALSE);
        a.setItil_b__Urgency__c("P4 - Low");
        a.setItil_b__Category__c("Request");
        a.setItil_b__Impact__c("Low");
        a.setSeverity__c("Sev4");   
        records[i] = a;
      }

      // create the records in Salesforce.com
      SaveResult[] saveResults = connection.create(records);

      // check the returned results for any errors
      for (int i=0; i< saveResults.length; i++) {
        if (saveResults[i].isSuccess()) {
          System.out.println(i+". Successfully created record - Id: " + saveResults[i].getId());
        } else {  
          Error[] errors = saveResults[i].getErrors();
          for (int j=0; j< errors.length; j++) {
            System.out.println("ERROR creating record: " + errors[j].getMessage());
          }
        }    
      }

    } catch (Exception e) {
      e.printStackTrace();
    }    

  }

我在saveResults行中收到以下錯誤,

[InvalidSObjectFault [ApiQueryFault [ApiFault  exceptionCode='INVALID_TYPE'
 exceptionMessage='Must send a concrete entity type.'
]
 row='-1'
 column='-1'
]
]

我正在通過Java API在自定義sObject [Itil_b__Incident__c]中創建新記錄,能否請您幫助我可能丟失的內容?

檢查您的循環。 您當前擁有for (int i = 0; i < 1; i++) {您的評論說您想創建5個對象,因此應該是for (int i=0; i<5; i++) {

另外,我對Java API不熟悉-我使用的是Python API。 通常情況下,由於我使用的是REST API,因此需要將對象序列化為JSON。 Java API是否會在create方法中為您自動進行JSON序列化? 您的Itil_b__Incident__c對象是否具有返回JSON字符串的toJson()方法?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM