Foxtable(狐表)用户栏目专家坐堂 → 窗口录入与查询


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

主题:窗口录入与查询

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/2/28 18:16:00 [只看该作者]

 如果你希望序号按照顺序来。可以在afterOpenOproject事件写代码,或者是表的AfterLoad事件写代码

 

Dim i As Integer = 1
For Each dr As DataRow In DataTables("表A").Select("", "_Identify")
    dr.baserow("第一列") = i
    i = i + 1
Next


 回到顶部
美女呀,离线,留言给我吧!
云开月明
  22楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:173 积分:1021 威望:0 精华:0 注册:2016/10/15 9:35:00
  发帖心情 Post By:2017/3/1 9:19:00 [只看该作者]

老师,

     你好!

    因为主键列(编号)列为只读,项目事件Afteropenproject或表事件AfterLoad中写入代码后,出现运行错误的提示:列"编号"为只读.

盼复!谢谢!

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/1 9:27:00 [只看该作者]

 把编号列改成数据列,不要用表达式列。

 回到顶部
美女呀,离线,留言给我吧!
云开月明
  24楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:173 积分:1021 威望:0 精华:0 注册:2016/10/15 9:35:00
  发帖心情 Post By:2017/3/1 14:09:00 [只看该作者]

老师,

      你好!

      1.我们用的编号是AT00001这种形式的编号,所以只能用表达式列而不能改为数据列。
    

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/1 15:10:00 [只看该作者]

以下是引用云开月明在2017/3/1 14:09:00的发言:
老师,

      你好!

      1.我们用的编号是AT00001这种形式的编号,所以只能用表达式列而不能改为数据列。
    

 

可以改成数据列,字符列也是数据列。


 回到顶部
美女呀,离线,留言给我吧!
云开月明
  26楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:173 积分:1021 威望:0 精华:0 注册:2016/10/15 9:35:00
  发帖心情 Post By:2017/3/1 15:21:00 [只看该作者]

老师,
      
     你好!

     如附件《产品不良记录》是通过录入窗口的表SQL表录入的,SQL表设置的加载条件是初始不加载任何数据。

    我按下面的方式在表里设置审核:
     
 表 PrepardEdit事件设置   
 If e.Col.Name = "审核" Then 
    If User.IsRole("审核") = False Then
        e.Cancel = True
    End If
ElseIf e.Row("审核") = True Then 
    e.Cancel = True 
End If
If e.Row.IsNull("审核人") = False Then 
    e.Cancel = True 
End If

审核按钮:
If User.IsRole("审核") = True Then
    Tables("产品不良记录").Current("审核人") = User.Name
    Tables("产品不良记录").Current("审核日期") = Date.Today()
Else
    MessageBox.show("你无审核权限!")
End If

取消审核:
If User.IsRole("审核") = True Then
    Tables("产品不良记录").Current("审核人") = Nothing
    Tables("产品不良记录").Current("审核日期") = Nothing
Else
    MessageBox.show("你无取消审批权限!")
End If

这两个按钮只能一行一行的审或取消,再说我们是利用SQL表录入数据的,不良记录表要求是不能编辑的,将按钮设置在不良记录表中不合适。
    
请问如何中窗口中设置审核按钮和取消审按钮?(有审核权限的人才能审核且审核后的记录不能编辑,是否可以通过某个条件设置可以多行一次性审核)


 回到顶部
美女呀,离线,留言给我吧!
云开月明
  27楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:173 积分:1021 威望:0 精华:0 注册:2016/10/15 9:35:00
  发帖心情 Post By:2017/3/1 15:36:00 [只看该作者]

你好!老师
    
       列由表达式列转换为数据列将编号后,编号只能是1、2、3;不能是AT00001\AT00002形式的

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/1 15:39:00 [只看该作者]

改代码

 

Dim i As Integer = 1
For Each dr As DataRow In DataTables("表A").Select("", "_Identify")
    dr.baserow("第一列") = "AT" & Format(i, "00000")
    i = i + 1
Next


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/1 15:43:00 [只看该作者]

回复26楼。

 

If User.IsRole("审核") = True Then
    Dim t As Table = Tables("产品不良记录")
    For i As Integer = t.TopPosition To t.BottomPosition
        t.rows(i)("审核人") = User.Name
        t.rows(i)("审核日期") = Date.Today()
    Next
Else
    MessageBox.show("你无审核权限!")
End If


 回到顶部
美女呀,离线,留言给我吧!
云开月明
  30楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:173 积分:1021 威望:0 精华:0 注册:2016/10/15 9:35:00
  发帖心情 Post By:2017/3/1 16:39:00 [只看该作者]

老师,

      你好!
     
      审核按钮:要设置一个前提条件,就是快速找到产品不良记录中未审核的行,有审核权限的人可一键审核。为谢!

 回到顶部
总数 253 上一页 1 2 3 4 5 6 7 8 9 10 下一页 ..26