public static bool CheckVoucherPermission(Guid iUserID, String strTableName, Guid ID, VoucherPermission permission) { BusinessObject obj = VoucherProvider.GetConfig(strTableName, ID); if (obj != null) { return(CheckVoucherPermission(iUserID, obj.GetID(), permission)); } return(true); }
public void Search( ) { if (BindingObject != null && GridCtrl != null) { if (BindingObject.DataManager.MainObject == null) { return; } BusinessObject mainObj = BindingObject.DataManager.MainObject.DataObject as BusinessObject; BusinessObjectController ctrl = BusinessControllerFactory.GetBusinessController(mainObj.AATableName); ConditionBuilder strBuilder = BindingObject.GenerateQuery(true); if (strBuilder == null || String.IsNullOrWhiteSpace(strBuilder.ToString())) { return; } if (SearchPanel != null) { SearchPanel.GetSearchQuery(strBuilder, SearchPanel); } if (BindingObject.DataManager.Screen.UIManager.View.DataField != null) { GEVouchersInfo config = VoucherProvider.GetConfig(BindingObject.TableName, BindingObject.DataManager.Screen.UIManager.View.DataField.STViewNo); if (config != null && !String.IsNullOrWhiteSpace(config.ConditionString)) { strBuilder.AddCondition(config.ConditionString); } } if (DataStructureProvider.IsTableColumn(BindingObject.TableName, ABCCommon.ABCConstString.colApprovalStatus)) { if (chkNotYetApproved.Checked) { strBuilder.AddCondition(String.Format("{0}<>'{1}'", ABCCommon.ABCConstString.colApprovalStatus, ABCCommon.ABCConstString.ApprovalTypeApproved)); } } if (DataStructureProvider.IsTableColumn(BindingObject.TableName, ABCCommon.ABCConstString.colLockStatus)) { if (chkLocked.Checked) { strBuilder.AddCondition(String.Format("{0}='{1}'", ABCCommon.ABCConstString.colLockStatus, ABCCommon.ABCConstString.LockStatusLocked)); } } if (DataStructureProvider.IsTableColumn(BindingObject.TableName, ABCCommon.ABCConstString.colJournalStatus)) { if (chkNotYetPosted.Checked) { strBuilder.AddCondition(String.Format("{0}<>'{1}'", ABCCommon.ABCConstString.colJournalStatus, ABCCommon.ABCConstString.PostStatusPosted)); } } object datasource = null; Type objType = BusinessObjectFactory.GetBusinessObjectType(GridCtrl.TableName); if (objType != null) { Type typeABCList = typeof(ABCList <>).MakeGenericType(objType); MethodInfo method; if (typeABCList != null) { datasource = ABCBusinessEntities.ABCDynamicInvoker.CreateInstanceObject(typeABCList); method = typeABCList.GetMethod("LoadData", new Type[] { typeof(List <BusinessObject>) }); method.Invoke(datasource, new object[] { ctrl.GetListByQuery(strBuilder.ToString()) }); } } binding.DataSource = datasource; binding.ResetBindings(false); this.GridCtrl.GridDefaultView.BestFitColumns(); for (int i = 0; i < this.GridCtrl.GridDefaultView.DataRowCount; i++) { BusinessObject obj = this.GridCtrl.GridDefaultView.GetRow(i) as BusinessObject; if (obj != null && obj.GetID() == mainObj.GetID()) { this.GridCtrl.GridDefaultView.FocusedRowHandle = i; return; } } } }