Foxtable(狐表)用户栏目专家坐堂 → 组合框代码


  共有3153人关注过本帖树形打印复制链接

主题:组合框代码

帅哥哟,离线,有人找我吗?
Hyphen
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:5015 积分:25363 威望:0 精华:0 注册:2015/8/18 9:21:00
  发帖心情 Post By:2016/1/25 16:26:00 [只看该作者]

Dim filter As String = "HTBH = '" & e.DataRow("HTBH")  & "'And 年度 < '" & e.DataRow("年度") & "'"

 回到顶部
帅哥哟,离线,有人找我吗?
爱相随
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:929 积分:6500 威望:0 精华:0 注册:2014/6/25 10:48:00
  发帖心情 Post By:2016/1/25 17:30:00 [只看该作者]

以下是引用blsu33在2016/1/25 15:07:00的发言:
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.Data.EvaluateException: Cannot find column [lx].没找到这个列

明明被引用的表就有“LX”这一列,而表名也没错,真没搞懂在哪里。


 回到顶部
帅哥哟,离线,有人找我吗?
爱相随
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:929 积分:6500 威望:0 精华:0 注册:2014/6/25 10:48:00
  发帖心情 Post By:2016/1/25 17:46:00 [只看该作者]

If e.DataCol.Name = "HTH" Then
   Dim filter As String = "HTH = '" & e.DataRow("HTH")  & "'And 年度 = '" & e.DataRow("年度") & "'"
    e.DataRow("本金本年增加") = DataTables("DKFKB").Compute("sum(XFJE)",filter)
    e.DataRow("本金本年减少") = DataTables("HBFX").Compute("sum(BJ)",filter)
End If

If e.DataCol.Name = "HTH" Then
   Dim filter1 As String
   Dim filter2 As String = "HTH = '" & e.DataRow("HTH")  & "'And 年度 = '" & e.DataRow("年度") & "'"
    e.DataRow("一季度利息") = DataTables("支付利息").Compute("sum(LX)",filter2 And filter1 = "一季度")
    e.DataRow("二季度利息") = DataTables("支付利息").Compute("sum(LX)",filter2 And filter1 = "二季度")
    e.DataRow("三季度利息") = DataTables("支付利息").Compute("sum(LX)",filter2 And filter1 = "三季度")
    e.DataRow("四季度利息") = DataTables("支付利息").Compute("sum(LX)",filter2 And filter1 = "四季度")

   
End If

If e.DataCol.Name = "HTH" Then
   Dim filter As String = "HTH = '" & e.DataRow("HTH")  & "'And 年度 < '" & e.DataRow("年度") & "'"
    e.DataRow("本金年初余额") = DataTables("DKFKB").Compute("sum(XFJE)",filter) - e.DataRow("本金本年减少") = DataTables("HBFX").Compute("sum(BJ)",filter)
End If

 

 

老师,上述代码执行后提示以下错误:是什么错误呢,是数据类型错误吗?Conversion from string "HTH = '0002'And 年度 = '2015'" to type 'Boolean' is not valid

 麻烦老师帮我看看是什么错误,谢谢!!

 

.NET Framework 版本:2.0.50727.3655
Foxtable 版本:2015.11.2.1
错误所在事件:表,DKHTB, DataColChanged
详细错误信息:
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.InvalidCastException: Conversion from string "HTH = '0002'And 年度 = '2015'" to type 'Boolean' is not valid. ---> System.FormatException: Input string was not in a correct format.
   at Microsoft.VisualBasic.CompilerServices.Conversions.ParseDouble(String Value, NumberFormatInfo NumberFormat)
   at Microsoft.VisualBasic.CompilerServices.Conversions.ToBoolean(String Value)
   --- End of inner exception stack trace ---
   at Microsoft.VisualBasic.CompilerServices.Conversions.ToBoolean(String Value)
   at UserCode.DataColChanged(DataColEventArgs e)
   --- End of inner exception stack trace ---
   at System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
   at System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
   at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks)
   at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   at Foxtable.DataTable.oo0_o_o_(DataCol A_0)

[此贴子已经被作者于2016/1/25 17:51:55编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
爱相随
  14楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:929 积分:6500 威望:0 精华:0 注册:2014/6/25 10:48:00
  发帖心情 Post By:2016/1/25 17:52:00 [只看该作者]

System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.Data.EvaluateException: Cannot find column [lx].没找到这个列 找到原因了,谢谢!!
[此贴子已经被作者于2016/1/25 17:53:05编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
Hyphen
  15楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:5015 积分:25363 威望:0 精华:0 注册:2015/8/18 9:21:00
  发帖心情 Post By:2016/1/25 18:06:00 [只看该作者]

Dim filter As String = "HTH = '" & e.DataRow("HTH")  & "' And 年度 = '" & e.DataRow("年度") & "'"

关键字和引号之间用空格分开

 回到顶部
帅哥哟,离线,有人找我吗?
爱相随
  16楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:929 积分:6500 威望:0 精华:0 注册:2014/6/25 10:48:00
  发帖心情 Post By:2016/1/26 9:48:00 [只看该作者]

老师,还是不行啊


 回到顶部
帅哥哟,离线,有人找我吗?
Hyphen
  17楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:5015 积分:25363 威望:0 精华:0 注册:2015/8/18 9:21:00
  发帖心情 Post By:2016/1/26 9:55:00 [只看该作者]

上传例子测试

 回到顶部
帅哥哟,离线,有人找我吗?
爱相随
  18楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:929 积分:6500 威望:0 精华:0 注册:2014/6/25 10:48:00
  发帖心情 Post By:2016/1/26 10:01:00 [只看该作者]

已经分隔开了,还是不行啊。

If e.DataCol.Name = "HTH" Then
   Dim filter As String = "HTH = '" & e.DataRow("HTH")  & "' And 年度 = '" & e.DataRow("年度") & "'"
    e.DataRow("本金本年增加") = DataTables("DKFKB").Compute("sum(XFJE)",filter)
    e.DataRow("本金本年减少") = DataTables("HBFX").Compute("sum(BJ)",filter)
End If

If e.DataCol.Name = "HTH" Then
   Dim filter1 As String
   Dim filter2 As String = "HTH = '" & e.DataRow("HTH")  & "' And 年度 = '" & e.DataRow("年度") & "'"
    e.DataRow("一季度利息") = DataTables("支付利息").Compute("sum(LX)",filter2 And filter1 = "一季度")
    e.DataRow("二季度利息") = DataTables("支付利息").Compute("sum(LX)",filter2 And filter1 = "二季度")
    e.DataRow("三季度利息") = DataTables("支付利息").Compute("sum(LX)",filter2 And filter1 = "三季度")
    e.DataRow("四季度利息") = DataTables("支付利息").Compute("sum(LX)",filter2 And filter1 = "四季度")

   
End If

If e.DataCol.Name = "HTH" Then
   Dim filter As String = "HTH = '" & e.DataRow("HTH")  & "' And 年度 < '" & e.DataRow("年度") & "'"
    e.DataRow("本金年初余额") = DataTables("DKFKB").Compute("sum(XFJE)",filter) -  DataTables("HBFX").Compute("sum(BJ)",filter)
End If


 回到顶部
帅哥哟,离线,有人找我吗?
爱相随
  19楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:929 积分:6500 威望:0 精华:0 注册:2014/6/25 10:48:00
  发帖心情 Post By:2016/1/26 10:21:00 [只看该作者]

 

老师,是这一段代码有错,总表A中,HTH、年度是列,一季度利息、二季度利息、三季度利息、四季度利息是多层表头,对应明细表C,表C有HTH、年度、季度列,现在是HTH、年度对应了,季度利息不对应,就是表C季度列要对应表A的四列。请问怎么处理啊。

If e.DataCol.Name = "HTH" Then

   Dim filter1 As String

   Dim filter2 As String = "HTH = '" & e.DataRow("HTH")  & "' And 年度 = '" & e.DataRow("年度") & "'"

    e.DataRow("一季度利息") = DataTables("支付利息").Compute("sum(LX)",filter2 And filter1 = "一季度")

    e.DataRow("二季度利息") = DataTables("支付利息").Compute("sum(LX)",filter2 And filter1 = "二季度")

    e.DataRow("三季度利息") = DataTables("支付利息").Compute("sum(LX)",filter2 And filter1 = "三季度")

    e.DataRow("四季度利息") = DataTables("支付利息").Compute("sum(LX)",filter2 And filter1 = "四季度")

 

   

End If

 回到顶部
帅哥哟,离线,有人找我吗?
Hyphen
  20楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:5015 积分:25363 威望:0 精华:0 注册:2015/8/18 9:21:00
  发帖心情 Post By:2016/1/26 10:25:00 [只看该作者]

e.DataRow("一季度利息") = DataTables("支付利息").Compute("sum(LX)",filter2 & " and  季度列 = '一季度'")

 回到顶部
总数 28 上一页 1 2 3 下一页