Foxtable(狐表)用户栏目专家坐堂 → 求助批量改变字段值设置,大红袍老师已给过思路


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

主题:求助批量改变字段值设置,大红袍老师已给过思路

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


加好友 发短信
等级:三尾狐 帖子:787 积分:6175 威望:0 精华:0 注册:2015/7/25 19:14:00
求助批量改变字段值设置,大红袍老师已给过思路  发帖心情 Post By:2015/8/25 18:35:00 [只看该作者]

已知:

有A1 、B1、 C1、等若干张表,每张表有若干个相同的字段,如A1有A,B,C,O,P,Q字段,B1也有A,B,C,O,P,Q字段,C1也有A,B,C,O,P,Q字段,而且

A1的Q字段为:A-B-C

B1的Q字段为:A-B-C-P

C1的Q字段为:A-O-B-C

- 是连接符

制作一个Q字段的设置窗口

左边是表选项,右边是设置区,设置好结果,

 

求助:

1.怎样把设置好的结果,在模拟预览文本框中表现,

2.怎样把设置好的结果传导到各表中,而且以往的数据根据需要选择性改变。

没有表达清楚,请参考图

 

大红袍帮着做一个吧
实例附后

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


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


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

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


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


加好友 发短信
等级:三尾狐 帖子:787 积分:6175 威望:0 精华:0 注册:2015/7/25 19:14:00
  发帖心情 Post By:2015/8/26 0:07:00 [只看该作者]

谢谢狐精大红袍

 


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


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

datacolchanged事件代码

 

Dim str As String = ""
Select Case e.DataCol.Name
    Case "档号构成项目","位数","连接符"
        For Each dr As DataRow In e.DataTable.Select("表名 = '" & e.DataRow("表名") & "'")
            If dr.IsNull("档号构成项目") = False Then
                If dr.IsNull("位数") Then
                    str &= "isnull(Convert([" & dr("档号构成项目") & "],'System.String'),'')+"
                Else
                    Dim temp = "substring(isnull(Convert([" & dr("档号构成项目") & "],'System.String'),''),1," & dr("位数") & ")"
                    str &= "substring('" & "".PadLeft(dr("位数"),"0") & "', 1, " & dr("位数") & "-len(" & temp & ")) + " & temp
                    str &= "+"
                End If
               
                If dr.IsNull("连接符") = False Then
                    str &=  "'" & dr("连接符") & "'+"
                End If
               
            End If
        Next
        DataTables(e.DataRow("表名")).DataCols("文件级档号").Expression = str.trim("+")
        If Forms("窗口1").opened Then
            Forms("窗口1").Controls("TextBox1").Text = DataTables(e.DataRow("表名")).Compute("max(文件级档号)")
        End If
End Select


 回到顶部