Other items on the good news front… I have been continuing to challenge the ASUG/GBN folks about the location and time for the fall Business Objects conference. The inside rumor is that the initial round of location proposals has been processed and some final decisions are being made. I suggested Maui as a location, but it seems that’s not going to be an option.
This tip comes courtesy of Joe Szabo. I met Joe many years ago at a common client. A few weeks ago we had a casual conversation in the hallway at the 2009 GBN conference. I don’t remember how we got started but the subject of documenting complex Web Intelligence reports came up somehow. I was probably complaining and Joe said something like, “… but don’t you just do blah blah blah? That’s what I do, and it works great.” This post is going to be all about the “blah blah blah” that Joe shared with me. It will help you provide documentation for complex Web Intelligence reports. It will even help debug reports. And best of all, it will help determine exactly what is different between those two different versions of the same report so you can make sure the right version gets migrated into production.
In Part I of this series I talked briefly about the need for report writers to sometimes “make up” data. In that post I showed how I could use the Web Intelligence Rich Client (or alternatively Desktop Intelligence) to import data from a spreadsheet in order to fill out holes in data. In this post I am going to show an equivalent solution using multiple data providers from a universe instead. I will redo the same example shown before (with a lot fewer screenshots since quite a bit of the process is the same). Because I am using a universe I can show two different possible solutions. Continue reading “Making Up Data Part II: Using Universe Data”
I am often asked why I still participate so much on BOB after all of these years. The main reason is I still get inspired by questions that make me think a little bit. The puzzle for today’s post was presented as a question something like this:
How can I display each individual value selected in the UserResponse() function on its own row in a table?
I believe the reason for wanting this behavior is fairly clear. If you have a bunch of complex data it would be much easier for the report consumer to read this:
XYZ123ABC
DEF456HIJ
BOB111BOB
Instead of this:
XYZ123ABC;DEF456HIJ;BOB111BOB
As is often the case, the strict answer to the question is “you can’t do it that way” with Web Intelligence. Despite the “you can’t…” answer I am going to show how it can be done.
I got an exciting email earlier… it seems that I have been invited to attend (and present at) the second annual Mastering Business Objects conference in Australia. In my opinion, the conference last year was an excellent event (and I’m not just saying that because I got to go.) I tend to prefer smaller gatherings like user groups or smaller conferences because I get to meet and interact with a lot more people. Oh, and I got to go surfing.
This year the event will move a bit south to Melbourne. Here are the specific details as recently published:
I will post more details as they become available.
It’s funny because just this evening I was talking to Daniel (my 3rd grader) and he wanted to know (as he was petting one of our family cats) if any cats were poisonous. I told him that as far as I knew, there was only one poisonous mammal, the platypus. Which is native to… Australia. After a quick visit to Wikipedia I know now that there are a variety of shrews that are also poisonous, but I felt good about the fact that I at least remembered the platypus.
Reporting tools are designed to report. Seems simple, doesn’t it? But sometimes they need to do more in order to meet the requirements. For example, a frequent question on BOB (in fact it’s in the Reporter FAQ) goes like this:
I have only six months of data, but I have to show all twelve months in my report. How can I show the missing data?
The trick is to understand that Business Objects does not make up data. It just doesn’t have that capability. And you can’t edit the report directly in order to add those extra values to the result set. However, there are a couple of tricks that I can share that will help solve this issue. Continue reading “Making Up Data Part I: Personal Data Providers”
In the first post in this series I talked about different places I could place complex calculations. I reviewed some pros and cons of doing calculations during ETL, in the universe, or on a report. In this post I am going to focus only on report calculations. I will cover the formulas versus variables debate and show a couple of tricks to make working with variables a little bit easier along the way.
When working with the reporting suite from Business Objects there are many different calculation engines. A report developer can create custom formulas or variables in Desktop Intelligence, Web Intelligence, and of course Crystal. A universe designer can build custom objects using database functions in the universe. An ETL architect can design special query transformations. So where do you do the work?
How can I calculate the number of business days between two dates?
The easiest answer is to use a calendar table with a flag for business days because that takes care of everything quite easily. You can even mark holidays along with weekend days and make the results more useful.
But suppose you don’t have a calendar table. Suppose you don’t care about holidays, you simply want to count the number of Monday – Friday days between a range of dates. Can you do that?
The answer is coming if you read the rest of the post.
Note: This technique was shown in public on Monday at the GBN conference. I had written this blog post some time ago but waited to release it until after the presentation had been delivered. The presentation has been uploaded to my blog and is available for download from the conference page.
I have uploaded the latest pdf files for my presentations from the 2009 GBN conference. You can download them from my conference presentations page. I did two presentations this year.
Return of the Variables
Presentation Abstract
It’s time to pull out some variables again as we revisit a popular topic from past conferences. Report variables can provide a more creative, efficient, and effective means of completing the detailed analysis required for your reports. The focus of this presentation is building documents, using report functions, and reviewing variable tricks that can be used to solve reporting challenges. The presentation this year will focus primarily on the SAP BusinessObjects Web Intelligence product and include some of the newest features that have recently become available, but there will be some goodies for users of prior versions as well.
Universe Models for Recursive Data
Presentation Abstract
Recursive data can present a special challenge to SAP BusinessObjects developers because SQL is not natively able to process the relationships. This presentation will show several different methods for modeling recursive data along with the pros and cons of each. All of the methods shown have been used on real-world projects. Attendees will gain a better understanding of the complexities of dealing with inventory models, organizational hierarchies, and other types of recursive data.
As time allows I will be adding detailed blog posts for each of these presentations. I am cheating a bit this year. I have already written two blog posts that detail most of the “Variables” presentation:
Calculating Business Days Between Two Days Via Report Functions
This post covers slides 19 through 33 of the same presentation and is already written. I need to make a few tweaks and will likely publish it on Friday. Until then the link above won’t seem to be valid, but it should work after the post is published.
That leaves only the initial portion of the presentation to write up, and I hope to have it done fairly soon. The detailed posts for the Designer presentation will take a bit longer.