2016-07-07 2 views
0

나는 무슨 일이 일어나고 있는지에 대해 어이없지 만 누군가가 무슨 일이 일어나는지 알아낼 수 있기를 바라고 있습니다. 나는 SuiteScript 2.0을 사용하고 내가 뭐하는 거지 동적 필드의 내부 ID의의를 찾을 수 :NetSuite SuiteScript 2.0 getSelectOptions 필터 나누기 setValue

var location = saleRec.getField({ 
    fieldId: 'location' 
}).getSelectOptions({ 
    filter: "Test Location", 
    operator: 'is' 
}); 

이 내가 필요로하는 내부 ID를 반환하지만 내가 전화 할 때 :

saleRec.setValue({ 
    fieldId: 'location', 
    value: location[0].value 
}); 

를 오류가 발생합니다 :

{ 
    "error": { 
    "code": "JS_EXCEPTION", 
    "message": "{\"type\":\"error.SuiteScriptError\",\"name\":\"INVALID_FLD_VALUE\",\"message\":\"You have entered an Invalid Field Value 2 for the following field: location\",\"stack\":[\"anonymous(N/recordService)\",\"doPost(SuiteScripts/DemoProject/RESTlet1.js:124)\"],\"cause\":{\"type\":\"internal error\",\"code\":\"INVALID_FLD_VALUE\",\"details\":\"You have entered an Invalid Field Value 2 for the following field: location\",\"userEvent\":null,\"stackTrace\":[\"anonymous(N/recordService)\",\"doPost(SuiteScripts/DemoProject/RESTlet1.js:124)\"]},\"id\":\"\"}" 
    } 
} 

숫자 2는 확실히 필요한 내부 ID입니다. 그러나 이상하게되기 시작합니다. 나는 필터를 제거하고 바로 호출하는 경우 :

var location = saleRec.getField({ 
    fieldId: 'location' 
}).getSelectOptions(); 

그리고 루프를 결과의 배열을 통해 나는 모든 것이 잘 작동해야 할 적절한 내부 ID를 선택하고는 location의 내부 ID를 설정할 수 있습니다. 필터가 location 선택 필드 또는 그와 같은 이상한 부분에서 필터를 제거하는 것 같지만 필터의 의도 된 용도라고 상상할 수 없습니다. 이 버그입니까? 아니면 잘못 사용하고 있습니까? ({: "시험 장소"연산자 : 필터 '는'})

답변

0

그냥 직감, 다시

.getSelectOptions를 실행 해보십시오.

이어서() 값을

.getSelectOptions를받은 후;

사용 가능한 값을 보유하고있는 데이터 객체가 필터링 된 채 버그로 보입니다.

관련 문제