我在交互式报表中使用了下面的查询,并关闭了转义特殊字符。这只是给文本着色,而要求是突出整个行。
有什么建议吗?
例:我在交互式报表中使用了下面的查询,并将转义特殊字符关闭。
SELECT "P_IT_ISSUES"."ISSUE_SUMMARY" as "ISSUE_SUMMARY",
decode("P_IT_PEOPLE_1"."PERSON_NAME",NULL,'Unassigned',
"P_IT_PEOPLE_1"."PERSON_NAME")
as "ASSIGNED_TO",
case when "P_IT_ISSUES"."STATUS" ='Open'
then '<aaab style= " color: green; " >'
||"P_IT_ISSUES"."STATUS"||'</aaab>'
when "P_IT_ISSUES"."STATUS" ='On-Hold'
then '<aaab style= " color: red; " >'
||"P_IT_ISSUES"."STATUS"||'</aaab>'
else '<aaab style= " color: red; " >'
||"P_IT_ISSUES"."STATUS"||'</aaab>'
end "Status"
FROM "P_IT_PEOPLE" "P_IT_PEOPLE_1",
"P_IT_DEPARTMENTS" "P_IT_DEPARTMENTS",
"P_IT_PEOPLE" "P_IT_PEOPLE",
"P_IT_ISSUES" "P_IT_ISSUES"
WHERE "P_IT_ISSUES"."IDENTIFIED_BY_PERSON_ID"="P_IT_PEOPLE"."PERSON_ID"
AND "P_IT_ISSUES"."ASSIGNED_TO_PERSON_ID"="P_IT_PEOPLE_1"."PERSON_ID"(+)
AND "P_IT_ISSUES"."RELATED_DEPT_ID"="P_IT_DEPARTMENTS"."DEPT_ID"
我需要对这篇文章进行修改。http:/www.grassroots-oracle.com201306highlight-cell-background-in-apex-report.html
要高亮整个cellrow,你需要对你的列应用一个条件类,类似于你现在的做法--但可以是一个简单的值。
首先,在你的查询中添加一个隐藏的列。
case when status = 'X' then 'foo' else 'bar' end my_class
你可以将其添加为一个可见列的HTML表达式,例如:状态列。
<span class="#MY_CLASS#">#STATUS#</span>
然后用JS做一个刷新后的动态操作,确保 "初始化时火 "被选中。这个JS会寻找任何带有该类的元素,然后在DOM中找到相关的cellrow,并给该行涂上颜色。
$("#my_report_static_id .foo").each(function(){
$(this).closest('tr').css({"background-color":"red"});
});
如果有必要的话,你可以使用类似的技术对该颜色进行参数化。