这两年二维码的使用非常火爆,为跟上潮流,我也接到了一个要求在cognos的报表中展示不同机构二维码的任务。由于某些原因不方便展示以前做的报表,因此在这我自己造了一些数据供展示报表使用。
由于机构数量有限,而且使用环境不能联网,同时因为二维码使用的局限性我打算将二维码通过图像的形式展现出来(在这里所说的投机取巧展示二维码也就是说并不是根据实际的文字转换成二维码,而是先将二维码变成图片,然后根据数据显示不同的二维码。有些人可能认为这样不是真的展示二维码,不过对于这个报表开发任务是可以完成的,不管白猫黑猫能抓到老鼠的就是好猫。)
在这里我描述下开发过程:
1.在网上利用工具将文字转成二维码,为了展示效果我做了四张图片,然后将图片放到D:\cognos\c10\webapps\p2pd\samples\images(这是我自己的电脑上的地址,不同的环境需要放到对应的文件夹下。)
2.在提示页面新增一个值提示工具,参数名称p_xuhao,在静态选项中添加使用值和显示值
3.新增一个查询,里面写下如下脚本(这里的二维码地址就是图片地址,此处建议使用相对路径,绝对路径需开通apache或者IIS某些服务,并且迁移时比较麻烦)
select '二维码1'序号, '../samples/images/erweima1.jpg' 二维码地址 from dual
union all
select '二维码2'序号, '../samples/images/erweima2.jpg'二维码地址 from dual
union all
select '二维码3'序号, '../samples/images/erweima3.jpg'二维码地址 from dual
union all
select '二维码4'序号, '../samples/images/erweima4.jpg'二维码地址 from dual
4.在报表页面新增一个列表使用查询1,然后在列表中加入一个图像工具,选择源类型为数据项值,数据项值选择二维码地址
生成如下页面
5.运行报表
选择二维码2,点击完成,生成如下报表
通过手机端扫描该二维码,便可看到如下画面
至此一个简单的cognos展示二维码的报表便开发完成了,如果有什么地方没说清楚、不对或者有更好的建议大家可以告诉我,一起讨论讨论。
另外,为使报表更加容易使用,可以在报表页面增加一些新的东西,这里就不再说明了
运行报表效果如下(选择第几个二维码便可展示哪个二维码)