2017-03-07 19 views
1

我的代碼:sessionAsSigner評估@DbLookup錯誤處理工作不

var descr = new string('@Unique(@DbLookup("":"";"":"test/demo.nsf";"searchvg";"ARKD')+types[i]+('N";4))'); description = @If(@IsError(sessionAsSigner.evaluate(descr)), "no data", sessionAsSigner.evaluate(descr));

如果沒有錯誤,變量的描述將得到查找的值。 當查找的數據不返回值,變量描述並不得到值「無數據」,並且我得到一個錯誤消息:

異常調用方法NotesSession.evaluate(串)空

+0

將@IsError檢查公式您評估裏面。 –

+0

我試過了:var descr = new String('@ If(@IsError(@Unique(@DbLookup(「」:「」;「」:「test/demo.nsf」;「searchvg」;「ARKD')+ types (@DbLookup(「」:「」;「」:「test/demo.nsf」;「searchvg」;「ARKD」)[i] +('N「; 4)))),」no data「 )+ types [i] +('N「; 4)');但是這給出了相同的結果...... –

+0

')+ types [i] +('should be'+ types [i] +' – teleman

回答

1

試試這個:

var descr = 'tmp := @Unique(@DbLookup("":""; "":"test/demo.nsf"; "searchvg"; "ARKD' + types[i] + 'N"; 4)); @If(@IsError(tmp); ""; tmp)'; 

description = sessionAsSigner.evaluate(descr); 
return description ? description : "No data";