2016-11-26 31 views
0

作爲我的問題標題,我想篩選用戶已經使用類型CS創建它的orderNbr。如何通過當前用戶登錄過濾SOOrder屏幕上的OrderNbr?

enter image description here

例如:

  1. 用戶Sophak,創建OrderNbr:ARI16-000001
  2. 用戶ZZZ,創建OrderNbr:ARI16-000003
  3. 當用戶登錄Sophak所以orderNbr應只顯示由她創建的CS。但是當用戶管理員登錄時,我想查看所有的訂單號。

我想我應該BQL定製:

public class administrator : Constant<String> 
{ 
    public administrator(): base("Administrator") 
    { } 
} 

[PXDBString(15, IsKey = true, IsUnicode = true, InputMask = ">CCCCCCCCCCCCCCC")] 
[PXDefault()] 
[PXUIField(DisplayName = "Order Nbr.", Visibility = PXUIVisibility.SelectorVisible)] 
[SO.RefNbr(typeof(Search2<SOOrder.orderNbr, LeftJoinSingleTable<Customer, On<SOOrder.customerID, Equal<Customer.bAccountID>, And<Where<Match<Customer, Current<AccessInfo.userName>>>>>, 
LeftJoin<PX.SM.Users, On<SOOrder.createdByID, Equal<PX.SM.Users.pKID>>, 
LeftJoin<PX.SM.UsersInRoles, On<PX.SM.Users.username, Equal<PX.SM.UsersInRoles.username>,Or<PX.SM.UsersInRoles.rolename, Equal<administrator>>>>>>, 
Where<SOOrder.orderType, Equal<Optional<SOOrder.orderType>>, And<Where<SOOrder.orderType, Equal<SOOrderTypeConstants.transferOrder>,Or<Customer.bAccountID, IsNotNull>>>>, 
OrderBy<Desc<SOOrder.orderNbr>>>), Filterable = true)] 
[SO.Numbering()] 
[PX.Data.EP.PXFieldDescription] 

回答

1

你應該先定義BQL查詢的SO.RefNbr與SOOrderEntry BLC擴展中CacheAttached handler屬性來過濾的下拉網格記錄OrderNbr選擇器。

之後一定要額外定製BQL查詢的文檔數據視圖 - 這個步驟需要導航按鈕(首先,上一頁,下一頁,最後)

+0

對不起的適當操作,但有點問題,我理解。 – YSP

+0

我剛剛用新的BQL更新了我的問題。 – YSP

相關問題