0

レコード選択を使用してレコードを取得するために、Crystal Report でカスタム関数を作成する際に混乱しています。

レコード選択で数式を作成すると、使用されたパラメーターに基づいて、生成された SQL クエリに where 句が追加されます。今、プログラムでレコードを抽出するカスタム式を書きたいと思います:

私も関数を書いています:

Function (stringVar st)(
   stringVar selection; 
   if (st <> 'ALL') then (
        selection = st;
    )
    else(
        //In this case the user select only single value, it will fetch the result to that                //particular column value in the table.. otherwise it leaves that particular row..
        selection = "multiple selection";

    )
)

select Expert を使用してレコード選択でカスタム関数を使用するコードは次のようになります。

 if(myfunction({?parameter1}) <> "ALL") then
    (
        // what code should i write to select that particular record...
        if(myfunction({?parameter2})) <> "ALL" ) then
        (
            //do selection from the previously selection of rows which have this parameter
             if(myfunction({?parameter3}) <> "ALL") then
             (
                 //do selection from the previously selection of rows which have this 
                 //parameter
             )
             else (//do something else) 
        )
        else (//do something else)
    )
    else (//do something else)

前もって感謝します。

4

1 に答える 1

0

これにはカスタム関数は必要ありません。2 つの文字列パラメーターがあると仮定すると、ry:

// assumes you have a parameter value of 'All Countries' w/ a value of '0'
( '0' IN {?CountryCodes} OR {table.CountryCode} IN {?CountryCodes} )
// assumes you have a parameter value of 'All Regions' w/ a value of '0'
AND ( '0' IN {?RegionCodes} OR {table.RegionCode} IN {?RegionCodes} )
于 2013-09-02T14:15:46.770 に答える