Foxtable(狐表)用户栏目专家坐堂 → [求助]隐藏或混淆重要数据


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

主题:[求助]隐藏或混淆重要数据

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


加好友 发短信
等级:六尾狐 帖子:1387 积分:10693 威望:0 精华:0 注册:2013/11/8 15:27:00
[求助]隐藏或混淆重要数据  发帖心情 Post By:2019/7/26 22:00:00 [显示全部帖子]

If e.Col.Name = "列名" Then '请改为实际列名
    If User.name <> "张经理" AndAlso UserName <> "王总监" Then '如果不是指定用户
        e.Text = 
"****" '则修改显示内容
    
End If
End
 
If

以上可以实现在客户端隐藏或混淆重要数据,有没有办法在后台数据库中实现这样的功能,比如有的数据机密级别比较高,连信息技术人员都不能知晓,但又没办法通过数据库权限进行控制,因为他们在管理服务器,有没有办法可以象在客户端这样,把数据库中某张表的数据隐藏或混淆

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


加好友 发短信
等级:六尾狐 帖子:1387 积分:10693 威望:0 精华:0 注册:2013/11/8 15:27:00
  发帖心情 Post By:2019/7/27 16:58:00 [显示全部帖子]

这个可以在表属性或项目属性里设置吗,如我在项目AfterSaveProject里写以下代码
For Each dr As DataRow In DataTables("工资统计表").dataRows
    For Each c As Col In Tables("工资统计表").Cols
        If c.name =  "年份" Or c.name = "月份" Or c.name = "部门" Or c.name = "姓名" Or c.name = "职位" Then
            dr(c.name) = EncryptText(dr(c.name),"a23","op#")
        End If
    Next
Next
DataTables("工资统计表").Save

发现每保存一次字符的长度就会累加,应该要写在哪里好呢,或是怎么改一下代码

图片点击可在新窗口打开查看此主题相关图片如下:24de0792-d735-478b-a59d-27e829075dd1.png
图片点击可在新窗口打开查看


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


加好友 发短信
等级:六尾狐 帖子:1387 积分:10693 威望:0 精华:0 注册:2013/11/8 15:27:00
  发帖心情 Post By:2019/7/28 19:22:00 [显示全部帖子]

问题是此表不需要做任何编辑,每月只需导入,然后在统计分析中取数使用

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


加好友 发短信
等级:六尾狐 帖子:1387 积分:10693 威望:0 精华:0 注册:2013/11/8 15:27:00
  发帖心情 Post By:2019/7/28 20:11:00 [显示全部帖子]

用了手工导入,也是这样,而且还重复提示,应该是我写的代码不对,还请改正
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目5.foxdb
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:工作簿1.xlsx



[此贴子已经被作者于2019/7/28 20:11:42编辑过]

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


加好友 发短信
等级:六尾狐 帖子:1387 积分:10693 威望:0 精华:0 注册:2013/11/8 15:27:00
  发帖心情 Post By:2019/7/29 22:39:00 [显示全部帖子]


[此贴子已经被作者于2019/7/29 22:43:28编辑过]

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


加好友 发短信
等级:六尾狐 帖子:1387 积分:10693 威望:0 精华:0 注册:2013/11/8 15:27:00
  发帖心情 Post By:2019/7/30 12:10:00 [显示全部帖子]

Dim dlg As New OpenFileDialog
dlg.Filter = "Excel文件|*.xls;*.xlsx"
If dlg.ShowDialog =DialogResult.OK Then
    Dim t As Table = Tables("工资统计表")
    Dim nms As String() = {"年份","月份","天数","部门", "职位","岗位性质","姓名","入职日期"}
    Dim nms2 As String() = {"部门","职位","岗位性质","姓名"} 
    t.StopRedraw()
    Dim Book As New XLS.Book(dlg.FileName)
    Dim Sheet As XLS.Sheet = Book.Sheets(0)
    For n As Integer = 1 To Sheet.Rows.Count -1
        Dim r As Row = Tables("公工资统计表").AddNew()
        For m As Integer = 0 To nms.Length - 1
            r(nms(m)) = Sheet(n,m).Value
            If Array.IndexOf(nms2,nms(m)) > -1 Then
                r(nms(m)) = EncryptText(Sheet(n,m).Value,"a23","op#")
            Else
                r(nms(m)) = Sheet(n,m).Value
            End If
        Next
    Next
    t.ResumeRedraw()
End If

导入总提示:从字符串“0”到类型“Date”的转换无效。日期列怎么改都没用

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


加好友 发短信
等级:六尾狐 帖子:1387 积分:10693 威望:0 精华:0 注册:2013/11/8 15:27:00
  发帖心情 Post By:2019/7/30 14:31:00 [显示全部帖子]

For m As Integer = 0 To nms.Length - 1
        Dim d As Date '变量d用于存储转换结果
            If Array.IndexOf(nms2,nms(m)) > -1 Then
                r(nms(m)) = EncryptText(Sheet(n,m).Value,"a23","op#")
            Elseif Date.TryParse(r("入职日期"),d) Then
                r(nms(m)) = Sheet(n,m).Value
Else
    Output.Show("无效日期格式") 
            End If
        Next

还是同样的错误提示:从字符串“0”到类型“Date”的转换无效

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


加好友 发短信
等级:六尾狐 帖子:1387 积分:10693 威望:0 精华:0 注册:2013/11/8 15:27:00
  发帖心情 Post By:2019/7/30 18:03:00 [显示全部帖子]

搞不定,麻烦了
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.foxdb

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:321.xls

仍提示错误
另外,貌似有一条记录导进来,但入职日期会变成今天的日期


[此贴子已经被作者于2019/7/30 18:05:21编辑过]

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


加好友 发短信
等级:六尾狐 帖子:1387 积分:10693 威望:0 精华:0 注册:2013/11/8 15:27:00
  发帖心情 Post By:2019/7/30 20:39:00 [显示全部帖子]

完全一致后是可以导入,但入职日期还是不对的,导入后日期变成了今天的日期

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


加好友 发短信
等级:六尾狐 帖子:1387 积分:10693 威望:0 精华:0 注册:2013/11/8 15:27:00
  发帖心情 Post By:2019/7/30 20:58:00 [显示全部帖子]

可能是表有问题,把所有的数据都放进来,还有其他的错误提示
已经用项目导出来的表,然后把数据复制进去,数据例的单元格格式也设置成了数值类型
Dim nms As String()里的内容和顺序也完全一致,仍有下面这个错误提示
.NET Framework 版本:2.0.50727.8806
Foxtable 版本:2018.10.9.1
错误所在事件:窗口,窗口1,Button1,Click
详细错误信息:
从字符串“ ”到类型“Double”的转换无效。
输入字符串的格式不正确。

把所有空白单元格全部用0填充后可以导入了,但入职日期列还是那个问题
[此贴子已经被作者于2019/7/30 21:10:07编辑过]

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