WebFOCUS当期环比的实现方法
来源:互联网 发布:大数据时代企业竞争 编辑:程序博客网 时间:2024/05/01 22:11
1. 数据准备:环比字段所在的元数据,内有时间字段(或时间ID,通过JOIN与时间表关联找到时间字段)
2. 参数准备:设置几个变量如下所示:
-*定义一个接收时间的变量,设置初始值为199802
-DEFAULT &SEL_YYM = '199802' ;
-*用EDIT函数改变&SEL_YYM的格式,取前四位的年份赋值给&SEL_YEAR
-SET &SEL_YEAR = EDIT(&SEL_YYM,'9999$') ;
-*用EDIT函数取&SEL_YYM的第五位开始的之后两位的月份赋值给&SEL_MONTH
-SET &SEL_MONTH = EDIT(&SEL_YYM,'$$$$99$') ;
-*用EDIT函数取&SEL_YYM的第六位开始的之后一位的月份赋值给&SEL_MONTH1
-SET &SEL_MONTH1 = EDIT(&SEL_YYM,'$$$$$9$') ;
-*当月份为两位数字时,取&SEL_MONTH,一位数字时取&SEL_MONTH1
-SET &SEL_MONTH2 = IF &SEL_MONTH GE '10' THEN &SEL_MONTH ELSE &SEL_MONTH1;
-*取上一个月的时间值
-SET &PREV_MONTH1 = &SEL_MONTH2 - 1 ;
-*当月份为两位时,直接取&PREV_MONTH1,为一位时,前加’0’
-SET &PREV_MONTH2 = IF &SEL_MONTH GE '10' THEN &PREV_MONTH1 ELSE '0' || &PREV_MONTH1;
-*当月份为1月份时,直接将12赋给&PREV_MONTH,否则赋与&PREV_MONTH2
-SET &PREV_MONTH = IF &SEL_MONTH NE '01' THEN &PREV_MONTH2 ELSE '12';
-*年份减一得到过去一年的年份值
-SET &PREV_YEAR = &SEL_YEAR - 1 ;
-*当月份为1月份时,环比时间值为去年年份合并上月值,否则时间值为今年年份合并上月值
-SET &PREV_YYM = (IF &SEL_MONTH NE '01' THEN (&SEL_YEAR || &PREV_MONTH) ELSE (&PREV_YEAR || &PREV_MONTH));
3. 虚拟字段准备:(在元数据上建立两个虚拟字段)
-*建两个虚拟字段,当元数据中的日期字段等于当前日期时,将环比字段的值赋给-*CURRENT_AMT,当等于上月时间值时,将对应的环比字段的值赋给PREV_AMT
DEFINE FILE DATA
REPORT_MONTH/A6 = MONTH ;
-*REPORT_MONTH/YYM = MONTH 当日期字段为Date型时,用此语句
CURRENT_AMT/D20.2=IF REPORT_MONTH EQ '&SEL_YYM' THEN VOLUME__ACTUAL ELSE 0;
PREV_AMT/D20.2=IF REPORT_MONTH EQ '&PREV_YYM' THEN VOLUME__ACTUAL ELSE 0;
END
4. 创建报表:
在procedure的连接点处选择report,选择上面用到的元数据,将需要显示的字段双击到设计页面,并对其sum,设置where条件.代码如下:
TABLE FILE DATA
SUM
'DATA.DATA.VOLUME__ACTUAL'
'DATA.DATA.CURRENT_AMT'
'DATA.DATA.PREV_AMT'
BY 'DATA.DATA.CUSTOMERID'
WHERE (( REPORT_MONTH EQ '&PREV_YYM' ) OR ( REPORT_MONTH EQ '&SEL_YYM' ));
ON TABLE PCHOLD FORMAT HTML
END
5. 引用到html页中,展现:
新建html页,拖一个report对象到设计界面,将做好的同比fex文件reference进来,设置限制条件输出格式,这里为下拉菜单,将窗口从设计切换到参数,设置参数的数据来源,可以选择时间字段.
- WebFOCUS当期环比的实现方法
- delphi 中实现当期日期 减去 若干小时的方法
- 当期待的事情发生了...
- 获取当期 前台显示的Activity
- perl获得当期的日期和时间
- WEBFOCUS 对TABLE FILE的操作
- 关于WebFOCUS的FOCUS开发语言
- SQL 速度比like鱼句快的另一种实现方法
- 实现同环比的简单SQL
- R12 FA 回滚当期的折旧的脚本
- 获得当期显示的VC,View所在的VC
- 使用WebFOCUS的Visual Discovery建Dashboard的经验分享
- 如何记录网站当期在线用户的ID
- java 获取当期时间之前几小时的时间
- 根据当期日期计算,农历日期的类
- 悬赏5000征集webfocus在移动终端上的应用
- webfocus在移动终端上的应用DEMO
- WebFOCUS帮助大西洋贝尔开拓新的电信市场
- 使用svn开发,目录的约定与开发流程
- 编译 Hello World 程序@GTK+ 2.0 中文教程连载
- EVC下Ftp遍历下载所有文件夹
- 什么是软件需求,什么是功能需求?
- XML Serialization in the .NET Framework
- WebFOCUS当期环比的实现方法
- 快捷键
- Ajax简单实例(ajax+asp+access)
- CString类的转化(高级)及小技巧(转)
- BREW平台主要技术的分析与总结
- maximo连接sap
- PV原语
- DirectShow中Filter的连接过程
- poj 2486 树形dp