This is an IBM Automation portal for Digital Business Automation products. To view all of your ideas submitted to IBM, create and manage groups of Ideas, or create an idea explicitly set to be either visible by all (public) or visible only to you and IBM (private), use the IBM Unified Ideas Portal (https://ideas.ibm.com).
We invite you to shape the future of IBM, including product roadmaps, by submitting ideas that matter to you the most. Here's how it works:
Start by searching and reviewing ideas and requests to enhance a product or service. Take a look at ideas others have posted, and add a comment, vote, or subscribe to updates on them if they matter to you. If you can't find what you are looking for,
Post an idea.
Get feedback from the IBM team and other customers to refine your idea.
Follow the idea through the IBM Ideas process.
Cloud Pak for Business Automation - including Business Automation Studio and App Designer, Business Automation Insights
Business Automation Workflow (BAW) - including BAW, Business Process Manager, Workstream Services, Business Performance Center, Advanced Case Management
Content Services - FileNet Content Manager
Content Services - Content Manager OnDemand
Content Services - Daeja Virtual Viewer
Content Services - Navigator
Content Services - Content Collector for Email, Sharepoint, Files
Content Services - Content Collector for SAP
Content Services - Enterprise Records
Content Services - Content Manager (CM8)
Datacap
Automation Document Processing
Automation Decision Services (ADS)
Operational Decision Manager
Robotic Process Automation
Robotic Process Automation with Automation Anywhere
Blueworks Live
Business Automation Manager Open Edition
IBM Process Mining
Welcome to the IBM Ideas Portal (https://www.ibm.com/ideas) - Use this site to find out additional information and details about the IBM Ideas process and statuses.
IBM Unified Ideas Portal (https://ideas.ibm.com) - Use this site to view all of your ideas, create new ideas for any IBM product, or search for ideas across all of IBM.
ideasibm@us.ibm.com - Use this email to suggest enhancements to the Ideas process or request help from IBM for submitting your Ideas.
Attached a possible implementation that you may find useful.
package odmtest;
import ilog.rules.teamserver.brm.IlrBaseline;
import ilog.rules.teamserver.brm.IlrRule;
import ilog.rules.teamserver.brm.IlrRulePackage;
import ilog.rules.teamserver.client.*;
import ilog.rules.teamserver.brm.IlrRuleProject;
import ilog.rules.teamserver.model.*;
import ilog.rules.teamserver.model.permissions.IlrPermissionException;
import java.util.*;
public class DecisionCenterCustomization {
public static void main(String[] args) throws IlrObjectNotFoundException, IlrPermissionException {
String serverUrl = "";
String login = "rtsAdmin";
String password = "rtsAdmin";
String datasource = "jdbc/ilogDataSource";
IlrSessionFactory factory = new IlrRemoteSessionFactory();
try {
factory.connect(login, password, serverUrl, datasource);
IlrSession session = factory.getSession();
String projectName = "cargo-profiling-main";
IlrRuleProject cargoProject = (IlrRuleProject) IlrSessionHelper.getProjectNamed(session, projectName);
IlrBaseline currentBaseline = IlrSessionHelper.getCurrentBaseline(session, cargoProject);
session.setWorkingBaseline(currentBaseline);
// Retrieve the current working rule project
// Query with BQL
String query = new String(
"Find all business rules such that the name of each business rule contains \"JK\"");
IlrDefaultSearchCriteria criteria = new IlrDefaultSearchCriteria(query.toString());
/* -- Retrieve std properties of a business rule
@SuppressWarnings("rawtypes")
List summaries = session.findElements(criteria, IlrModelConstants.ELEMENT_SUMMARY);
for (int i = 0; i < summaries.size(); i++) {
IlrElementSummary ruleSummary = (IlrElementSummary) summaries.get(i);
System.out.println(ruleSummary.getName());
System.out.println(ruleSummary.getPropertyValue("createdOn"));
} */
@SuppressWarnings("rawtypes")
List details = session.findElements(criteria, IlrModelConstants.ELEMENT_DETAILS);
for (int i = 0; i < details.size(); i++) {
IlrElementDetails detail = (IlrElementDetails) details.get(i);
System.out.println(getHierarchyPath(detail));
}
session.close();
} catch (IlrConnectException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static String getHierarchyPath(IlrElementDetails element) {
try {
if (!(element instanceof IlrRule))
return element.getName();
IlrRule rule = (IlrRule) element;
StringBuffer sb = new StringBuffer();
// Get the rule name
String name = rule.getName();
// Get the rule package
IlrRulePackage current = rule.getRulePackage();
Stack<String> stack = new Stack<String>();
while (true) {
if (current == null)
break;
// Push the package name onto the stack
stack.push(current.getName()+ ".");
// Next parent ...
current = current.getParent();
}
// Pop the stack and build the path
while (!stack.empty()) {
String folder = (String) stack.pop();
sb.append(folder);
}
// Append the rule name to the path
sb.append(name);
// Return the built path
return sb.toString();
} catch (Exception e) {
return element.getName();
}
}
}
o/p:
Jan 29, 2025 5:26:36 PM com.ibm.rules.decisioncenter.remoting.internal.RemoteSessionHttpExecutorBuilder log
INFO: {"url":"","datasource":"jdbc/ilogDataSource","username":"rtsAdmin","message":"Sign in successfully","date":"29 January 2025, 5:26:36 pm"}
Profiles.AC00000002 JK Name Test Profile
Profiles.AC00000014 JK DT Name Address Test Profile2
Profiles.AC00000012 JK DT Name Address Test Profile
Profiles.PC00000001 JK_TEST_Profile
Profiles.Alerts.Regions.PC00000001 JK_TEST_PROFILE
Jan 29, 2025 5:26:44 PM com.ibm.rules.decisioncenter.remoting.internal.RemoteSessionHttpExecutorBuilder log
INFO: {"url":"","datasource":"jdbc/ilogDataSource","username":"rtsAdmin","message":"Sign out successfully","date":"29 January 2025, 5:26:44 pm"}