Foxtable(狐表)用户栏目专家坐堂 → 关于日期分组(已解决)


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

主题:关于日期分组(已解决)

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


加好友 发短信
等级:七尾狐 帖子:1525 积分:10580 威望:0 精华:0 注册:2008/9/24 11:16:00
关于日期分组(已解决)  发帖心情 Post By:2011/6/11 12:35:00 [显示全部帖子]

按年、月分组,因为每月25日为结转日,要求[月]列:月份不等于12,且日期大于25的月份为下个月,如何实现,恳请指教!

 


 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.table

[此贴子已经被作者于2011-6-13 12:51:14编辑过]

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


加好友 发短信
等级:七尾狐 帖子:1525 积分:10580 威望:0 精华:0 注册:2008/9/24 11:16:00
  发帖心情 Post By:2011/6/11 13:36:00 [显示全部帖子]

谢谢 ybil 的指教,其他月份都没有问题,就是十二月份的26-31号还是按12月分组,如何实现,再次请教!!

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


加好友 发短信
等级:七尾狐 帖子:1525 积分:10580 威望:0 精华:0 注册:2008/9/24 11:16:00
  发帖心情 Post By:2011/6/11 13:40:00 [显示全部帖子]

还有,1月份的1,最好用01来表示,这样在筛选树上比较美观!!

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


加好友 发短信
等级:七尾狐 帖子:1525 积分:10580 威望:0 精华:0 注册:2008/9/24 11:16:00
  发帖心情 Post By:2011/6/11 15:25:00 [显示全部帖子]

谢谢 ybil 的指教,表达式可以达到要求,需要消化一下,再次感谢 ybil !!

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


加好友 发短信
等级:七尾狐 帖子:1525 积分:10580 威望:0 精华:0 注册:2008/9/24 11:16:00
  发帖心情 Post By:2011/6/11 20:17:00 [显示全部帖子]

参考 ybil 版主的代码,对表达式进行简化如下:

 

iif(Convert(SUBSTRING(Convert([日期],'System.String'),6,2),'System.Int16')<>12,iif(Convert(SUBSTRING(Convert([日期],'System.String'),9,2),'System.Int16')>25,Convert(Convert(SUBSTRING(Convert([日期],'System.String'),6,2),'System.Int16')+1,'System.String'),SUBSTRING(Convert([日期],'System.String'),6,2)),SUBSTRING(Convert([日期],'System.String'),6,2))

 

这段代码已经基本符合要求,但是当日期大于25时,月份加1后,1-8月份只能显示一位数,而小于25时可以显示两位数。用字符格式化Format(X,"00") 出错,如何达到与 ybil 版主代码一样的效果,求指教!!


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


加好友 发短信
等级:七尾狐 帖子:1525 积分:10580 威望:0 精华:0 注册:2008/9/24 11:16:00
  发帖心情 Post By:2011/6/11 21:37:00 [显示全部帖子]

谢谢 hhbb ,完全达到理想的效果,通过这段代码,学到不少的知识,非常感谢foxtable论坛的热心人,帮助我树立学习foxtabie的信心!

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


加好友 发短信
等级:七尾狐 帖子:1525 积分:10580 威望:0 精华:0 注册:2008/9/24 11:16:00
  发帖心情 Post By:2011/6/12 18:18:00 [显示全部帖子]

在原有的基础上结合 hhbb 老师的思路,进一步简化,表达式如下: 

 

iif(Convert(SUBSTRING(Convert([日期],'System.String'),6,2),'System.Int16') <> 12 and Convert(SUBSTRING(Convert([日期],'System.String'),9,2),'System.Int16')>25,'0'+Convert(Convert(SUBSTRING(Convert([日期],'System.String'),6,2),'System.Int16')+1,'System.String'),SUBSTRING(Convert([日期],'System.String'),6,2))


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


加好友 发短信
等级:七尾狐 帖子:1525 积分:10580 威望:0 精华:0 注册:2008/9/24 11:16:00
  发帖心情 Post By:2011/6/12 20:27:00 [显示全部帖子]

谢谢 hhbb 老师的热心指导,真的很细心,再次感谢!!

 回到顶部