下面是我的XML rdl报告,其中@AccountType是一个选项值列表,为1(特许经营),2(客户),3(两者)
<DataSet Name="dtaReport">
<Query>
<DataSourceName>dsOpenWorksCRM</DataSourceName>
<QueryParameters>
<QueryParameter Name="@AccountType">
<Value>=Parameters!AccountType.Value</Value>
<rd:UserDefined>true</rd:UserDefined>
</QueryParameter>
</QueryParameters>
<CommandText>
<fetch version="1.0" output-format="xml-platform" mapping="logical" distinct="true">
<entity name="account">
<attribute name="name" />
<attribute name="accountid" />
<filter type="and">
<condition attribute="plus_accounttype" operator="eq" value="@AccountType" />
</filter>
</entity>
</fetch>
</CommandText>
如果我选择1或2,那么上面的查询就能正常工作,如果我选择3,我需要改变上面的查询,它同时返回1和2类型的记录。我猜想写一个if条件来改变上面的操作符为 "in",如果我选择3,但不知道如何实现这一点任何帮助?