Hi Everyone,
We are trying to apply conditional coloring to selective notifications in the Worklist Notification Region on the Oracle EBS R12.2.10 homepage, in order to visually indicate priority to users.
The standard region uses an OATableBean with OAMessageStyledTextBean fields. We've attempted several approaches, including:
-> Using transient attributes in the View Object (VO)
-> Adding style attributes in the base query
-> Applying CSS dynamically in the controller using OADataBoundValueViewObject
-> Setting RENDER_STYLE_ATTR and INLINE_STYLE_ATTR via UIConstants
-> Referencing custom styles from custom.css
Unfortunately, none of these have resulted in the desired UI changes. It appears that the standard Worklist region might be enforcing rendering constraints or overriding the styles. We're looking for guidance or alternative solutions to achieve this functionality.
code snippet for your reference - using DataBoundValue class
OADataBoundValueViewObject cssjob1 = new OADataBoundValueViewObject(subject1,"ApplyColor",viewInstanceName);
subject1.setAttributeValue(OAMessageStyledTextBean.INLINE_STYLE_ATTR, customStyle); – its applying color to all the rows. not working for conditionally format
subject1.setAttributeValue(OAMessageStyledTextBean.RENDER_STYLE_ATTR,cssjob1);
another code snippet from my CO file
oAViewObject.reset();
// while(oAViewObject.hasNext())
Row\[\] rows = oAViewObject.getAllRowsInRange();
for(int colIndex =0; colIndex< rows.length; colIndex++){
pageContext.writeDiagnostics(this, "inside while loop ",1);
Row row = rows\[colIndex\];
String rowColor = (String)row.getAttribute("ApplyColor");
// OAMessageStyledTextBean subject1 = (OAMessageStyledTextBean)tableBean.findIndexedChild("NtfSubject");
pageContext.writeDiagnostics(this, "text bean found on table and applying color ",1);
if ("OraErrorText".equals(row.getAttribute("ApplyColor"))) {
for (String colName : columnNames){
OAWebBean colBean = webBean.findChildRecursive(colName);
pageContext.writeDiagnostics(this, "colBean is "+colName,1);
if(colBean != null){
OAWebBean cellBean = (OAWebBean)colBean.getIndexedChild(colIndex);
pageContext.writeDiagnostics(this, "cellBean is "+colName,1);
cellBean.setAttributeValue(OAWebBeanConstants.INLINE\_STYLE\_ATTR,rowColor);
cellBean.setAttributeValue(OAWebBeanConstants.RENDER\_STYLE\_ATTR,rowColor);
}
else
// subject1.setStyleClass((String)row.getAttribute("ApplyColor"));
subject1.setAttributeValue(oracle.cabo.ui.UIConstants.STYLE\_CLASS\_ATTR,customStyle);
}
}
If anyone has encountered a similar requirement or has suggestions on how to achieve it, I'd greatly appreciate your insights and support.
Thank you,
Krishna