以文本方式查看主题

-  易表在线答疑  (http://egrid2000.com/dvbbs/index.asp)
--  用户社区  (http://egrid2000.com/dvbbs/list.asp?boardid=2)
----  请看看这个公式!  (http://egrid2000.com/dvbbs/dispbbs.asp?boardid=2&id=26374)

--  作者:iyplx2425
--  发布时间:2013/9/16 8:59:00
--  请看看这个公式!

 

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

请看“刷卡”按钮公式中:

LocateFor("p", "=" , - 1) And EvalFor(GridName,Right([%班次%],4)," - 1","p", "=" , - 1) And EvalFor(GridName,Right([%班次%],4) + "刷卡","Format(Now(),""hh:mm""))","p", "=" , - 1)

其中两个重算公式

EvalFor(GridName,Right([%班次%],4)," - 1","p", "=" , - 1)

EvalFor(GridName,Right([%班次%],4) + "刷卡","Format(Now(),""hh:mm""))","p", "=" , - 1) ,

 

当[p]=-1的次数为0,即当天首次刷卡时,无论[%班次%]首先选中的是“上班”还是“下班”,这两个重算公式都能正常运行,即[上班](或[下班])与[上班刷卡](或[下班刷卡])都能正常返回数据;但如果[p]=-1次数大于0,即当天进行二次刷卡时,仅有

EvalFor(GridName,Right([%班次%],4)," - 1","p", "=" , - 1)

能正确返回数据,而

EvalFor(GridName,Right([%班次%],4) + "刷卡","Format(Now(),""hh:mm""))","p", "=" , - 1)

总是无法返回数据。

请教老师,该怎样做?

老师可以试着将[上班刷卡]与[下班刷卡]的数据属性做些修改,一定还可以发现一些有趣的现象,两列返回数据变化多端。


--  作者:iyplx2425
--  发布时间:2013/9/16 9:42:00
--  

这是个辅助文件。主文件为另外的指纹“考勤记录”,其中同一天的[上班刷卡]、[下班刷卡]记录位于同一行,所以这个文件的[上班刷卡]与[下班刷卡]也设计为同一行,以方便导入到“考勤记录”文件中。


--  作者:iyplx2425
--  发布时间:2013/9/16 13:21:00
--  
已解决。