使用泛型类型'PX.Data.And2'需要2个类型参数

时间:2017-11-13 23:47:43

标签: acumatica

我在处理窗口中为ARTran定义了一个PXSelect:

// public PXSelect

//平等>,

// And2,

// IsNull,

//或

//平等>>>>>>

//的DetailsView;

但我一直收到这个错误......需要帮助。

\ App_RuntimeCode \ UpdateNotificationContacts.cs(18):错误CS0305:使用泛型类型'PX.Data.And2'需要2个类型参数 \ App_RuntimeCode \ UpdateNotificationContacts.cs(18):错误CS0305:使用泛型类型'PX.Data.And2'需要2个类型参数

1 个答案:

答案 0 :(得分:0)

引发了编译错误,因为And2类在查询中只有一个泛型类型参数(Where):

And2<Operator<...>>

Where2 / And2 / Or2在其原型中需要两个泛型类型参数:

And2<Operator<...>, NextOperator<...>>

您的查询Where子句可以分为两组,第一组是单个条件,另一组是使用Or子句连接的2条件。

为此,我更喜欢使用Where2 over And2:

Where2<Where<condition1>, And<condition2, Or<condition3>>>

查询:

PXSelect<ARTran, 
Where<Where2<Where<ARTran.customerID, Equal<Current<UpdateNotificationContactsFilter.customerID>>>, 
             And<Current<UpdateNotificationContactsFilter.contactI‌​D>, IsNull, 
                 Or<ARTranExt.usrContactID, Equal<Current<UpdateNotificationContactsFilter.contactID>>>>>>>