我只是努力通過以下情況 - 有一個數據源添加到axapta 2009中的網格,由querybuildrange過濾。標記篩選網格中的特定數據集
我想通過
datasource_DS.findrecord(specificRecord)
標記由X ++特定的數據集以此爲意,取出過濾器,但不具有過濾器激活的作品! 解決方法刪除篩選器並將所有內容(篩選!)首先添加到臨時表不是我想要的。
我無法想象有沒有辦法完成這項任務?! 在此先感謝!
編輯:上形式
數據源: - ProdRouteJob(JoinSource:ProdTable,鏈接類型:InnerJoin) - ProdTable
含有特定ProdStatus僅數據集應顯示在網格中。 這是由提到的範圍內進行,例如:
prodStatusRange = prodTable_ds.query().dataSourceTable(tablenum(ProdTable)).addRange(fieldnum(ProdTable, ProdStatus));
prodStatusRange.value("((ProdStatus == 0) || (ProdStatus == 1))");
選擇一個特定數據所做,例如:
ProdRouteJob currentProdRouteJob;
;
currentProdRouteJob = ProdRouteJob::findJobId("JOB_12345");
info (currentProdRouteJob.JobId);
prodRouteJob_DS.findRecord(currentProdRouteJob);
的信息功能顯示正確的JobId。 如果我刪除過濾器,findRecord()
選擇數據集,如果不是 - 沒有。 加入DS.research(true);
不會更改此行爲。
以下內容並不十分清楚:「此操作按預期工作,取下過濾器,但不啓用過濾器」。 陳述你的意圖。 – 2010-10-21 09:13:08
'findRecord'不會「標記特定的數據集」,它會選擇一個特定的記錄作爲活動記錄。 – 2010-10-21 09:18:04
對第一條語句的評論:如果我運行代碼,刪除篩選後 - 數據集_選擇_網格中的特定數據集。如果過濾器處於活動狀態,則不會發生指定數據集的選擇。 – Nico 2010-10-21 12:01:53