老师您好!
下面是一个用来选择商品的模式窗口,DoubleClick事件中的代码,总感觉挺呆板的感觉,为每一个窗口写着重复的代码!
还有就是用 Forms("窗口名").Opened = True 来判断窗口,是否不够严谨?还有什么方法来判断录入数据的窗口吗?求优化...谢谢!
Dim tbl As Table = Tables("选择商品_Table1")
Dim nma() As String = {"商品ID","商品名称","型号规格","单位"}
If Forms("销售单").Opened = True Then
If tbl.Current IsNot Nothing Then
Dim dr As Row = Tables("销售单").Current
For i As Integer = 0 To nma.Length - 1
dr(nma(i)) = e.Row(nma(i))
Next
dr("单价") = e.Row("预售价")
End If
ElseIf Forms("销售退货单").Opened = True Then
If tbl.Current IsNot Nothing Then
Dim dr As Row = Tables("销售退货单").Current
For i As Integer = 0 To nma.Length - 1
dr(nma(i)) = e.Row(nma(i))
Next
dr("单价") = e.Row("最近进价")
End If
ElseIf Forms("销售退货明细").Opened = True Then
If tbl.Current IsNot Nothing Then
Dim dr As Row = Tables("销售退货明细_table1").Current
For i As Integer = 0 To nma.Length - 1
dr(nma(i)) = e.Row(nma(i))
Next
dr("单价") = e.Row("最近进价")
End If
ElseIf Forms("进货单").Opened = True Then
If tbl.Current IsNot Nothing Then
Dim dr As Row = Tables("进货单").Current
For i As Integer = 0 To nma.Length - 1
dr(nma(i)) = e.Row(nma(i))
Next
dr("单价") = e.Row("最近进价")
End If
‘...以下还有很多个单据....
END IF