以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  请高手指导如何通过时间来控制窗口的编辑权限  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=56356)

--  作者:audience68
--  发布时间:2014/9/3 16:38:00
--  请高手指导如何通过时间来控制窗口的编辑权限
我在编一个日志编辑窗口,需要考虑该日志在当天便写都可以随时修改,但是,如果到第二天(就是一过24:00)就不可以再进行修改了,这个时间权限我在日志编制表中对prepareEdit 的设置实现,但是由于对日志编制表中“每日情况记录”列在日志编制窗口中如何设置(即第二天就不可以修改或编辑了)却没有头绪,还请高手指教。
日志编辑窗口模式见附件。




--  作者:Bin
--  发布时间:2014/9/3 16:43:00
--  
可以在DatacolChanging中处理

或者在控件的Textchanged里处理

--  作者:audience68
--  发布时间:2014/9/3 16:47:00
--  
不好意思,没有把附件传上去 这是附件

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


--  作者:Bin
--  发布时间:2014/9/3 16:48:00
--  
这是图片图片点击可在新窗口打开查看
--  作者:audience68
--  发布时间:2014/9/3 16:59:00
--  
我要对“每日情况记录”窗口进行控制,但是要与取监造日志编辑表中的编辑日期进行比对,不知如何编写,能请BIN给我个简单的例子吗?谢谢了
--  作者:Bin
--  发布时间:2014/9/3 17:00:00
--  
道理是一样的,上个简单例子,我帮你写一下.
--  作者:audience68
--  发布时间:2014/9/4 7:57:00
--  
感谢BIN的帮助,下面是我的一个例子,表已经实现了超过一天就锁定行的编辑权限,但是监造日志窗口中的每日情况记录窗口(对应的是表中的每日情况记录列)不知如何实现同样的功能,请给我写个例子吧,谢谢了。
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.rar


--  作者:Bin
--  发布时间:2014/9/4 8:45:00
--  
.
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.rar


--  作者:audience68
--  发布时间:2014/9/7 20:40:00
--  
由于有事,未能及时反馈后续情况,很抱歉。非常感谢BIN的帮助,你给我写的例子我仔细学习了,很受启发,但是我也发现这个语句还是存在缺陷,比如在一进入窗口后,程序分析行的时间控制权限是对的,可是当我在表的不同行中进行双击,当我双击当天的行时,窗口式可以编辑的,这时再点击表的其它行,就发现本来不应该允许编辑的窗口又变成可以编辑了,没办法,我只好在窗口的MouseEnter中也增加了同样的一套判断语句来避免这种情况发生。我感觉其实在表事项对下面的语句进行完善,是不是更好,但一直不知道该如何进行修改,不知BIN是否有好的建议。

 

监造日志_PrepareEdit

 

Dim tv As Date = e.Row("填报日期")

Dim tp As TimeSpan = Date.Today - tv

If tp.TotalDays >= 1 Then \'如果订单已经超过1天

     If Forms("监造日志窗口").Opened Then

         Forms("监造日志窗口").Controls("TextBox1").Enabled=False

     End If

     e.Cancel = True \'则取消编辑

Else

    If Forms("监造日志窗口").Opened Then

         Forms("监造日志窗口").Controls("TextBox1").Enabled=True

     End If

End If


--  作者:有点甜
--  发布时间:2014/9/9 9:12:00
--  

 回复9楼,代码应该是没有问题的,窗口的实现,是根据填报日期判断的,你是否做了什么影响了?

 

 具体,请上传出错的例子。