Foxtable(狐表)用户栏目专家坐堂 → [求助]复制


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

主题:[求助]复制

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


加好友 发短信
等级:五尾狐 帖子:1005 积分:5955 威望:0 精华:0 注册:2015/6/18 5:15:00
[求助]复制  发帖心情 Post By:2016/7/4 22:16:00 [只看该作者]

老师好
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:复制.txt


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/7/4 22:22:00 [只看该作者]

Select Case e.DataCol.name
    Case "客户ID","客户","客户分类"
        If e.DataRow.IsNull("客户") = False AndAlso e.DataRow.IsNull("客户") = False Then          
            Dim dr As DataRow = DataTables("客户供应商数据汇总").Find("客户 = '" & e.DataRow("客户")  & "' and 客户分类 = '" & e.DataRow("客户分类") & "'")
            If dr Is Nothing Then
                dr = DataTables("客户供应商数据汇总").AddNew
                dr("客户") = e.DataRow("客户")              
                dr("客户分类") = e.DataRow("客户分类")              
            End If
            dr("客户ID") = e.DataRow("客户ID")
         
        End If
End Select


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


加好友 发短信
等级:五尾狐 帖子:1005 积分:5955 威望:0 精华:0 注册:2015/6/18 5:15:00
  发帖心情 Post By:2016/7/4 22:51:00 [只看该作者]


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

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/7/4 23:02:00 [只看该作者]

Select Case e.DataCol.name
    Case "客户ID","客户","客户分类"
        If e.DataRow.IsNull("客户") = False AndAlso e.DataRow.IsNull("客户分类") = False AndAlso e.DataRow.Isnull("客户id") = False Then
            If e.DataRow("客户分类") = "销售" OrElse e.DataRow("客户分类") = "采购" Then
                Dim dr As DataRow = DataTables("客户供应商数据汇总").Find("客户 = '" & e.DataRow("客户")  & "' and 客户分类 = '" & e.DataRow("客户分类") & "'")
                If dr Is Nothing Then
                    dr = DataTables("客户供应商数据汇总").AddNew
                    dr("客户") = e.DataRow("客户")
                    dr("客户分类") = e.DataRow("客户分类")
                End If
                dr("客户ID") = e.DataRow("客户ID")
            End If
        End If
End Select

 回到顶部
帅哥哟,离线,有人找我吗?
江南小城
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1005 积分:5955 威望:0 精华:0 注册:2015/6/18 5:15:00
  发帖心情 Post By:2016/7/6 12:47:00 [只看该作者]

Select Case e.DataCol.Name
    Case "姓名"
        e.DataRow("字母") = GetPy(e.NewValue, True)  
   Case "客户供应商"
        e.DataRow("客户代码") = GetPy(e.NewValue, True)      
End Select
老师好,我重置"客户供应商"列上面代码报错。

.NET Framework 版本:2.0.50727.3655
Foxtable 版本:2016.6.13.1
错误所在事件:表,通讯录, DataColChanged
详细错误信息:
Exception has been thrown by the target of an invocation.
Object reference not set to an instance of an object.


[此贴子已经被作者于2016/7/6 12:50:07编辑过]

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/7/6 13:45:00 [只看该作者]

If e.NewValue <> Nothing Then

Select Case e.DataCol.Name
    Case "姓名"
        e.DataRow("字母") = GetPy(e.NewValue, True)  
   Case "客户供应商"
        e.DataRow("客户代码") = GetPy(e.NewValue, True)      
End Select

End If


 回到顶部
帅哥哟,离线,有人找我吗?
江南小城
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1005 积分:5955 威望:0 精华:0 注册:2015/6/18 5:15:00
  发帖心情 Post By:2016/7/6 15:26:00 [只看该作者]

Select e.DataCol.Name
    Case "群组分类"
        If e.DataRow.IsNull("群组分类") Then
            e.DataRow("客户ID") = Nothing
        Else
            Dim lb As String = e.DataRow("群组分类")
            Dim max As String = e.DataTable.Compute("Max(客户ID)","群组分类 = '" & lb & "' And 编号<> '" & e.DataRow("编号") & "'") '取得该类别的最大编号
            If max > "" Then
                e.DataRow("客户ID") = GetPy(lb, True).SubString(0, 1) & format(cint(max.SubString(1))+1, "000")
            Else
                e.DataRow("客户ID") = GetPy(lb, True).SubString(0, 1) & format(1, "000")
            End If
        End If
End Select



老师,希望重置"群组分类"列"客户ID"列不发生变化或只修正错误的编号。


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


加好友 发短信
等级:管理员 帖子:47449 积分:251065 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2016/7/6 16:19:00 [只看该作者]

Select e.DataCol.Name
    Case "群组分类"
        If e.DataRow.IsNull("群组分类") Then
            e.DataRow("客户ID") = Nothing
        Elseif e.DataRow.Isnull("客户ID") Then
            Dim lb As String = e.DataRow("群组分类")
            Dim max As String = e.DataTable.Compute("Max(客户ID)","群组分类 = '" & lb & "' And 编号<> '" & e.DataRow("编号") & "'") '取得该类别的最大编号
            If max > "" Then
                e.DataRow("客户ID") = GetPy(lb, True).SubString(0, 1) & format(cint(max.SubString(1))+1, "000")
            Else
                e.DataRow("客户ID") = GetPy(lb, True).SubString(0, 1) & format(1, "000")
            End If
        End If
End Select

 回到顶部
帅哥哟,离线,有人找我吗?
江南小城
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1005 积分:5955 威望:0 精华:0 注册:2015/6/18 5:15:00
  发帖心情 Post By:2016/7/6 20:56:00 [只看该作者]

谢谢老师

 回到顶部