2016-06-24 8 views
0

을 통해 SugarCRM 계정에 부속 패널 레코드 추가 질문 : 계정의 SugarCRM 나머지 API 엔드 포인트를 통해 부속 패널 레코드를 작성하려면 어떻게합니까? 지금까지 촬영REST API

단계 : 나는 "InvoiceHistory"슈가 CRM 스튜디오를 사용하여 명명 된 모듈, "transactionHistory"라는 새로운 패키지를 추가 한

  1. .
  2. 스튜디오를 사용하여 계정 모듈에 일대 다 관계를 추가했습니다.

NetSuite를 사용하여 새 모듈의 레코드에 새 인보이스를 "작성"부속 패널을 사용하여 푸시합니다. 여기 내가 사용하는 코드이다 :

function createSugarTransaction(transaction, token) { 
var url = 'https://crm.techsoft3d.com/rest/v10/Accounts/' + transaction.customer; 
var headers = { 
    "Content-Type": "application/json", 
    "OAuth-Token": token 
}; 
var now = (new Date()).toISOString(); 
var body = {transactionHistory_InvoiceHistory: 
    { 
     create: [{ 
      name: transaction.docId, 
      transaction_date_c: transaction.date, 
      invoice_status_c: transaction.status, 
      due_date_c: transaction.duedate, 
      total_amount_c: transaction.total, 
      amount_due_c: transaction.remaining, 
      start_date_c: transaction.startdate, 
      end_date_c: transaction.enddate 
     }] 
    } 
}; 

var response = nlapiRequestURL(url, JSON.stringify(body), headers, 'PUT'); 
return response; 
} 

트랜잭션 객체 검증되었으며 create: [] 어레이 내의 JSON 오브젝트는 해당 트랜잭션 개체 값이 당 분야 (키)를 매칭하고있다.

설탕에 대한 API 호출을 할 때 나는 성공적으로 인증을 받았으며 맞춤 모듈과 계정에 액세스 할 수 있으므로 문제는 없습니다. 호출이 response에 반환 될 때 그러나, 다음과 같은 오류를 보여주는 것 :

{"error":"no_method","error_message":"Could not find a route with 1 elements"}

내가 레코드를 생성하기 위해 필요한 다른 것의 확실 해요. 설탕의 도움말 문서 및 개발자 커뮤니티에 따르면 이것이 효과가 있습니다. 필드의 배열에 따라 다음에, 개발자 커뮤니티 내의 다른 블로그 게시물에 따르면

http://support.sugarcrm.com/Documentation/Sugar_Developer/Sugar_Developer_Guide_7.6/API/Web_Services/Examples/v10/module_POST/

, 그것은 서브 패널의 이름을 추가하는 것만 큼 간단해야한다 : 나는 슈가 CRM 지원 포털에서 제공하는 기본 정보를 사용하고 있습니다 이 유사하게 "만드는"개체 ... : 1. 내 package_module 이름이 정확하지 않습니다,하지만 난 어디에서 찾을 수 없어요 :

var requestBody = { package_module:create[{name:value}]};

무엇이 잘못 내 초기 생각은 응용 또는 도움 문서 . 2.이 본문에서 구조가 복사되었지만 요청 본문이 제대로 포맷되지 않았습니다. https://developer.sugarcrm.com/2014/02/28/sugarcrm-cookbook2/

도움이 될만한 자료가 있습니다.

+0

의 필드 값을 지정 자체적으로 처음? – random

답변

0

는 문서가 대부분을 통해 보는 엔드 포인트 및 예제

https://crm.techsoft3d.com/rest/v10/help

의 목록을 볼 수 createRelatedRecord API 엔드 포인트를

유형 {sugarurl}/휴식/V10/도움을 시도하여 API url은 POST 페이로드의 값 외에도 원하는 링크 (관계)의 이름을 가져야합니다.

https://crm.techsoft3d.com/rest/v10/Accounts/ {트랜잭션.고객}/링크/accounts_transactionhistory (또는 링크의 이름이 무엇이든)이 엔드 포인트에 대한 문서 당

, 당신은 페이로드 그래서 서브 패널의 레코드가 이미 생성 된

{ "first_name":"Bill", "last_name":"Edwards" }