Hard to Find CMC Settings Revealed
I imagine that the Business Objects development team had some heated debates about where to put various settings within the CMC application. However, I suspect that when planning out Business Object XI 3.0 and 3.1 some of the decisions were made by a single sleepless product manager with a grudge. I offer the following points as evidence supporting this suspicion. Actually, all joking aside, I am mostly writing this article for my own future reference, because I know I will forget where these selected settings are located.
Set Default Viewer URL
Honestly I wasted hours trying to find this in BO XI 3.1, on two different occasions. There is something about this one that fools my mind into forgetting where it is. This setting is essential to any administrator that uses a distinct web server, a server alias, a load balancer, or any other configuration that would change the URL users use to access the system from what BO thought it to be during installation. This URL is primarily used by BO when it sends out links to documents (using OpenDocument URLs), such as a scheduled job sending an email to users with a link to the refreshed report instance which resides with the Business Objects XI system. When you alter it, you really only want to alter the server and domain name portion.
In XIR2 you can find the “Set Default Viewer URL” setting in:
CMC > Objects > Object Settings > Processing Settings

In XI 3.0 and XI 3.1 you can find the “Set Default Viewer URL” setting in:
CMC > Applications > CMC > Processing Settings

Yes, there is quite a bit of difference in the location of those settings. With practice you may be able to remember both for a few weeks, if you are like me. I suggest bookmarking this page for future reference.
Setting Document Instance Limits
Instances if left unchecked can destroy your system. Seriously, all it takes is a lack of instance limits and a refresh every 5 minutes job. If that doesn’t scare you start thinking about the fact that there is no limiter for inbox instances. By default the scheduled job instance limits are not too bad, but you can make them more restrictive and you probably should before your users get used to your surprisingly generous limits. The only problem you face if finding where to make this setting:
In XIR2 you can find the “Delete excess instances” and “Delete instances after N days” settings in:
CMC > Settings > Limits
In XI 3.0 and XI 3.1 you can find the “Delete excess instances” and “Delete instances after N days” settings in:
CMC > Folders > (right-click top-level folder) > Limits
CMC > Personal Folders > (right-click top-level folder) > Limits

Final Words
If you want to share the location of any settings or configurations that you think are less than obvious please mention them in the comments and I will update the article with them as well to be sure that the search engines index them and help stop others developers from struggling because they can’t find the settings on their own.
BO XI Distributed Environment: The Standalone Java Application Server
When you are building a small sandbox it is great to put everything all in one place and create a Business Objects solution that is a one-stop shop (a.k.a. putting all of your eggs in one basket). This works for lots of small-to-medium sized BO systems, but sometimes you want to do a little more. Sometimes you want some fault-tolerance, high-availability, and/or fault-tolerance. In any of these cases you might decide to build something really cool: a distributed Business Objects Enterprise XI 3.X Environment.
In this article, I would like to talk about putting your Java Web Application Server on a separate dedicated machine. You could chose Apache Tomcat, or your could get a little more crazy and go with Oracle’s WebLogic. Either way, the principles are the same.
Does BO Support Mixed Mode?
Perhaps your BO CMS, job, and reporting servers are all running on Windows machines. Perhaps you are thinking that you would like to run your Java applications on a Linux server. No problem. Business Objects has documented that it is acceptable to mix different Operating Systems in your BO environment as long as all servers running a particular component are of the same Operating System. What does this mean? It means that you would be running in a unsupported mode if you ran one CMS in your cluster on Windows and another CMS in the cluster on Linux. But if you put all of your web applications on Linux you should have no problems getting support and you should not expect any unusual issues. In fact, in my opinion, if your web application servers are not clustered, you could get away with running Apache on one Windows server and WebLogic on a Linux server, since they do not communicate with each other.
How Do I Create a Dedicated BO Web Application Server?
The hardest part is setting up your Java Web Application Server. I won’t help you here, but there is plenty of help out there in the great Internet to guide you in configuring Tomcat or even setting up WebLogic. Once this is setup all that you have to do is copy the WAR files over to the server (or you can even upload them from your client machine using the WebLogic Administration Console). Yes, this is all you have to do for Business Objects XI 3.0 and later.
Don’t I Need to Install BO on the Server?
No, do not believe the documentation. You do not need to install BO on the server as long as you can generate the WAR files from some other server. It is true! The documentation would have you believe that regardless you need to copy over at least the “deployment” folder and a “java” folder, but this is not true. These are ONLY needed if you are needing to run “wdeploy” on the Java Web Application Server. In my case, I can always use a CMS machine to generate my WebLogic and Tomcat WAR files so why would I want to put BO software on another server? If I put some of the BO binaries on my Java Web Application Server then I have to worry about maintaining/patching the software on that server as well. I don’t know about you, but I don’t need more work and more things to forget to do.
Where Do I Get the WAR Files From?
As I said, go look at the CMS machine. Follow the documentation* to help you find the “wdeploy” application (it is a command-line driven application, probably found here > wdeploy weblogic10 predeployall“. You do not need to configure any “config.*” files for your Java Application Server as these are ignored when running with the option “predeployall”. After you run the command successfully, take about 4 to 7 minutes, then you will be told where your WAR files will be located, for example:
What About XI R2, Do I Need to Put BO on the Web App Server?
All java deployments/application except for the “webcompadapter” are standalone applications that require nothing more than a supported JVM to be installed on the Java Web Application Server. The only application that uses the “webcompadapter” is CMC, so if you are intending to provide CMC access through some other method (such as a small unadvertised Tomcat instance installed on a CMS server) then you do not need to install any Business Objects binaries or libraries on the Java Web Application Server. The issue here is that the XIR2 still has some JNI calls in CMC, it was not fully converted from COM to Java and so the “Web Component Adapter” is required by the CMC and it requires that certain binaries of Business Objects Enterprise XI R2 be installed on the server.
————-
* Recommended published BO documentation is the “BusinessObjects Enterprise XI 3.1 SP2 Web Application Deployment Guide” or if not running Service Pack 2 then use the “Web Application Deployment Guide” for your OS (hint: Unix applies to both Unix and Linux). Of course, the file names will look more like the following: xi3-1_deployconfig_unix_en.pdf or plugin-xi31_sp2_webappd_unix_en.pdf (for example)
Note: I have not played enough with IIS and .NET to know much about deploying the different application there. I am sure the process is quite different, so I would not try to use this article as a guideline for any .NET BO web applications.
New Query Builder Guide Version Published – Includes XI 3.x Updates and Relationship Functions
I have finally completed my nearly 3-month long update to our Query Builder Guide. Like most things I do, the deeper I got into it the more I found that needed work.
What kept me going, and delaying my previously promised delivery time, was the realization that aside from Ted Ueda‘s famous blog entries on Path Queries and Relationship Functions, I was building the only “how-to” guide for those Query Builder and SDK Query functionalities. I dug a little deeper into each one and broke them down into their basic components, making it easy to understand how to use them and to also be able to respect their limits.
I decided that this version of the guide was such a milestone for the guide that I jumped straight paste the 1.1 version and splurged on bestowing it with the 1.2.0 Version. The truth is that the guide itself grew by 50% in file size! Yes, I added that much new textual content!
Click here to order the latest Business Objects XI Query Builder Guide
This new version includes numerous additions to bring the guide current up to Business Objects Enterprise XI 3.1. However, for those of you not yet on BO XI 3.x, please take note of something I explain clearly in the guide:
“Query Builder is based on the BOE SDK and both tools in their BO XI 3.1 versions support all of the older methods and syntax used in BO XI R2. In fact, syntax that was labeled as deprecated in XI R2 continues to function even in XI 3.1. It is certain that XI 3.x brought some new functionality, and this guide will distinguish these, but rest assured most of what you can do in Query Builder is applicable to all BO XI releases.”
In fact, BO XI R2 administrators will greatly benefit from the newly added “Relationship Queries” section. This nearly secret functionality take Query Builder to a whole new level.
Future Customers
For the many of you to whom I committed to deliver this BO XI 3.x guide update earlier, I apologize for my tardiness and I sincerely thank you for your patience and understanding. To those of you still on the fence about whether or not to get this guide, I believe I have now packed it with enough value to make your decision a “no-brainer”.
Click here to order the latest Business Objects XI Query Builder Guide
Current Customers
To the now hundreds of you who have already purchased a previous version of our Query Builder guide, thank you again for your business and come get your free updated version. Please refer to your order confirmation email to obtain the instructions on how to get your COMPLETELY FREE updated guide. If you have any trouble, just email us and we will get it for you ASAP.
Future Improvements Coming Still
If left in a vacuum I might never publish any updates because I would never feel they are complete. This time is no different. I wanted to include more sample queries for Relationship Queries and Path Queries, but I decided it was better to publish the guide now that those tutorial sections are complete and then publish another version when I have added some additional, wonderful samples of each. As you can see, we are always working to improve this guide.
OK, now I think I will publish this little posting and get on with what is left of my beautiful Saturday afternoon. I hope someone out there appreciates my little sacrifice.
Hardly Working? No, Hard at Work on the Query Builder Guide
I feel I owe a small explanation for the lull in the new article publishing on the site. I have remained active at responding to article comments, but I haven’t published a new article in nearly a month (although I just added some details to the latest article on BO XI 3.1 Fix Packs). Anyway, I have been busy on BusinessObjectsTips.com topics, this is sure!
I have been working on a big update to our popular Query Builder guide. As many of us have discussed through email, I have been updating the guide, originally written based on BO XI R2, to include all of BO XI 3.1 new functionality. All of the XI R2 functionality still works perfectly in XI 3.1, but XI 3.1 brings some exciting new stuff like “Path Queries” and “Relationship Functions”. Writing and testing out examples always takes more time than I estimate, as also does my day job and personal life
. I hope to finish and publish it, the new guide version, not my personal life, by the end of this month. Of course, as always you can find the guide here (link) and as always this new version will be made available freely to all previous Query Builder customers.
OK, back to work now. Thanks for your patience.
[UPDATE - March 6, 2010]: I have just published the promised guide update. Please see my new posting “New Query Builder Guide Version Published – Includes XI 3.x Updates and Relationship Functions“
Denying Security Access Explicitly in Business Objects XI 3.1
Maybe I am the only one, but I have struggled twice with this topic and so I thought that I would write this short article to make sure I remember the correct workflow and hopefully help someone else out too.
Sometimes You Just Want to Say “Stay Out”
There are times when you may want to refuse access to a specific user or user group. In my case, this is usually for a specific sub-group of users where the parent group is allowed access. To be honest, there are many reasons and some may be just to appease over-cautious administrators, customers, etc.
Most Restrictive Rights Always Take Precedence
Whatever the reason, the rule of Business Objects security is always that “the most restrictive rights always take precedence”. Knowing this, some choose to deny access explicitly, even though it was never granted in the first place, just to be sure that now and in the future that user/group does not get access.
Adding the Users or Groups
In our example we will use a folder, but this translates to any object, top-level rights, or even applications. Of course, you will want to log in to the Central Management Console (CMC) using an account that is a member of the “Administrators” group. Locate your object, we are using the “BOT Expenses” folder I created for this example. By default when I select the “User Security” option from the right-click drop-down menu on the folder I see this:

By default my environment denies access to the “Everyone” group. This is done by editing the top-level folder security in advance.
Next we need to select “Add Principal” and choose the groups to whom we want to deny access.

Assign Security – What? Why? I Want to Deny not Assign!
Click the “Add and Assign Security” button and you will see the following page:

Now here is where I was getting confused. At first I was looking for an Access Level called “No Access”, this was the BO XI R2 in me. Then I thought well, maybe it is implicit here and all I have to do is “Save” and be done. I clicked “Apply” and the screen just re-drew itself, making no changes. Then I clicked “OK” and I saw this message:

Click “OK” here just returned me to the screen depicted in the first screenshot above and erased all of the “principals”. Thank you CMC, I love you too.
So How Do You Make It Work?
OK, I will just tell you how to make it work. Return back to this screen:

Now either click the “Remove Access” button or manually un-check the boxes next to “Inherit From Parent Folder” and “Inherit From Parent Group”. Either action results in the same result. Now click “OK” and you will still get this prompt:

But this is “OK” this time… so click “OK”.
Successfully Explicitly Denying Security Access in Business Objects XI 3.1
Now you should see the groups that you select with the most desired access level of “No Access”.

Congratulations, to you if you figured this out on your own and can remember this less-than-intuitive CMC security workflow. Once you look at the removing inheritance aspect it makes sense, but it still seems like there should have been an access level called “No Access”. Perhaps, an overly cautious Business Objects XI 3.1 administrator would create a custom access level that has everything explicitly denied and call this one “No Access”, unless Business Objects XI reserves that name in which case you could call it “No Access – Thanks to BusinessObjectsTips.com!”. That would be a great name for sure.
Please read Marshall’s important note below for additional explanation.
Hello!?!? It’s Called BO XI 3, not XI Release 3!
It is time to flog myself openly here. Not only to seek forgiveness, repentance, and even pity; but to avoid having to update every single mistaken reference made to Business Objects XI 3!
Once and for all “Release 3″ or “R3″ Never Was and Never Has Been
\
OK, maybe some BO folks referred to Business Objects Version 12.X as “Release 3″ in the early days, but is seems a memo went out internally and externally, and apparently over my head that said the whole “Release” nomenclature was being dropped. Honestly, it was a bit derogatory and made the SW sound more “beta” than SAP-BO certainly desired. So now with the word “release” out of the picture, we are to understand that XI 3 (also called Version 12 under the covers, confusing huh?) is a whole new complete and solid full version. Given all of the hype that BO employees put on it some of us would expect XI 3 to fall just short of bringing about world peace.
Anyway, there it is. Let’s all just call it Business Objects XIR3, oops, I mean XI 3 (or even XI 3.X if you like to type and speak more).
Can I Connect/Use Oracle 11g Database with Business Objects XI?
The answer is “Yes”, but it depends on which version of BOXI you are running.
Business Objects Enterprise XI Release 2
Any version of BOXI R2 equal to or greater than Business Objects XI R2 Service Pack 5 includes an Oracle 11g driver. However, if you find your instance is still lurking below SP5 you are not without hope. According to Oracle, 10g drivers can successfully be used to connect to Oracle 11g databases. Business Objects does not support using R2 SP4, or lower, to connect to and Oracle 11g database, but that doesn’t mean that you can’t do it. It only means they won’t take any “Customer Messages” on any issues related to such connections, unless the issues can be recreated on database supported for your BO XI service pack level.
Be sure to check your service pack’s “Support Platforms” for the particular supported implementation of Oracle 11g middleware. For example, XI 3.1 SP2 states clearly for Linux/Unix machines running CMS you must install Oracle 10.2 middleware to connect to your Oracle 11.1 database.
Business Objects Enterprise XI 3.X
Starting with Business Objects XI Release 3.1 Business Objects has included an Oracle 11g driver. Now if you are on XI 3.0 and you can’t jump to 3.1 just yet, you might want to borrow a trick from Administrator’s of XIR2 systems lower than XI R2 SP5 and use an Oracle 10g driver to connect to that cutting edge 11g database. Just don’t expect BO to support you on that venture.
Business Objects Enterprise: Java or .NET?
There are a lot of factors that will come into play in deciding how to deploy your Business Objects XI R2 application, that is to say in the decision whether to deploy InfoView in the Java (Apache Tomcat, WebLogic) or .NET (IIS) flavor. There will be many reasons such as available skillsets, technical familiarity, web server restrictions, etc. However, there may be one factor you are not considering… future functionality support!
Another Win for Java
At one point in time Business Objects, the company that is, announced that they would maintain all future released functionality of Business Objects XI in both the .NET and the Java flavor. However, sometime in 2007 it appears that BusinessObjects went back on this commitment. Probably due to the less-than-booming economy BO was faced to make a difficult choice and because of the overwhelming popularity of Java among BO’s customers, the decision was made to focus all of the product roadmap’s enhancements first on Java.
BO’s Stepchild: .NET and IIS
Therefore I suggest you consider this point carefully when making a decision to deploy InfoView on .NET. If you choose to do so you are ignoring the fact that Business Objects is playing favorites. If you select .NET you are selecting the stepchild. Don’t expect enhancements and fixes to be as readily available for your .NET platform as they are and will be for Java. You don’t believe me? Well go ahead and try to install Business Objects XI 3.0 on IIS and .NET. Not going to happen, at least supposedly not until sometime in the second half on 2008. That’s my point and it is just the beginning.
Business Objects XI R2 Java AND .NET?
With Business Objects XI R2 it is possible to actually run both platforms at the same time on IIS and Apache Tomcat, although most BO administrators would probably want to avoid this. However, if you require and SDK interface and you have no Java developers then do you really have a choice? Honestly, many BO administrators are doing this with BOXI R2 and so I would not want to discourage you if you have no other choice.
In the end this is your decision. We just want to be sure that you have this little bit of extra input. We would hate to hear of anyone else having to spend hundreds of person hours moving from the .NET platform to the Java platform because they didn’t know what they were getting in to. Its not that much work to switch you say? The rework can range from SDK rewrites to OpenDocument.aspx updates across every single report that uses OpenDocument. Make your choice wisely, what more can we say?


