Foxtable(狐表)用户栏目专家坐堂 → 为何这两组代码同时放在一起不执行


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

主题:为何这两组代码同时放在一起不执行

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


加好友 发短信
等级:六尾狐 帖子:1290 积分:9820 威望:0 精华:0 注册:2012/9/19 21:13:00
为何这两组代码同时放在一起不执行  发帖心情 Post By:2012/10/25 20:15:00 [只看该作者]

为何这两组代码同时放在一起不执行(DataColChanged)

 

 

Dim dr As DataRow =e.DataRow
Select e.DataCol.Name
    Case "日期","序号"
        If dr.IsNull("日期") OrElse dr.isnull("序号") Then
            dr("编号") = Nothing
        Else
            Dim drs As List(of DataRow) =e.DataTable.Select("日期 =#" & dr("日期") & "# and 序号 ='" & dr("序号") & "'" ,"_Identify")
            Dim i As Integer
            For Each tr As DataRow In drs
                Dim d As Date = tr("日期")
                Dim xh As Integer =tr("序号")
                Dim bh As String =  Format(d,"yyyyMMdd")  & format(xh,"000") '生成编号的前缀
                i =i+1
                tr("编号") = bh & format(i,"000")
            Next
        End If
End Select

 

 

If e.DataCol.Name = "机号"
    If e.DataRow.IsNull("机号") = False
        For Each dr As DataRow In e.DataTable.Select("[机号] Is null And [_Identify] < " & e.DataRow("_Identify"))
            dr("机号") = e.NewValue
        Next
    End If
End If

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.table

[此贴子已经被作者于2012-10-25 20:25:55编辑过]

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


加好友 发短信
等级:童狐 帖子:202 积分:1683 威望:0 精华:0 注册:2011/6/17 16:07:00
  发帖心情 Post By:2012/10/25 23:23:00 [只看该作者]

没有机号列


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


加好友 发短信
等级:三尾狐 帖子:762 积分:6302 威望:0 精华:0 注册:2011/12/1 14:47:00
  发帖心情 Post By:2012/10/26 10:39:00 [只看该作者]

楼主传错附件了:

推测了你的逻辑可能是这样的:

 

Dim dr As DataRow =e.DataRow
Select e.DataCol.Name
    Case "日期","序号"
        If dr.IsNull("日期") OrElse dr.isnull("序号") Then
            dr("编号") = Nothing
        Else
            Dim drs As List(of DataRow) =e.DataTable.Select("日期 =#" & dr("日期") & "# and 序号 ='" & dr("序号") & "'" ,"_Identify")
            Dim i As Integer
            For Each tr As DataRow In drs
                Dim d As Date = tr("日期")
                Dim xh As Integer =tr("序号")
                Dim bh As String =  Format(d,"yyyyMMdd")  & format(xh,"000") '生成编号的前缀
                i =i+1
                tr("编号") = bh & format(i,"000")
            Next
        End If
    Case "机号"
        If dr.IsNull("机号") = False Then
            Dim drs As List (of DataRow) = e.DataTable.Select("[机号] Is null And [ID] < " & e.DataRow("ID") & "")
            For Each dr1 As DataRow In drs
                dr1("机号") = e.NewValue
            Next
        End If
End Select

[此贴子已经被作者于2012-10-26 10:56:42编辑过]

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


加好友 发短信
等级:六尾狐 帖子:1290 积分:9820 威望:0 精华:0 注册:2012/9/19 21:13:00
  发帖心情 Post By:2012/10/26 20:42:00 [只看该作者]

非常谢谢您给我的答案,根据您的答案我已解决:

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1(1).table

 

 

其中:编号为字符,序号为整数,[id]为[_Identify]

[此贴子已经被作者于2012-10-26 20:43:48编辑过]

 回到顶部