我們使用他們的SDK爲SAP開發應用程序。 SAP提供了一個用於更改和處理用戶界面中發生的事件的SDK。VB中的動態編程
例如,通過這個SDK,我們可以捕捉到一個按鈕的點擊,並點擊一下。該編程可以通過VB或C#完成。
這也可用於在預先存在的表單上創建新字段。我們開發了一個特定的應用程序,允許用戶將新字段所需的定義存儲在數據庫表中,並且字段在運行時創建。
到目前爲止,這是很好的。我們現在需要的是,用戶應該能夠在數據庫中存儲字段的驗證代碼,並且應該在運行時執行相同的代碼。
以下是此類事件的例子:
Private Sub SBO_Application_ItemEvent(ByVal FormUID As String, ByRef pVal As SAPbouiCOM.ItemEvent, ByRef BubbleEvent As Boolean) Handles SBO_Application.ItemEvent
Dim oForm As SAPbouiCOM.Form
If pVal.FormTypeEx = "ACC_QPLAN" Then
If pVal.EventType = SAPbouiCOM.BoEventTypes.et_LOST_FOCUS And pVal.BeforeAction = False Then
oProdRec.ItemPressEvent(pVal)
End If
End If
End Sub
Public Sub ItemPressEvent(ByRef pVal As SAPbouiCOM.ItemEvent)
Dim oForm As SAPbouiCOM.Form
oForm = oSuyash.SBO_Application.Forms.GetForm(pVal.FormTypeEx, pVal.FormTypeCount)
If pVal.EventType = SAPbouiCOM.BoEventTypes.et_LOST_FOCUS And pVal.BeforeAction = False Then
If pVal.ItemUID = "AC_TXT5" Then
Dim CardCode, ItemCode As String
ItemCode = oForm.Items.Item("AC_TXT2").Specific.Value
CardCode = oForm.Items.Item("AC_TXT0").Specific.Value
UpdateQty(oForm, CardCode, ItemCode)
End If
End If
End Sub
因此,我們需要在這種情況下什麼是存儲在數據庫中ItemPressEvent給出的代碼,並在運行時執行此。
我知道這不是直接的事情。但我認爲必須有一些方法來完成這些事情。
SDK由COM組件組成。
感謝&問候, 拉胡爾·哈因
沒有人知道答案或者沒有解決方案? – 2010-04-03 17:42:35