Select Case e.DataCol.name
Case "休闲大床房_间数","日期","类型","休闲大床房_单价"
If e.DataRow.IsNull("休闲大床房_间数") OrElse e.DataRow.IsNull("日期") OrElse e.DataRow.IsNull("类型") Then
e.DataRow("休闲大床房_单价") = Nothing
e.DataRow("休闲大床房_房价") = Nothing
Else
Dim ColName As String = "休闲大床房" & "_" & e.DataRow("类型")
If DataTables("价目表").DataCols.Contains(ColName ) Then
Dim dr As DataRow = DataTables("价目表").Find("开始日期 <= "& e.DataRow("日期") &"" And "结束日期 = "& e.DataRow("日期") &"")
If e.DataRow("休闲大床房_间数")IsNot Nothing OrElse e.DataRow("类型")IsNot Nothing OrElse e.DataRow("日期")IsNot Nothing Then
e.DataRow("休闲大床房_单价") = dr(ColName )
e.DataRow("休闲大床房_房价") = dr(ColName )*e.DataRow("休闲大床房_间数")
End If
End If
End If
End Select
-----------------------------------------------------------------------------------------------------------------------------------------------
.NET Framework 版本:2.0.50727.6400
Foxtable 版本:2012.11.28.1
错误所在事件:表,房价计算,DataColChanged
详细错误信息:
System.Reflection.TargetInvocationException: 调用的目标发生了异常。 ---> System.InvalidCastException: 从字符串“开始日期 <= 2013/3/2”到类型“Long”的转换无效。 ---> System.FormatException: 输入字符串的格式不正确。
在 Microsoft.VisualBasic.CompilerServices.Conversions.ParseDecimal(String Value, NumberFormatInfo NumberFormat)
在 Microsoft.VisualBasic.CompilerServices.Conversions.ToLong(String Value)
--- 内部异常堆栈跟踪的结尾 ---
在 Microsoft.VisualBasic.CompilerServices.Conversions.ToLong(String Value)
在 Microsoft.VisualBasic.CompilerServices.Operators.AndObject(Object Left, Object Right)
在 UserCode.DataColChanged(DataColEventArgs e)
--- 内部异常堆栈跟踪的结尾 ---
在 System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
在 System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
在 System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks)
在 System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
在 Foxtable.DataTable.O1100l0O01l110O0l00Oll11(Object O0l0O0, DataColumnChangeEventArgs O)
[此贴子已经被作者于2013-4-6 18:08:39编辑过]