2012-02-23 50 views
1

我來了一個問題,我已經搜遍了整個萬維網:訪問2010導航形式查詢屬性

我有一個導航形式,其中有形式。 這些表單用於爲我的查詢提供屬性。

例如:

FormStatus - >要求用戶選擇狀態和拍攝值查詢。

這些查詢生成報告。

主要問題是,現在我的表單處於導航窗體中,該屬性的鏈接不再有效。

鏈接中使用是:Forms!myForm!myProperty

現在我想

Forms!navigationForm!myForm!myProperty 
Me!myForm!myProperty 
Forms!ParentForm!SubForm.Form!FieldName 

沒有什麼工作了!有誰能夠幫助我?

回答

1

作爲過濾表單或報告的一般方法,您可以看到放置表單!在這裏,表單內部的引用在這裏變得相當混亂。

你最好刪除表格!來自你所有的查詢的參考。然後,您創建一個表單,用戶將這些值輸入到該表單中,然後執行browseto命令。

您在這裏遇到的問題是,新的導航表單將新窗體的給定表單換掉。這意味着舊的表單不再被加載。所以,要麼你

A計劃

自卸使用的形式! SQL查詢中的命令。無論如何,這是一個好主意,因爲一些查詢不會因爲一些愚蠢的表單不公開而被打斷。更重要的是查詢可以在應用程序的其他地方使用,而不用擔心某些表單不能被打開。

你放置表格的瞬間!查詢內部的引用是你破壞查詢並迫使該查詢結合到一個必須打開的表單的時刻。

方案b:

轉儲使用新的導航控制系統。請記住,新的導航系統不會加載下一個表格,而是「替換」正在顯示的表格。因此,以前的表單不會再被加載,因此沒有任何表單! ref是允許的。更糟的是,由於導航窗體確實使用了子窗體,所以窗體!引用必須改變。

您當然可以獲取控件的值並在代碼中構建where子句,並在此處使用open clause或open report命令。

最後但並非最不重要的一點,如果您持續不斷地進行折磨,您可以堅持現在使用的不良設計,只需重新編輯並修復所有表格!引用來反映它們現在在父表單中使用,並且所有表單現在都作爲子表單運行。

0

嘗試使用點而不是!之前屬性Forms!navigationForm!myForm.myProperty