Foxtable(狐表)用户栏目专家坐堂 → 动态生产控件问题


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

主题:动态生产控件问题

帅哥,在线噢!
cd_tdh
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3052 积分:20419 威望:0 精华:0 注册:2016/3/28 16:57:00
动态生产控件问题  发帖心情 Post By:2024/3/15 9:27:00 [只看该作者]

审核流程如下:


图片点击可在新窗口打开查看此主题相关图片如下:审核流程.jpg
图片点击可在新窗口打开查看

审核意见如下:


图片点击可在新窗口打开查看此主题相关图片如下:审核意见.jpg
图片点击可在新窗口打开查看

生成控件部分代码如下:
Vars("text") = "日常费用支付管理"
'Vars("text") = Forms("主窗口").Controls("TabControl1").SelectedPage.text
Dim Filter As String
Filter = "[表名称] = '" & Vars("text") & "'"
Dim r As Row = Tables(Vars("text")).Current
If r IsNot Nothing Then
    Dim dr As DataRow = DataTables("审核流程管理").SQLFind("表名称 = '" & Vars("text") & "'")
    If dr IsNot Nothing Then  '如果找到的话
        Dim dr1  As  DataRow = DataTables("审核流程管理").SQLFind("表名称 = '" & Vars("text") & "' And 审批状态 = '" & r("审批状态") & "'")
        If dr1 IsNot Nothing Then '如果找到的话
            Dim frm As WinForm.Form = e.Form
            Dim i As Integer = 0
            Dim ajm As List(of DataRow) = DataTables("审核流程管理").sqlS elect(Filter,"","流程编号")   '用sql又排序就必须Top  可选参数,指定返回的行数
            '绘制整个流程的图
            For Each aj2 As DataRow In ajm
                Dim aj As String = aj2("审核人角色") And 
                Dim abc As WinForm.Button
                abc = frm.CreateControl(aj, ControlTypeEnum.Button)
                Dim ds1 As DataRow = DataTables("审核意见表").SQLFind("表名称 = '" & Vars("text") & "' And 审核部门 = '" & aj & "'  And  ID = '" & r("ID") & "'") 
                Dim ds2 As DataRow = DataTables("审核意见表").SQLFind("表名称 = '" & Vars("text") & "' And 审核意见 = '提交申请'  And  ID = '" & r("ID") & "'")
                If ds1 IsNot Nothing Then
                    abc.Text = aj & vbcrlf & ds1("审核日期") '控件名称
                    .......

图片点击可在新窗口打开查看此主题相关图片如下:审核进度.jpg
图片点击可在新窗口打开查看

老师,我想审核进度窗口打开时,提交申请按钮也向第2个流程一样显示审核日期,审核日期 = 审核意见表中提交申请的日期,应该怎么修改呢,昨天调试一下午都没弄出来


[此贴子已经被作者于2024/3/15 9:39:54编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106147 积分:539852 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/3/15 9:44:00 [只看该作者]

遍历【审核意见】这个表处理

 回到顶部
帅哥,在线噢!
cd_tdh
  3楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3052 积分:20419 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2024/3/15 10:01:00 [只看该作者]

再请教老师,审核意见表中,审核部门没有提交申请,只有审核意见中有,应该怎么改?
Vars("text") = "日常费用支付管理"
'Vars("text") = Forms("主窗口").Controls("TabControl1").SelectedPage.text
Dim Filter As String
Filter = "[表名称] = '" & Vars("text") & "'"
Dim r As Row = Tables(Vars("text")).Current
If r IsNot Nothing Then
    Dim dr As DataRow = DataTables("审核流程管理").SQLFind("表名称 = '" & Vars("text") & "'")
    If dr IsNot Nothing Then  '如果找到的话
        Dim dr1 As DataRow = DataTables("审核流程管理").SQLFind("表名称 = '" & Vars("text") & "' And 审批状态 = '" & r("审批状态") & "'")
        If dr1 IsNot Nothing Then '如果找到的话
            Dim frm As WinForm.Form = e.Form
            Dim i As Integer = 0
            Dim ajm As List(Of DataRow) = DataTables("审核意见表").sqlS elect("ID = '" & r("ID") & "'", "", "审核日期") '用sql又排序就必须Top  可选参数,指定返回的行数
            '绘制整个流程的图
            For Each aj2 As DataRow In ajm
                Dim aj As String = aj2("审核部门") 
                Dim abc As WinForm.Button
                abc = frm.CreateControl(aj, ControlTypeEnum.Button)
                Dim ds1 As DataRow = DataTables("审核意见表").SQLFind("ID = '" & r("ID") & "'") 
                If ds1 IsNot Nothing Then
                    abc.Text = aj & vbcrlf & ds1("审核日期") '控件名称

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106147 积分:539852 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/3/15 10:11:00 [只看该作者]

没看懂,截图说明一下

 回到顶部
帅哥,在线噢!
cd_tdh
  5楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3052 积分:20419 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2024/3/15 10:16:00 [只看该作者]

截图在1楼,审核流程表中,第1个流程是任何人都可以提交申请,但是在审批移交表中,就不能用审核部门,只能通过审核意见是:提交申请查找,所以
Dim aj As String = aj2("审核部门") 就显示没法给提交申请赋值,第一流程提交申请就不能显示出来啊

 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106147 积分:539852 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/3/15 10:23:00 [只看该作者]

判断一下,如果是第一个按钮(步骤)就使用审核意见,后面的按钮就使用部门

 回到顶部
帅哥,在线噢!
cd_tdh
  7楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3052 积分:20419 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2024/3/15 11:09:00 [只看该作者]

老师,没改出来,请老师修改一下,完整代码如下:
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:代码.txt



 回到顶部
帅哥,在线噢!
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106147 积分:539852 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/3/15 11:27:00 [只看该作者]

没看懂这些代码逻辑。

简单的大概这样
            For i as integer = 0 to ajm.count - 1
                Dim aj As String
if i=0
aj = aj2("审核意见") 
else
aj=aj2("审核部门") 
end if

 回到顶部
帅哥,在线噢!
cd_tdh
  9楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3052 积分:20419 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2024/3/15 12:30:00 [只看该作者]

还是按照我第一个办法解决了,动态生成控件完成后,在判断abc.Text的名称,如果存在就改为:abc.Text = "提交申请" & vbcrlf & r("登记日期"),这样解决了
                '为提交申请增加日期时间
                If abc.Text = "提交申请" Then
                    abc.Text = "提交申请" & vbcrlf & r("登记日期")
                    abc.Height = 86 '控件高度
                End If 


图片点击可在新窗口打开查看此主题相关图片如下:未完成.jpg
图片点击可在新窗口打开查看


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



 回到顶部
帅哥,在线噢!
cd_tdh
  10楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3052 积分:20419 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2024/3/15 12:33:00 [只看该作者]

在请教一下老师,窗口的上面颜色怎么用代码修改

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


 回到顶部
总数 11 1 2 下一页