我正在開發一個小型公司資訊系統,使用 MS Access 作為前端,SQL Server 2019 Express 作為后端。我現在對觀點有點困惑。
這是我所擁有的:
CREATE FUNCTION dbo.DisplayCurrencyFormat
(
@Amount DECIMAL(10,2),
@Currency INT
)
RETURNS NVARCHAR(100)
AS
BEGIN
RETURN
CASE
WHEN @Currency = 1 THEN FORMAT(@Amount, 'C', 'cs-cz')
WHEN @Currency = 2 THEN FORMAT(@Amount, 'C', 'de-ch')
WHEN @Currency = 3 THEN FORMAT(@Amount, 'C', 'en-us')
WHEN @Currency = 4 THEN FORMAT(@Amount, 'C', 'de-de')
END
END
CREATE VIEW v_PurchaseOrderLines
AS
SELECT tbl1PurchaseOrderDetails.PurchaseOrderDetailID,
tbl1PurchaseOrderDetails.PurchaseOrderID,
tbl1Products.ProductName,
tbl1PurchaseOrderDetails.Config,
dbo.DisplayCurrencyFormat(ListPrice,CurrencyID) AS ListPrice,
tbl1PurchaseOrderDetails.Quantity,
FORMAT(tbl1PurchaseOrderDetails.Discount, 'P0') AS Discount,
dbo.DisplayCurrencyFormat(UnitPrice,CurrencyID) AS UnitPrice,
dbo.DisplayCurrencyFormat(UnitPrice*Quantity,CurrencyID) AS TotalPrice,
FORMAT (tbl1PurchaseOrderDetails.VAT, 'P0') AS VAT,
dbo.DisplayCurrencyFormat(UnitPrice*Quantity*(1 VAT),CurrencyID) AS TotalPriceVAT,
tbl1PurchaseOrderDetails.ExpectedDelivery,
tbl1PurchaseOrderDetails.Notes
FROM tbl1PurchaseOrderDetails JOIN tbl1Products ON tbl1PurchaseOrderDetails.ProductID = tbl1Products.ProductID
;
GO
CREATE VIEW v_PurchaseOrderLines_DE
AS
SELECT tbl1PurchaseOrderDetails.PurchaseOrderDetailID,
tbl1PurchaseOrderDetails.PurchaseOrderID,
tbl1PurchaseOrderDetails.ProductID,
tbl1PurchaseOrderDetails.Config,
tbl1PurchaseOrderDetails.Quantity,
tbl1PurchaseOrderDetails.Discount,
tbl1PurchaseOrderDetails.UnitPrice,
tbl1PurchaseOrderDetails.CurrencyID,
tbl1PurchaseOrderDetails.VAT,
tbl1PurchaseOrderDetails.ListPrice,
dbo.DisplayCurrencyFormat(UnitPrice*Quantity,CurrencyID) AS TotalPrice,
dbo.DisplayCurrencyFormat(UnitPrice*Quantity*(1 VAT),CurrencyID) AS TotalPriceVAT,
tbl1PurchaseOrderDetails.ExpectedDelivery,
tbl1PurchaseOrderDetails.Notes
FROM tbl1PurchaseOrderDetails
;
這作業得很好,但我被困在 2 個視圖中。我無法使用任何帶有 FORMAT 功能的視圖或在我的資料輸入表單中加入,它不會接受任何更改,因此第一個視圖用于只讀表單(查看采購訂單)。但是我仍然需要在我的資料輸入表單上實時查看計算出的總價格,這就是為什么我不能直接從表格中提供資料。
然后使用第二個視圖來編輯采購訂單。
是否有一些解決方法如何在單個視圖中完成所有這些操作,或者我是否為每個像這樣的物體都堅持了 2 個視圖?
非常感謝任何提示。
uj5u.com熱心網友回復:
如果要編輯的基礎表的 PK 包含在視圖中,并且您在鏈接視圖時將其指定為 PK,則可以在 Access 中編輯具有 JOIN 的鏈接視圖。
百分比格式可以在表格中完成。
貨幣格式:您可以通過將貨幣符號放入視圖和表單中的單獨欄位來簡化您的生活和視圖。但它不太完美。:)
如果您可以擺脫串列顯示與編輯的單一視圖,它仍然取決于您的確切要求。這并不總是可能的。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/497020.html
