RS开发中的一些小技巧[不定期更新]
从9月份一直忙到了现在,项目整体的改版工作也完成了十有八九了,有些事情只有你自己真正的做了,你才能明白:哦,原来还可以这个样子,这样做真的好了很多呢,接下来我就分享一些最近遇到的RS开发的一些小技巧,都是些基本的东西,已掌握的可以来温习一下,没掌握的希望可以帮到大家
一:UI设计
1.1:配色
可以利用字体颜色、背景颜色、图片等来补充RS常规报表以及单个数据项的单调感,例如下面通过图片以及字体颜色调整过的报表的效果

1.2:布局
布局大家都知道使用table了,提前像设计HTML的页面一样规划好布局,是该几行一列,然后拖入表格即可,如下面的操作,拖入一个两行三列
的表格

如何在原来基础上增加行和列呢,我们最先想到的是在原表格上面操作,但是我们选择了右键之后看到的是下面的界面,如下图所示并没有出现相应的
选项

这个时候就需要我们看RS上面的工具栏了,如下图,操作即可,可以在我们想要的位置添加行或列

PS:表格的大小如果要适应不同浏览器的话,比如在1024*768上可以占满屏幕,在1366* 768也需要占满屏幕,有什么方法和注意的地方呢?就只有下面一点
不要用px设置屋里大小,使用百分比%来设置表格的整体占比,里面的对象也使用百分比的形式,当然图表好像不能设置百分比那就没办法了
1.3:图表开发
1.3.1:去掉图表背景的交替色带
选择图表的主轴-常规-网格线:勾掉显示交替色带即可

1.3.2:让图表中的柱状图按高低值排序
(选择到数据项后,选择数据选项卡处的排序即可)

1.3.3:调出图表的其他数据轴:选择组合图

1.3.4:给折线图或者柱状图改变属性
改变颜色:选择序列

1.3.5:改变柱子大小以及去掉外面的边框线:选择序列

1.3.6最终的效果如图

二:数据项相关
2.1:使用过滤器取值
filter([物理层].[DIM_BI_MED].[med],[占比]>=(?percentfy?/100))
2.2:按照某一个度量值取该度量值聚合后排名前N的维度名称
topCount([物理层].[DIM_BI_DEPT].[Detail_Dept_Name],10,[处方总数])
示例:topCount
( [大型户外设备公司].[产品].[产品].[产品系列] , 2 , [收入] )
2.3:取排名前几的数据
rank([订单金额])>n
示例:rank ( 98 年年度销售额 )
年度每位销售代表所创造的销售额的对应排名值。如果有些行的排名相同,那么会跳过一些排名值。
( [大型户外设备公司].[产品].[产品].[产品系列] ) , 2 )
三:日期过滤
3.1:常规日期过滤
[date_sk]>=?s_Date? and [date_sk]<=?e_Date?
3.2:转化为int类型的过滤
(([治疗质量].[日期].[年].[年].[年编码]*10000 + [治疗质量].[日期].[年].[月].[月编码]*100 + [治疗质量].[日期].[年].[日].[日编码])>=(year(?s_Date?)*10000 + (month(?s_Date?)-2)*100 + day(?s_Date?))
)and
(([治疗质量].[日期].[年].[年].[年编码]*10000 + [治疗质量].[日期].[年].[月].[月编码]*100 + [治疗质量].[日期].[年].[日].[日编码]) <=(year(?e_Date?)*10000 + month(?e_Date?)*100 + day(?e_Date?)))
ps:(month(?s_Date?)-2)*100 取出开始日期的月份然后-2,向前推2个月
四:关于追溯

4.1:参数追溯
可以根据目标报表需要的值,传递本页面的值达到传参效果,例如省市县等从大到小,从汇总到明细数据的显示
4.2:提示页面设置
(1):始终,非默认属性,如果目标报表没有提示页面可能报错或者影响报表的性能
(2):仅在缺少所需的参数值时:此属性是默认的属性,一般不执行目标报表的提示页面
(3):基于目标报表的默认提示设置,非默认属性,如果目标报表有提示页面则执行,没有则不执行
综上所述:为了减少不必要的麻烦,追溯的显示提示页面属性一般设置为第三种情况即可
五:汇总占比
总计:total ([订单笔数] for report
计数:count(distinct [月] for report)
平均:[总计]/[计数]
效果如下图

六:JS取Cognos对象的值
- Text Edit Box _textEditBox<prompt name>
- List Box _oLstChoices<prompt name>
- Drop Down List _oLstChoices<prompt name>
- Radio Button Group _oLstChoices<prompt name>
- Check Box Group _oLstChoices<prompt name>
- Date Edit Box txtDate<prompt name>
需要注意的是,具体取值的时候
如果是下拉
var form=getFormWarpRequest();
var province=form._oLstChoicesprovince;
alert(province.options[2].value);
如果是单选按钮组
var province=form._oLstChoicesprovince;
alert(province[0].value);
RS开发中的一些小技巧[不定期更新]的更多相关文章
- Python(^^^^^小技巧^^^^^——不定期更新)
偶然想到的小技巧 ''' 交互中对传入函数的参数的数目进行检测 ''' def func(a,b,c): print(a,b,c) s=input(">>>>:&qu ...
- 日常开发中的shell小技巧
工具推荐 命令行中很方便的代码统计工具---cloc 强大的分屏工具---tmux 最舒服的markdown书写工具---typora markdown图床推荐--七牛云 模拟生成熵(避免暴力手搓键盘 ...
- Java开发中的一些小技巧
原文:http://www.cnblogs.com/xdp-gacl/p/3490276.html 一. Java获取URL地址中传递的参数 /** * 获取URL中的参数名和参数值的Map集合 * ...
- iOS开发中的那些小技巧
前言:今天在写代码的过程中遇到一个需要修改系统navigationBar的背景色,我起初用的是barTintColor去修改但是防不住系统点击按钮的时候会有一个渲染高亮的效果,调了好久没有达到自己想要 ...
- JS开发中常用的小技巧
1.获取指定范围内的随机数 1 2 3 function getRadomNum(min,max){ return Math.floor(Math.random() * (max - min ...
- ios开发中的一些小技巧
1.如果在程序中想对某张图片进行处理的话(得到某张图片的一部分)可一用以下代码: UIImage *image = [UIImage imageNamed:filename]; CGImageRe ...
- JS开发中的一些小技巧和方法
生成指定范围内的随机数 当我们需要获取指定范围(min,max)内的整数的时候,下面的代码非常适合:这段代码用的还挺多的. function setRadomNum(min,max){ return ...
- Cocos2d-JS开发中的一些小技巧
1.获取URL中的请求参数的值----此方法接收参数名 function getQueryString(name) { var reg = new RegExp("(^|&)&quo ...
- C#中使用swagger小技巧
C#中使用swagger小技巧 swaggerUI显示的接口内容主要用于开发阶段便于与前端联调,不适合发布到对外的站点. 有以下两种方式,让接口不显示在SwaggerUI中 1.使用属性 [ApiEx ...
随机推荐
- null 与 string.IsNullOrEmpty 区别
!= null 就是不为null!string.IsNullOrEmpty 不是null且不是""(string.Empty) -----------Response: != n ...
- JS实现滑动门效果
html部分 p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 31.0px Consolas; color: #2b7ec3 } p.p2 { margin ...
- 【转】让Chrome化身成为摸鱼神器,利用Chorme运行布卡漫画以及其他安卓APK应用教程
下周就是十一了,无论是学生党还是工作党,大家的大概都会有点心不在焉,为了让大家更好的心不在焉,更好的在十一前最后一周愉快的摸鱼,今天就写一个如何让Chrome(google浏览器)运行安卓APK应用的 ...
- 使用adb 查询data/data下的数据库
1.用cmd打开adb 2.输入adb shell 3.cd到数据库所在目录 4.输入sqlite3 person.db(person.db为要操作的db名称,根据需要修改) 5.输入sql语句(每个 ...
- 【技术贴】VirtualBox给VDI格式的虚拟机扩容
新建立了一个虚拟机用来装一些比较烦的软件,比如数据库什么的,但是初始的时候硬盘放小了,找了很久才找到解决方案(我的数据库是动态大小的): 1.直接在虚拟机关闭的状态下,在设置-->存储--> ...
- nginx+php 安装手册
http://www.cnblogs.com/hxl2009/archive/2013/06/11/3131627.html [mysql安装] php 安装 1: wget http://ftp. ...
- Oracle必须死之奇怪的ORA-06502错误
作为熟练.Net码农以及非熟练Oracle用户很多时候Oracle总给我一种这货就是存心恶心我们的感觉. 虽然不得不承认Oracle是个很(an)好(gui)的产品,但是总有那么好几下被恶心到了.比如 ...
- 在express站点中使用ejs模板引擎
在express站点中使用ejs模板引擎 文/玄魂 目录 在express站点中使用ejs模板引擎 前言 1.1 安装 1.2修改app.js 1.3创建测试页面 前言 使用 vs创建 ...
- 年终知识分享——UML、设计模式、设计原则
...
- RSA密钥的跨平台通用
RSA使用public key加密,用private key解密(签名相反,使用private key签名,用public key验证签名).比如我跟合作方D之间的数据传输,我使用D提供给我的publ ...