Foxtable(狐表)用户栏目专家坐堂 → 【求助】无法将类型为“row”的值转换为类型“DataRow”。的代码修正


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

主题:【求助】无法将类型为“row”的值转换为类型“DataRow”。的代码修正

帅哥哟,离线,有人找我吗?
李孝春
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
【求助】无法将类型为“row”的值转换为类型“DataRow”。的代码修正  发帖心情 Post By:2017/10/16 14:37:00 [只看该作者]

窗体中有四个sqltable    运行故障及代码如下【代码改成按钮事件代码后一样的错误】   麻烦指导下

图片点击可在新窗口打开查看此主题相关图片如下:121.png
图片点击可在新窗口打开查看


图片点击可在新窗口打开查看此主题相关图片如下:12211.png
图片点击可在新窗口打开查看

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:银行卡信用卡管理.zip


代码如下:

If Tables("信用卡管理_Table1").Current IsNot Nothing Then
    If Tables("信用卡管理_Table3").Current("是否分期")="不分期" Then
        MessageBox.Show("当前不分期,取消操作")
        e.Cancel = True
    Else        
        If Tables("信用卡管理_Table3").Current IsNot Nothing Then
            For Each dr As DataRow In Tables("信用卡管理_Table3").Current("是否分期")
                Dim fdr As DataRow = DataTables("银行卡信息").sqlfind("银行卡号 = '" & dr("银行卡号") & "'")
                Dim d As Date = dr("还款期间")
                d = new Date(d.year, d.Month, fdr("还款日"))
                Dim d1 As Date = dr("账单期间")
                d1 = new Date(d1.year, d1.Month, fdr("账单日"))
                For i As Integer = 1 To dr("分期数")
                    Dim ndr As DataRow = DataTables("分期明细").sqlfind("银行卡号 = '" & dr("银行卡号") & "'and 账单编号 = '" & dr("账单编号") & "'And 账单期间 = #" & d1.AddMonths(i) & "#")
                    If ndr Is Nothing Then
                        ndr=Tables("信用卡管理_Table4").AddNew
                        MessageBox.Show("ZHANG")
                    End If
                    ndr("银行卡号") = dr("银行卡号")
                    ndr("银行名称")=dr("银行名称")
                    ndr("每月金额")=dr("每月金额")
                    ndr("每月利息")=dr("每月利息")
                    ndr("账单编号")=dr("账单编号")
                    ndr("分期编号")=dr("分期编号")
                    If d<=d1 Then
                        ndr("还款期间") = d.AddMonths(i+1)
                    Else
                        ndr("还款期间") = d.AddMonths(i)
                    End If
                    ndr("账单期间") = d1.AddMonths(i)
                    ndr("分期序列")=0+i
                    ndr("是否还款")="未还款"
                Next
            Next
        End If
    End If
End If
[此贴子已经被作者于2017/10/16 14:51:30编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/10/16 15:30:00 [只看该作者]

ndr=Tables("信用卡管理_Table4").AddNew

 

改成

 

ndr=Tables("信用卡管理_Table4").DataTable.AddNew


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


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
回复:(有点甜)ndr=Tables("信用卡管理_Table4").Ad...  发帖心情 Post By:2017/10/16 15:49:00 [只看该作者]

谢谢 有点甜老师  问题已经解决 
代码如下:
If Tables("信用卡管理_Table1").Current IsNot Nothing Then
    
    If Tables("信用卡管理_Table3").Current IsNot Nothing Then
        If Tables("信用卡管理_Table3").Current("是否分期")="不分期" Then
            MessageBox.Show("当前不分期,取消操作")
            e.Cancel = True
        Else
            Dim ab As String = Tables("信用卡管理_Table3").Current("账单编号")
            MessageBox.Show(ab)
            MessageBox.Show("是否分期 = '要分期' And 账单编号 ='" & ab & "'")
            For Each dr As DataRow In DataTables("账单分期").sqlSelect("是否分期 = '要分期' And 账单编号 ='" & ab & "'")
                Dim fdr As DataRow = DataTables("银行卡信息").sqlfind("银行卡号 = '" & dr("银行卡号") & "'")
                Dim d As Date = dr("还款期间")
                d = new Date(d.year, d.Month, fdr("还款日"))
                Dim d1 As Date = dr("账单期间")
                d1 = new Date(d1.year, d1.Month, fdr("账单日"))
                For i As Integer = 1 To dr("分期数")
                    Dim ndr As DataRow = DataTables("分期明细").sqlfind("银行卡号 = '" & dr("银行卡号") & "'and 分期编号 = '" & dr("分期编号") & "'And 账单期间 = #" & d1.AddMonths(i) & "#")
                    If ndr Is Nothing Then
                        MessageBox.Show("yu")
                        ndr=DataTables("信用卡管理_Table4").addnew
                    End If
                    MessageBox.Show("很少上")
                    ndr("银行卡号") = dr("银行卡号")
                    ndr("银行名称")=dr("银行名称")
                    ndr("每月金额")=dr("每月金额")
                    ndr("每月利息")=dr("每月利息")
                    ndr("账单编号")=dr("账单编号")
                    ndr("分期编号")=dr("分期编号")
                    If d<=d1 Then
                        ndr("还款期间") = d.AddMonths(i+1)
                    Else
                        ndr("还款期间") = d.AddMonths(i)
                    End If
                    ndr("账单期间") = d1.AddMonths(i)
                    ndr("分期序列")=0+i
                    ndr("是否还款")="未还款"
                Next
            Next
        End If
    End If
End If
DataTables("信用卡管理_Table4").save()
[此贴子已经被作者于2017/10/16 17:55:55编辑过]

 回到顶部