2009-01-12 67 views
0

我正在編寫一個.Net應用程序,我必須支持用戶定義的公式,可以執行基本數學運算以及從數據庫中的任意表中訪問數據。具有通用DLookup功能的公式分析/評估例程或庫

我有數學部分工作,使用JScript Eval()。

我還沒有決定什麼是一個很好的方法是做通用表查找。 例如,我可以具有式類似
柱:BONUSAMOUNT 公式:{CurrentSalary} * 1.5 * {[SystemSettings] [值] [SettingName = CorpBonus和年份= {年份}]}

因此,在這個例子中,我將用當前表中的列xxx的值替換{xxx}和{Year},並且用第二部分的值替換(從SystemSettings中選擇Value WHERE SettingName ='CorpBonus'AND因此,基本上,我正在尋找非常像MS Access DLookup功能的東西:
DLookup(exp ression,域,[標準])
使用DLookup(「[單價]」,「訂單明細」,「訂單ID = 10248」)

但是,我還需要整體分析例程,它可以告訴是否只是仰望在當前行中,或者查看另一個表。對於支持聚合函數(例如:DAvg,DMax等)以及處理的所有奇怪的邊緣情況也很好。

所以我想知道是否有人知道任何一種現有的庫,或有一個很好的例程,可以處理這個公式解析數據庫查找/聚合函數解析要求。

回答

1

您可以在JScript中實現自己的DLookup函數,「eval」表達式可以訪問它。 「eval」的缺點是用戶可以調用任何其他JScript函數,並且會使整個系統不安全。你能提供關於你的問題的更多細節嗎?