簡體   English   中英

戈蘇(導線)

[英]Gosu (Guidewire)

如果我們需要為臨時索賠考慮兩種索賠狀態(例如 - Draft 和 Closed 狀態),那么我們如何使用 Query 來使用這些 state? 我試過 -

var claims = Query.startswith("ClaimNumber", "TMP", false)
.compareIn(Claim#State, {ClaimState.TC_DRAFT, ClaimState.TC_CLOSED}.toArray())
.select()

上述行拋出 null 指針錯誤。 有人可以幫忙嗎?

我相信索賠實體有足夠的數據可以查詢。

我還看到您給出的代碼中缺少“make”語句。 在您的 Gosu Scratchpad 中嘗試以下查詢,

uses gw.api.database.Query
var claims = Query.make(Claim)
  .startsWith("ClaimNumber","TMP",false)
  .compareIn(Claim#State, {ClaimState.TC_DRAFT, ClaimState.TC_CLOSED} as ClaimState[])
  .select()

for(claim in claims){
 print(claim.ClaimNumber)
}

如果您仍然遇到任何問題,請提供您得到的例外情況。

如果我的信息解決了您的問題,請將答案標記為正確。

嘗試使用or阻止

uses gw.api.database.Query
 var queryCliamState= Query.make(entity.Claim)
          .compare("ClaimNumber", Equals, "12345")
         .or(\orCondition -> {
              orCondition.compare("State" , Equals,typekey.ClaimState.TC_DRAFT)
              orCondition.compare("State" , Equals,typekey.ClaimState.TC_CLOSED)
 }) .select()

- 當您進行比較時,請確保 state 等於數據庫字段。

看起來你錯過了make句子:

var claims = Query.make(Claim).startsWith("ClaimNumber", "TMP", false)
    .compareIn(Claim#State, {ClaimState.TC_DRAFT, ClaimState.TC_CLOSED}.toArray())
    .select()

它應該在那之后工作。

暫無
暫無

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

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