2012-01-17 9 views
0

こんにちは:クリスタル「場合や」私は私が仕事に行くように見えることはできません式のIF Iは、式が書かれるべきだと思うかここで、結晶を助けたり、必要な機能のエラー

If {'GPD_Data_'.Deal No}= [0000,9452] and 
    {'GPD_Data_'.Saving Accepted ?} <> ["1-Accepted","Unknown"] 
then 0 
else {'GPD_Data_'.% Charges in GBP} 
or if {'GPD_Data_'.Deal No}= [9281] and 
     {'GPD_Data_'.Saving Accepted ?} = ["13-Itinerary Changed,6-Cancelled"] 
then 10 
else {'GPD_Data_'.% Charges in GBP} 

式の前にOR IFの部分はうまく動作しますが、この後に他のビットを得ることができない場合、誰かが正しい方向に私を指すことができますか?

答えて

0

問題はOR IFがないと思います。あなたはORと言うことができ、2番目の条件を追加することができますが、別のものが必要なので、elseifまたはinner ifを使う必要があります。

私はこれをテストする方法がありませんが、次のようにいくつかのインデント書式設定とコードを追加してみてください:

If {'GPD_Data_'.Deal No} = [0000,9452] and {'GPD_Data_'.Saving Accepted ?} <> ["1-Accepted","Unknown"] then 
      0 
    else 
     if {'GPD_Data_'.% Charges in GBP} 
      or ({'GPD_Data_'.Deal No}= [9281] and {'GPD_Data_'.Saving Accepted ?} = ["13-Itinerary Changed,6-Cancelled"]) then 
      10 
     else 
      {'GPD_Data_'.% Charges in GBP} 

・ホープ、この作品。

0

カルロスのように、私は問題が少なくとも部分的にはelseの後にor ifの使用によって引き起こされたと思っていますが、他にもいくつか問題があると思います。これを試してみてください:

If {'GPD_Data_'.Deal No} in [0000,9452] and 
    {'GPD_Data_'.Saving Accepted ?} not in ["1-Accepted","Unknown"] 
then 0 
else if {'GPD_Data_'.Deal No}= 9281 and 
     {'GPD_Data_'.Saving Accepted ?} in ["13-Itinerary Changed","6-Cancelled"] 
then 10 
else {'GPD_Data_'.% Charges in GBP} 
0

使用括弧:

If {'GPD_Data_'.Deal No} = [0000,9452] and {'GPD_Data_'.Saving Accepted ?} <> ["1-Accepted","Unknown"] Then 
      0 
    Else (

     If {'GPD_Data_'.% Charges in GBP} OR ({'GPD_Data_'.Deal No}= [9281] AND {'GPD_Data_'.Saving Accepted ?} = ["13-Itinerary Changed,6-Cancelled"]) Then 
      10 
     Else 
      {'GPD_Data_'.% Charges in GBP} 
) 
関連する問題