请问老师:使用内部函数打开网页时出现提示“.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2020.5.29.8
错误所在事件:自定义函数,wyyc
详细错误信息:
Exception has been thrown by the target of an invocation.
Cannot find column -1.”
如何处理。
DateTable如下:
表1:可用车辆 提供车辆列表数据(通过点击区域列出网点,再选择网点列出车牌同时也列出此车牌对应的车架号)
表2:订单 接收并保存订单数据
代码如下:
Dim e As RequestEventArgs = args(0)
Select Case e.Path
Case "wyyc.htm"
Dim wb As New weui
wb.AddForm("","form1","handle.htm") '指定接收表单数据的的页面为handle.htm
With wb.AddInputGroup("form1","ipg1","新增出行订单")
With .AddInput("订单编号","订单编号:","text")
.Value = Functions.Execute("GetOrderID")
.Readonly = True
End With
With .AddInput("用户手机","用户手机:","text")
.Value = e.Cookies("username")
.Readonly = True
End With
With .AddInput("时间","下单时间:","datetime")
.Value = Date.now()
.Readonly = True
End With
End With
With wb.AddInputGroup("form1","ipg2","选择网点可用车辆")
With .AddSelect("dq","地区","|" & DataTables("可用车辆").GetComboListString("地区 "))
.Attribute = """
End With
With .AddSelect("wd","网点","")
.Attribute = """
End With
With .AddSelect("cp","车牌","")
.Attribute = """
End With
.AddSelect("cj","车架","")
End With
With wb.AddInputGroup("form1","ipg2","选择网点可用车辆")
With.AddSelect("dq","地区","|" & DataTables("可用车辆").GetComboListString("地区"))
.Attribute = """
End With
With .AddSelect("wd","网点地址","")
.Attribute = """
End With
With .AddSelect("cp","车牌号","")
.Attribute = """
End With
.AddSelect("cj","车架号","")
End With
With wb.AddButtonGroup("form1","btg1",True)
.Add("btn1", "确定", "button").Attribute= ""
.Add("btn2", "取消", "button","default.htm")
End With
'End With
e.WriteString(wb.Build) '生成网页
Case "getProducts.htm"
Dim vals As String
If e.PostValues.Count = 1 Then
vals = "|" & DataTables("可用车辆").GetComboListString("网点","地区='" & e.PostValues("dq") & "'")
ElseIf e.PostValues.Count = 2 Then
Dim Filter As String = "地区='" & e.PostValues("dq") & "' And 网点='" & e.PostValues("wd") & "'"
vals = "|" & DataTables("可用车辆").GetComboListString("车牌", Filter)
ElseIf e.PostValues.Count = 3 Then
Dim Filter1 As String = "网点='" & e.PostValues("wd") & "' And 车牌='" & e.PostValues("cp") & "'"
vals = "|" & DataTables("可用车辆").GetComboListString("车架", Filter1)
End If
e.WriteString(vals)
Case "handle.htm"
Dim nms() As String = {"订单编号","用户手机","下单时间","取车网点","车牌号","车架号"}
For Each nm As String In nms
If e.PostValues.ContainsKey(nm) = False Then
e.WriteString("请输入" & nm & "!") '返回错误消息
Return"" '必须返回
End If
Next
Dim dr As DataRow = DataTables("订单").AddNew()
For Each nm As String In nms
dr(nm) = e.PostValues(nm)
Next
dr.Save()
e.WriteString("OK") '返回增加成功消息
End Select