2013-03-24 117 views
0

數據I有三個表:查詢與來自窗體和總和

Products(ID,Name,Price)/
Customer(ID, Name, Surname) 
Buys(ID, ID_customer, ID_product) 

我有子窗體的窗體。子表格從Buys表中填入查詢,然後通過ID_customer連接到客戶(ID)。 ID和ID_customer在子窗體上隱藏。

然後我對窗體增加了兩個場/控制:名稱和aPrice它獲取經由ProductsQuery填充:

SELECT Products.Name, Products.Price 
FROM Products 
WHERE (((Products.ID)=[Forms]![PregledKupcev-Form]![NAKUPI-Subform]![ID])); 
在這種情況下

// ID是關於子控件,其保持產品的ID

使用:

=DLookUp("[Name]";"[ProductsQuery]") 

=DLookUp("[Price]";"[ProductsQuery]") 

到目前爲止一切正常,但當我嘗試總結一個控件(本例中爲Price)時,它給了我很多麻煩。

有什麼辦法可以做得更好?

然後我試圖總結的東西aPrice控制到PriceSum控制在窗體的頁腳:

=Sum([Forms]![PregledKupcev-Form]![NAKUPI-subform]![aPrice]) 

和其轉移,形成具有:

=[Forms]![PregledKupcev-Form]![NAKUPI-subform]![PriceSum] 

,但我得到的錯誤..

如何總結子窗體中的價格控制中的值?

圖片: Form

回答

1

比方說,你的主要形式有一個名爲在其中顯示發票編號txtInvoiceNo一個文本框(或任何字段中輸入父錶鏈接到你的子表)。

我們還要說您的主窗體有一個名爲txtInvoiceTotal的文本框,您希望顯示每個子記錄的[價格]值的總和。

設置txtInvoiceTotal文本框控件來源做了DSum()子表上(我已經叫InvoiceLineItems):

=DSum("[Price]","InvoiceLineItems","InvoiceNo=" & [txtInvoiceNo])

After Update事件子窗體的,添加一行到.Requery父窗體的txtInvoiceTotal文本框:

Private Sub Form_AfterUpdate() 
Me.Parent.txtInvoiceTotal.Requery 
End Sub 

看看是否是卓有成效的爲您服務。