BusinessObjects Board

Interview Questions

I saw this on Tek-tips. Anyone want to take a crack at it?


These are some of the questions I was asked on the interview. My opinion is that all of them are to trick you into a wrong answer. Try to answer them without looking up in BusinessObjects - if you’re not dealing with reports 7x24 but you answered all corectly than you’re a real guru …

  1. How can you suppress the ‘No data to fetch’ messages in Reports?

  2. How can you create a graph with horisontal bars?

  3. When getting ‘No data to fetch’ msg, how can you make the report to display at least one record?

  4. How can you import a single-tab report into another multi-table report so the single-tab report will keep its formatting?

  5. Can you link the ‘universe based’ query to one based on RDBMS stored procedure?

  6. How can you display 5 top records only?

  7. What’s the Detail object used for?

Good luck!


Steve Krandel :us: (BOB member since 2002-06-25)

  1. No, maybe with VBA
  2. No, unless using embedded MS Excel chart
  3. If there is no record there is no record to display, but one could use a cell and hide the cell if the data provider is not empty
  4. Ranking
  5. Details are attached to dimensions, but one cannot drill on details nor link on details when linking multiple data providers

Andreas :de: (BOB member since 2002-06-20)

There are a number of ways. VBA can be used to set Application.Interactive to Off. But this will also prevent the user from responding to any prompts. You can also adjust your query so that every data provider is a union to a table that returns at least one row, thereby eliminating the possibility of returning no rows. That “special row” should be designed so that it doesn’t change (impact) the actual results should they be returned.

I liked Steve’s answer earlier on this one… put the paper on the table, then get up and move around the corner. Now the chart is horizontal instead of vertical. :slight_smile: I’ve seen some interesting things done with the Repeat() function to simulate horizontal (bar) charts as well.

Again, a union can be used to combine an extra row to a data provider, thereby eliminating the “no data to fetch” message. Or you can have two blocks, one hidden behind the other, where one block is displayed when there is data, and the other block (with a hard-coded text message) displayed only when there is no data in the “real” data provider.

Without VBA, use a template. You’ll have to recreate the data provider from scratch. With VBA, you can move (copy) the data provider to the multi-tabbed document, then either via VBA or manually use a template to move the formatting. Bottom line is that you use a template to move the formatting, but have to use VBA or manually move the data provider as there is no feature within the product to do this.

I’ve never tried this, but I don’t see why not. Since you can link a universe-based query to a personal data provider, and that works just fine, I don’t see why this wouldn’t work.

Need more information. Do you want the top 5 records based on some other value? Or the “pure” top 5 based on the query? You have a number of choices… use the “rank” feature in BusinessObjects, use “partial results” and limit the rows returned to 5 (using a descending sort to get the right order), or use a Rank() feature of your RDBMS, assuming one is available. But since we’re talking about report solutions, that last one probably should not be considered.

Issues with the reporter rank function include the fact that all data is returned, resulting in a (potentially) large cube. But it will handle tied results. And by including a break on some other dimension object, you can determine the top 5 per X, or some other value.

Issues with the partial results include the fact that ties are not handled properly, and you can only get the “overall” top 5, not the top 5 per some item.

Officially, any non-defining attribute should be a detail object. So while customer ID would be a dimension, customer name, address, phone, and so on should be details. They are used primarily in an environment where lots of report linking is done. If you don’t use the linking technique, then details are less of an issue. Since details are associated with a dimension, once their associated dimension is linked to some other dimension, then the detail object is available (and valid) in a block with combined data.

Some objects (date objects come to mine) could be defined in a universe as both dimensions and details. For example, Order Date could be a detail for Order Number. The Order Number only has one Order Date. By setting Order Date to be a detail, you can link on Order Number to some other data provider and continue to use Order Date in the block without the famous “Variables are not compatible” message. Yet you may want to drill on a hierarchy of Order Year, Order Quarter, Order Month, Order Date. In that case, it would have to be a dimension.

How’d I do? :smiley:

Dave


Dave Rathbun :us: (BOB member since 2002-06-06)

We did this recently. It worked just fine! We had a dataprovider based on the universe and one that used VBA to retrieve data from a stored procedure. :mrgreen:


Eileen King :us: (BOB member since 2002-07-10)

Here are the answers as posted on tek-tips.

The correct answers are as follows (to my best knowledge):

  1. How can you suppress the ‘No data to fetch’ messages in Reports? Cannot be done in BO. (vba will suppress all msgs)

  2. How can you create a graph with horisontal bars?
    BO doesn’t support this future.

  3. When getting ‘No data to fetch’ msg, how can you make the report to display at least one record? It’s already there but empty, it shows up when in ‘structure’ mode, and you can format it - that is what they wanted.

  4. How can you import a single-tab report into another multi-table report so the single-tab report will keep its formatting? Cannot be done.

  5. Can you link the ‘universe based’ query to one based on RDBMS stored procedure? Yes, linked it as you link any type of query - stupid question.

  6. How can you display 5 top records only? There can be many answers, depends on what they need.

  7. What’s the Detail object used for? There could be many uses.


Steve Krandel :us: (BOB member since 2002-06-25)

So do you think the response "Ask :mrgreen: " was valid for any of those? :slight_smile:


JennFisher :us: (BOB member since 2002-06-25)

So post a link to this thread in Tek-tips :slight_smile:


Cindy Clayton :us: (BOB member since 2002-06-11)

There was a creative solution to this posted on BUSOB-L a while back, that was the union technique I mentioned. I found a post by a familiar face here that provides a refresher. :wink:

Dave


Dave Rathbun :us: (BOB member since 2002-06-06)

There was an excellent solution to this on I think the infosol site…hold on…http://www.infosol.com/bi/boss/...its one of the 2002 ones - my connection is too slow to find out which.


Nick Daniels :uk: (BOB member since 2002-08-15)

This was my little idea as copied from the reply in the tek tips forum:

If anyone wants an example, then drop a line…


blom0344 :netherlands: (BOB member since 2002-09-04)

blomm,

how about an example???

sri


Sridharan :india: (BOB member since 2002-11-08)

I’m confused with that question. Can someone clear it out for me.

Thanks

Sri


Sridharan :india: (BOB member since 2002-11-08)

To elaborate some more about the tilted graph, you can use this in combination with alerter to give people a quick indication on increase/decrease when comparing two columns.

Imagine having a table with salesvalue latest month and as a bias the average of the quarter before. A third column stores the percentage increase/decrease:

Rise/Dwindle % = (-)/<Avg sales prev quarter

This column is set to percentage , but displays a very wide range of -200 , up to +2300%.

With an alerter you can use a color grade to focus attention on the high or low values. (standard stuff)

Now add column to the right and use a variable or formulae like:

=Fill(“©”,Ln(Power(Abs(<Rise/Dwindle %>*10),2)))

With Windings 2 font this gives nice blocks, especially with italic font (experiment)

The silly calculation keeps the fill within limits, which is nice. The Abs function lets you indicate negative values. Use alerter to color negative values red/orange and the positive ones in grades of green.
For values around the 0% use a grey hue to indicate neutral values…


blom0344 :netherlands: (BOB member since 2002-09-04)

Ummmm, I didn;t know that was an acceptable answer, ever. How can they say it cant be done, you and I know it is done everyday one way or another. Dave gave 2 examples of a way to do it. Now, I guess if you really read this question and disect it, they are not asking if you can import the single tab as a tab on another report, they are asking if you can import that tab to an existing tab (not specified really) and keep the formatting. Now that, would be very difficult. They might be right on that one.


Scott Bowers :us: (BOB member since 2002-09-30)

To keep this up to date, horizontal bars were added as a feature for 6.5 right?


Namlemez :djibouti: (BOB member since 2005-03-14)

They were indeed. You can use them to build a rudamentary Gantt chart but it’s no substitute for MS Project or similar.

with VBA we can handle almost any valid reporting.

[Moderator Note: I don’t see what point this comment plays here. Also – you are being very narrow-minded. You are not considering the case that one deploys a WebI-only environment for report consumers – perhaps on a Unix box – and that one then cannot even use VBA at all.]


BOBurao (BOB member since 2005-09-20)

Heres what I would of done … I know you are still getting a ‘no data message’ - but you can at least type the message you want

  1. How can you suppress the ‘No data to fetch’ messages in Reports?

Create a ‘detail’ variable ‘BOnoData’
In the formula type something like ‘There are no records for your query’
Format Cell
Appearance
Tick Hide Cell
Add the following
=NumberOfRows(“report name”)<>0

When the user runs the report they get the report, but with your message


LLBuchanan :new_zealand: (BOB member since 2006-03-08)