Case "新增明细"
pause = True
If Tables("订单_产品主表").Current Is Nothing Then '如果Current为Nothing
MessageBox.Show("没有报价资源", Vars("昵称"))
Return "" '则返回
End If
If DataTables.Contains("订单_产品清单") = False Then '如果表C没有加载
DataTables.Load("订单_产品清单") '加载表C
End If
Dim r As Row = Tables("订单_产品主表").Current
If r IsNot Nothing Then
Dim Cols1() As String = {"区域名称", "区域楼层", "产品名称", "长", "宽", "厚", "订单ID" }
For Each c As String In Cols1
If r.IsNull(c) Then
r.DataRow.SetError(c, "不能为空")
MessageBox.Show(c & "不能为空", Vars("昵称"))
Return ""
End If
Next
End If
Dim cmd As New SQLC ommand
cmd.ConnectionNa Me = "2022"
cmd.CommandT ext = "Sel ect * From {系统_数据模块}"
wdt = cmd.Execute Reader()
Dim dr As Data Row
'否则在产品表查找同名的产品行,将找到的行赋值给变量dr
dr = wdt.SQLFind("[模块类别] ='木作报价模块'and [模块名称] = '" & Tables("订单_产品主表").Current("产品分类") & "'")
Dim Value As String = dr("参数_A")
Dim Names(), Values() As String
Names = Value.Split("|")
'If e.Form.Controls("同空间").Checked = True Then
Dim wr As Row = Tables("订单_产品主表").Current
Dim s As String = "报价分类|订单类别|订单信息|客户信息|订单ID|报价ID|客户信息|区域楼层|区域名称|产品订购ID|产品分类|客户信息"
Values = S.Split("|")
For Each Name As String In Names
Dim nr As Row = Tables("订单_产品清单").AddNew
For Index As Integer = 0 To Values.Length - 1 '优点:以后不管增减多少父子表相同字段,只需改变变量S的值即可
nr(Values(Index)) = (Values(Index))
Next
nr("产品_构件名称") = Name
nr("产品模块") = "木作报价"
nr("日期") = Date.Today
If nr("产品_构件名称").Contains("柜体") Then
nr("长") = wr("长")
nr("宽") = wr("宽")
nr("厚") = wr("厚")
nr("数量") = 1
nr("计价单位") = "投影面积"
ElseIf nr("产品_构件名称").Contains("柜门") Then
nr("长") = wr("长")
nr("宽") = wr("宽")
nr("厚") = 22
nr("数量") = 1
nr("计价单位") = "平方米"
ElseIf nr("产品_构件名称").Contains("见光") Then
nr("长") = wr("长")
nr("宽") = wr("厚") + 100
nr("厚") = 18
nr("数量") = 1
nr("计价单位") = "平方米"
ElseIf nr("产品_构件名称").Contains("台面") Then
nr("长") = wr("长")
nr("数量") = 1
nr("计价单位") = "延米"
ElseIf nr("产品_构件名称").Contains("灯光") Then
nr("长") = wr("长")
nr("数量") = 3
nr("计价单位") = "延米"
ElseIf nr("产品_构件名称").Contains("变压") Then
nr("数量") = 1
nr("计价单位") = "套"
ElseIf nr("产品_构件名称").Contains("衣杆") Then
nr("数量") = wr("长") * 2.5
nr("计价单位") = "延米"
ElseIf nr("产品_构件名称").Contains("门铰") Then
nr("数量") = (wr("长") * wr("宽") * 0.0001) / 15
Round2(nr("数量"), 1)
nr("计价单位") = "个"
ElseIf nr("产品_构件名称").Contains("抽") Then
nr("数量") = (wr("长") * wr("宽") * 0.000001) / 3.5
nr("计价单位") = "件"
ElseIf nr("产品_构件名称").Contains("墙板") Then
nr("长") = wr("长")
nr("宽") = wr("宽")
nr("厚") = wr("厚")
nr("数量") = 1
nr("计价单位") = "平方米"
ElseIf nr("产品_构件名称").Contains("线") Then
nr("数量") = wr("长") + 200
nr("计价单位") = "延米"
Else
End If
Next
您的代码依然不全!