今天客户提出一个小需求,那就是屏蔽掉报表的导出菜单中一些无用的项,并把导出CSV直接放出来。
如下图所示
要实现这个很简单,直接修改viewscontrolmessages.xml消息文件即可。
注:$FMW/Oracle_Home/bi/bifoundation/web/msgdb/messages/viewscontrolmessages.xml
修改的过程基本上就是注释掉不想显示的项,如上图中的“PDF、Powerpoint 2007+、Web Archive”,并把Data下面的CSV格式子项移出来。
子项移出来也很简单,直接用CSV格式子项的内容 替换 Powerpoint 2007+的内容即可。
xml修改好之后,直接放到
$FMW/Oracle_Home/user_projects/domains/bi/bidata/components/OBIPS/custommessages 目录之下(如果没有custommessages文件夹就创建它)
然后在web界面中点击“管理”-“重新加载文件和元数据” 无须重启即可生效。
附修改之后的xml如下:
注:该xml文件是biee12c 12.2.1.2.0 的文件,其它版本请参数如下注释手工修改。另外默认的xml文件没有格式,请在网上随便找一个在线xml格式化 工具格式化一下。
<?xml version="1.0" encoding="utf-8"?>
<!--DO NOT MODIFY THIS FILE. THIS FILE IS AUTOMATICALLY GENERATED AND IS REPLACED UPON UPGRADE OR REINSTALL.-->
<!--Contents of this file are Copyright (C) 2001-2007 by Oracle Corporation.-->
<!--Consult your Oracle BI documentation for how to override messages. Note that some or all messages may not be overriden unless your license specifically allows for it.-->
<WebMessageTables xmlns:sawm="com.siebel.analytics.web/message/v1" sawm:systemMessages="false">
<WebMessageTable>
<WebMessage name="kmsgEVCDownloadLinks">
<!-- Param command -->
<!-- target is parent so when saving from frameset we dont get access denied error -->
<HTML>
<script type="text/javascript" src="fmap:downloadguard.js"/>
<sawm:choose>
<sawm:when name="noMenu">
<a name="SectionElements" href="javascript:void(null);" οnclick="NQWClearActiveMenu();Download('@{command}&path=@{path}&Format=excel&Extension=.xlsx&bNotSaveCommand=true',null, '@{viewID}', 'excel'); return false">
<sawm:messageRef name="kmsgEVCLinkDownloadExcel"/>
</a>
<a name="SectionElements" href="javascript:void(null);" οnclick="NQWClearActiveMenu();Download('@{command}&path=@{path}&Format=txt&Extension=.csv&bNotSaveCommand=true', null, '@{viewID}', 'txt'); return false">
<sawm:messageRef name="kmsgEVCLinkDownloadData"/>
</a>
<a name="SectionElements" href="javascript:void(null);" οnclick="NQWClearActiveMenu();Download('@{command}&path=@{path}&Format=mht&bNotSaveCommand=true', null, '@{viewID}', 'mht'); return false">
<sawm:messageRef name="kmsgEVCLinkDownloadMHTML"/>
</a>
</sawm:when>
<sawm:otherwise>
<a name="ReportLinkMenu" title="@{exporttitle}" href="javascript:void(null)" οnclick="return NQWPopupMenu(event,'idDownloadLinksMenu@{jsStatePath}')">
<sawm:messageRef name="kmsgEVCLinkDownload"/>
</a>
<div id="idDownloadLinksMenu@{viewID}" class="NQWMenu" οnmοuseοver="NQWMenuMouseOver(event)">
<sawm:messageRef name="kuiMenuShadowBegin"/>
<!-- PDF -->
<!-- a class="masterMenuItem NQWMenuItem NQWMenuItemWIconMixin" name="SectionElements" href="javascript:void(null);" οnclick="NQWClearActiveMenu();Download('@{command}&path=@{path}&Format=pdf&Attach=1&bNotSaveCommand=true', null, '@{viewID}', 'pdf'); return false">
<table class="MenuItemTable" cellspacing="0" cellpadding="0">
<tr>
<td class="MenuItemIconCell">
<img alt="" src="fmap:catalog/exporttopdf_ena.png"/>
</td>
<td class="MenuItemTextCell">
<sawm:messageRef name="kmsgEVCLinkDownloadPDF"/>
</td>
</tr>
</table>
</a -->
<sawm:choose>
<sawm:when name="enableNativeExcel">
<a class="masterMenuItem NQWMenuItem NQWMenuItemWIconMixin" name="SectionElements" href="javascript:void(null);" οnclick="NQWClearActiveMenu();Download('@{command}&path=@{path}&Format=excel2007&Extension=.xlsx&bNotSaveCommand=true', null, '@{viewID}', 'excel2007');">
<table class="MenuItemTable" cellspacing="0" cellpadding="0">
<tr>
<td class="MenuItemIconCell">
<img alt="" src="fmap:catalog/exporttoexcel_ena.png"/>
</td>
<td class="MenuItemTextCell">
<sawm:messageRef name="kmsgCatalogActionExportExcel2007"/>
</td>
</tr