1 2 3 18 Previous Next

SAP BusinessObjects Web Intelligence

257 Posts

WIS 30270.jpg

 

I have seen many blogs regarding this message without an answer. I had the same message and was able to figure out the solution, thought of sharing if this might help anyone.

 

Environment: SAP BI Platform 4.1 SP 06 Patch 4

 

Reason:

Having 2 objects with same name in one class.

 

Solution:

Refresh the Universe Structure

Check the Integrity

Change the name or

Place one object in different class

Export the universe and it works fine no more issue.

 

FYI: I see that this is resolved in SP09 for 4.1

 

 

MK!

Hello All,

 

During recent search I found that some of the posts are requested to add/Subtract Hours from a TimeStamp or manually changing the Time Zones at report Level, unfortunately we do not have a direct way Like AddHours(). So I am explaining below a method that can be useful in such cases.

 

Let us experiment this using CurrentDate(). Now a simple rule is that When using RelativeDate() function it needs the number of days that you want to add or subtract but, we need for Hours.

 

So the twist is that if we divide a day in hours we have 24 Hours now if we want x no of hours to be added or Subtracted then we just need to take that part from the day i.e 24 Hrs and add/subtract that form the Current Time.

 

For e.g. to get 1 Hrs added or subtracted we will take 1 part from 24 which is 1/24 similarly for 2 Hrs it will be 2/24 and so on.

 

For half hour it would be 0.5/24.

 

Lets see how it works at report level.

 

Capture.jpg

 

So as you can see we have two columns Current Date & Time and Modified Date & Time. As we can notice that Modified Date & Time is 1 hr behind the Current Date & Time.

 

Here's the code how I have handled it at Report Level.

 

[Current Date & Time]=FormatDate(CurrentDate();"MM/dd/yyyy hh:mm:ss a")

 

[Modified Date & Time]=FormatDate(RelativeDate(CurrentDate();-(1/24));"MM/dd/yyyy hh:mm:ss a")

 

If you notice the underlined part of Modified Date & Time it shows how we have deducted 1 Hr from the Current Date.

 

The above method can be useful when you want to convert a Local Time Zone to a different Time Zone at report level.

 

Please share your valuable inputs and comments if we have a better way to deal with it.

 

Regards

Niraj

One of my colleagues had an interesting requirement (and I'm pretty sure many users might've), to show halfhourly timestamps in a chart, so they can show number of calls received to report issues every half hour (in a day) vs how many of them were resolved.

 

Updated (6/15/2016 8:44 AM EST): As few people suggested and/or requested, I'm updating this blog with another way to do this. Thanks to Amit Kumar, for the formula he suggested.

 

There are 2 ways of doing this, which means, 2 different formulas can be used to create the Halfhourly buckets.

  1. Get the timestamp using the formula =Formatdate([Date timestamp];"HH:mm:ss") and then, create the 48 different halfhourly timestamp buckets.
  2. Get the timestamp using the same formula, convert each timestamp (every second) of a day to a numeric value and then, create 48 different halfhourly timestamp buckets.

 

Both solutions will work perfect.

 

Below is the data that we'll be using during this exercise:

 

Date TimestampCalls ReceivedCalls Resolved
6/12/2016 12:00:01 AM98
6/12/2016 12:15:00 AM21
6/12/2016 12:30:00 AM32
6/12/2016 12:45:00 AM32
6/12/2016 1:00:00 AM43
6/12/2016 1:15:00 AM54
6/12/2016 1:30:00 AM76
6/12/2016 1:45:00 AM32
6/12/2016 2:00:00 AM87
6/12/2016 2:15:00 AM43
6/12/2016 2:30:00 AM76
6/12/2016 2:45:00 AM76
6/12/2016 3:00:00 AM32
6/12/2016 3:15:00 AM65
6/12/2016 3:30:00 AM65
6/12/2016 3:45:00 AM75
6/12/2016 4:00:00 AM31
6/12/2016 4:15:00 AM20
6/12/2016 4:30:00 AM42
6/12/2016 4:45:00 AM86
6/12/2016 5:00:00 AM42
6/12/2016 5:15:00 AM86
6/12/2016 5:30:00 AM42
6/12/2016 5:45:00 AM75
6/12/2016 6:00:00 AM86
6/12/2016 6:15:00 AM41
6/12/2016 6:30:00 AM52
6/12/2016 6:45:00 AM41
6/12/2016 7:00:00 AM41
6/12/2016 7:15:00 AM85
6/12/2016 7:30:00 AM40
6/12/2016 7:45:00 AM73
6/12/2016 8:00:00 AM51
6/12/2016 8:15:00 AM51
6/12/2016 8:30:00 AM62
6/12/2016 8:45:00 AM84
6/12/2016 9:00:00 AM40
6/12/2016 9:15:00 AM84
6/12/2016 9:30:00 AM40
6/12/2016 9:45:00 AM84
6/12/2016 10:00:00 AM43
6/12/2016 10:15:00 AM76
6/12/2016 10:30:00 AM43
6/12/2016 10:45:00 AM43
6/12/2016 11:00:00 AM54
6/12/2016 11:15:00 AM87
6/12/2016 11:30:00 AM32
6/12/2016 11:45:00 AM32
6/12/2016 12:00:00 PM65
6/12/2016 12:15:00 PM43
6/12/2016 12:30:00 PM76
6/12/2016 12:45:00 PM51
6/12/2016 1:00:00 PM73
6/12/2016 1:15:00 PM73
6/12/2016 1:30:00 PM73
6/12/2016 1:45:00 PM62
6/12/2016 2:00:00 PM32
6/12/2016 2:15:00 PM76
6/12/2016 2:30:00 PM32
6/12/2016 2:45:00 PM65
6/12/2016 3:00:00 PM32
6/12/2016 3:15:00 PM76
6/12/2016 3:30:00 PM32
6/12/2016 3:45:00 PM76
6/12/2016 4:00:00 PM31
6/12/2016 4:15:00 PM75
6/12/2016 4:30:00 PM31
6/12/2016 4:45:00 PM75
6/12/2016 5:00:00 PM64
6/12/2016 5:15:00 PM64
6/12/2016 5:30:00 PM20
6/12/2016 5:45:00 PM75
6/12/2016 6:00:00 PM64
6/12/2016 6:15:00 PM42
6/12/2016 6:30:00 PM75
6/12/2016 6:45:00 PM53
6/12/2016 7:00:00 PM72
6/12/2016 7:15:00 PM72
6/12/2016 7:30:00 PM32
6/12/2016 7:45:00 PM61
6/12/2016 8:00:00 PM32
6/12/2016 8:15:00 PM72
6/12/2016 8:30:00 PM33
6/12/2016 8:45:00 PM61
6/12/2016 9:00:00 PM33
6/12/2016 9:15:00 PM72
6/12/2016 9:30:00 PM32
6/12/2016 9:45:00 PM72
6/12/2016 10:00:00 PM32
6/12/2016 10:15:00 PM76
6/12/2016 10:30:00 PM32
6/12/2016 10:45:00 PM76
6/12/2016 11:00:00 PM64
6/12/2016 11:15:00 PM65
6/12/2016 11:30:00 PM20
6/12/2016 11:45:00 PM64
6/12/2016 11:59:59 PM92


Solution 1:

Step 1:

Create the below Dimension variables

  • v_TimeStamp =FormatDate([Date Timestamp];"HH:mm:ss") (to convert the Date Timestamp to HH:mm:ss format (24 hr format))

Updated (6/30/2016 3:57 PM EST): We can use a simple one line formula to replace the huge one with 40 If conditions. (Courtesy of Clemens Potter)

  • v_Halfhourly Buckets (this creates 48 different buckets depending on the v_TimeStamp)

=FormatDate([Date Timestamp];"HH:") + (If(FormatDate([Date Timestamp];"mm") < "30") Then "00:00" Else "30:00")

 

Disregard the below one:

=If([v_TimeStamp]  Between  ("00:00:00";"00:29:59"))  Then  "00:00:00"

ElseIf([v_TimeStamp]  Between  ("00:30:00";"00:59:59"))  Then  "00:30:00"

ElseIf([v_TimeStamp]  Between  ("01:00:00";"01:29:59"))  Then  "01:00:00"

ElseIf([v_TimeStamp]  Between  ("01:30:00";"01:59:59"))  Then  "01:30:00"

ElseIf([v_TimeStamp]  Between  ("02:00:00";"02:29:59"))  Then  "02:00:00"

ElseIf([v_TimeStamp]  Between  ("02:30:00";"02:59:59"))  Then  "02:30:00"

ElseIf([v_TimeStamp]  Between  ("03:00:00";"03:29:59"))  Then  "03:00:00"

ElseIf([v_TimeStamp]  Between  ("03:30:00";"03:59:59"))  Then  "03:30:00"

ElseIf([v_TimeStamp]  Between  ("04:00:00";"04:29:59"))  Then  "04:00:00"

ElseIf([v_TimeStamp]  Between  ("04:30:00";"04:59:59"))  Then  "04:30:00"

ElseIf([v_TimeStamp]  Between  ("05:00:00";"05:29:59"))  Then  "05:00:00"

ElseIf([v_TimeStamp]  Between  ("05:30:00";"05:59:59"))  Then  "05:30:00"

ElseIf([v_TimeStamp]  Between  ("06:00:00";"06:29:59"))  Then  "06:00:00"

ElseIf([v_TimeStamp]  Between  ("06:30:00";"06:59:59"))  Then  "06:30:00"

ElseIf([v_TimeStamp]  Between  ("07:00:00";"07:29:59"))  Then  "07:00:00"

ElseIf([v_TimeStamp]  Between  ("07:30:00";"07:59:59"))  Then  "07:30:00"

ElseIf([v_TimeStamp]  Between  ("08:00:00";"08:29:59"))  Then  "08:00:00"

ElseIf([v_TimeStamp]  Between  ("08:30:00";"08:59:59"))  Then  "08:30:00"

ElseIf([v_TimeStamp]  Between  ("09:00:00";"09:29:59"))  Then  "09:00:00"

ElseIf([v_TimeStamp]  Between  ("09:30:00";"09:59:59"))  Then  "09:30:00"

ElseIf([v_TimeStamp]  Between  ("10:00:00";"10:29:59"))  Then  "10:00:00"

ElseIf([v_TimeStamp]  Between  ("10:30:00";"10:59:59"))  Then  "10:30:00"

ElseIf([v_TimeStamp]  Between  ("11:00:00";"11:29:59"))  Then  "11:00:00"

ElseIf([v_TimeStamp]  Between  ("11:30:00";"11:59:59"))  Then  "11:30:00"

ElseIf([v_TimeStamp]  Between  ("12:00:00";"12:29:59"))  Then  "12:00:00"

ElseIf([v_TimeStamp]  Between  ("12:30:00";"12:59:59"))  Then  "12:30:00"

ElseIf([v_TimeStamp]  Between  ("13:00:00";"13:29:59"))  Then  "13:00:00"

ElseIf([v_TimeStamp]  Between  ("13:30:00";"13:59:59"))  Then  "13:30:00"

ElseIf([v_TimeStamp]  Between  ("14:00:00";"14:29:59"))  Then  "14:00:00"

ElseIf([v_TimeStamp]  Between  ("14:30:00";"14:59:59"))  Then  "14:30:00"

ElseIf([v_TimeStamp]  Between  ("15:00:00";"15:29:59"))  Then  "15:00:00"

ElseIf([v_TimeStamp]  Between  ("15:30:00";"15:59:59"))  Then  "15:30:00"

ElseIf([v_TimeStamp]  Between  ("16:00:00";"16:29:59"))  Then  "16:00:00"

ElseIf([v_TimeStamp]  Between  ("16:30:00";"16:59:59"))  Then  "16:30:00"

ElseIf([v_TimeStamp]  Between  ("17:00:00";"17:29:59"))  Then  "17:00:00"

ElseIf([v_TimeStamp]  Between  ("17:30:00";"17:59:59"))  Then  "17:30:00"

ElseIf([v_TimeStamp]  Between  ("18:00:00";"18:29:59"))  Then  "18:00:00"

ElseIf([v_TimeStamp]  Between  ("18:30:00";"18:59:59"))  Then  "18:30:00"

ElseIf([v_TimeStamp]  Between  ("19:00:00";"19:29:59"))  Then  "19:00:00"

ElseIf([v_TimeStamp]  Between  ("19:30:00";"19:59:59"))  Then  "19:30:00"

ElseIf([v_TimeStamp]  Between  ("20:00:00";"20:29:59"))  Then  "20:00:00"

ElseIf([v_TimeStamp]  Between  ("20:30:00";"20:59:59"))  Then  "20:30:00"

ElseIf([v_TimeStamp]  Between  ("21:00:00";"21:29:59"))  Then  "21:00:00"

ElseIf([v_TimeStamp]  Between  ("21:30:00";"21:59:59"))  Then  "21:30:00"

ElseIf([v_TimeStamp]  Between  ("22:00:00";"22:29:59"))  Then  "22:00:00"

ElseIf([v_TimeStamp]  Between  ("22:30:00";"22:59:59"))  Then  "22:30:00"

ElseIf([v_TimeStamp]  Between  ("23:00:00";"23:29:59"))  Then  "23:00:00"

ElseIf([v_TimeStamp]  Between  ("23:30:00";"23:59:59"))  Then  "23:30:00"

 

Step 2:

  1. Create a Column Chart, with v_Halfhourly Buckets on Category axis (X axis), Calls Received and Calls Resolved on Value Axis 1.
  2. Go to Format Chart -> Value Axis -> in Stacking, select Unstacked
  3. Go to Format Chart -> Plot Area -> Design -> update Spacing within Groups as 0.1 and Spacing between Groups to 0.5, that'll make the bars for Calls Received and Calls Resolved for a Halfhourly Bucket look close to each other, which looks nice to compare the 2 values. Apply and OK.
  4. In addition to that, Format Data Series of Calls Received as Red color and Calls Resolved as Green color.


Solution 2:
Step 1:

Create the below Dimension variables

  • v_Date TimeStamp =ToDate(FormatDate([Date Timestamp];"M/d/yyyy HH:mm:ss");"M/d/yyyy HH:mm:ss") (to convert the Date Timestamp to 24 hr format) 
  • v_Hours =ToNumber(FormatDate([DateTimeStamp];"HH")) (to get the Hour in 24 hr format in numeric datatype, we want it to be 24 hr format, so we don't have to worry about AM or PM)
  • v_Minutes =ToNumber(FormatDate([DateTimeStamp];"mm")) (to get the mins in numeric datatype)
  • v_Seconds =ToNumber(FormatDate([DateTimeStamp];"ss")) (to get the seconds datatype)
  • v_Numeric Value =([v_Hours]*3600)+([v_Minutes]*60)+[v_Seconds] (this creates a numeric value for every sec of the day (0 - 86399), as a day has 86400 secs, logic is simple, multiple Hours by 3600 as an hour has 3600 secs, multiple Minutes by 60 as a minute has 60 secs and add the Seconds)

Now, main variable of this logic

  • v_Halfhourly Timestamps (this creates 48 different buckets depending on the v_Numeric Value)

=If([v_Numeric Value]  Between  (0;1799))  Then  "00:00:00"

ElseIf([v_Numeric Value]  Between  (1800;3599))  Then  "00:30:00"

ElseIf([v_Numeric Value]  Between  (3600;5399))  Then  "01:00:00"

ElseIf([v_Numeric Value]  Between  (5400;7199))  Then  "01:30:00"

ElseIf([v_Numeric Value]  Between  (7200;8999))  Then  "02:00:00"

ElseIf([v_Numeric Value]  Between  (9000;10799))  Then  "02:30:00"

ElseIf([v_Numeric Value]  Between  (10800;12599))  Then  "03:00:00"

ElseIf([v_Numeric Value]  Between  (12600;14399))  Then  "03:30:00"

ElseIf([v_Numeric Value]  Between  (14400;16199))  Then  "04:00:00"

ElseIf([v_Numeric Value]  Between  (16200;17999))  Then  "04:30:00"

ElseIf([v_Numeric Value]  Between  (18000;19799))  Then  "05:00:00"

ElseIf([v_Numeric Value]  Between  (19800;21599))  Then  "05:30:00"

ElseIf([v_Numeric Value]  Between  (21600;23399))  Then  "06:00:00"

ElseIf([v_Numeric Value]  Between  (23400;25199))  Then  "06:30:00"

ElseIf([v_Numeric Value]  Between  (25200;26999))  Then  "07:00:00"

ElseIf([v_Numeric Value]  Between  (27000;28799))  Then  "07:30:00"

ElseIf([v_Numeric Value]  Between  (28800;30599))  Then  "08:00:00"

ElseIf([v_Numeric Value]  Between  (30600;32399))  Then  "08:30:00"

ElseIf([v_Numeric Value]  Between  (32400;34199))  Then  "09:00:00"

ElseIf([v_Numeric Value]  Between  (34200;35999))  Then  "09:30:00"

ElseIf([v_Numeric Value]  Between  (36000;37799))  Then  "10:00:00"

ElseIf([v_Numeric Value]  Between  (37800;39599))  Then  "10:30:00"

ElseIf([v_Numeric Value]  Between  (39600;41399))  Then  "11:00:00"

ElseIf([v_Numeric Value]  Between  (41400;43199))  Then  "11:30:00"

ElseIf([v_Numeric Value]  Between  (43200;44999))  Then  "12:00:00"

ElseIf([v_Numeric Value]  Between  (45000;46799))  Then  "12:30:00"

ElseIf([v_Numeric Value]  Between  (46800;48599))  Then  "13:00:00"

ElseIf([v_Numeric Value]  Between  (48600;50399))  Then  "13:30:00"

ElseIf([v_Numeric Value]  Between  (50400;52199))  Then  "14:00:00"

ElseIf([v_Numeric Value]  Between  (52200;53999))  Then  "14:30:00"

ElseIf([v_Numeric Value]  Between  (54000;55799))  Then  "15:00:00"

ElseIf([v_Numeric Value]  Between  (55800;57599))  Then  "15:30:00"

ElseIf([v_Numeric Value]  Between  (57600;59399))  Then  "16:00:00"

ElseIf([v_Numeric Value]  Between  (59400;61199))  Then  "16:30:00"

ElseIf([v_Numeric Value]  Between  (61200;62999))  Then  "17:00:00"

ElseIf([v_Numeric Value]  Between  (63000;64799))  Then  "17:30:00"

ElseIf([v_Numeric Value]  Between  (64800;66599))  Then  "18:00:00"

ElseIf([v_Numeric Value]  Between  (66600;68399))  Then  "18:30:00"

ElseIf([v_Numeric Value]  Between  (68400;70199))  Then  "19:00:00"

ElseIf([v_Numeric Value]  Between  (70200;71999))  Then  "19:30:00"

ElseIf([v_Numeric Value]  Between  (72000;73799))  Then  "20:00:00"

ElseIf([v_Numeric Value]  Between  (73800;75599))  Then  "20:30:00"

ElseIf([v_Numeric Value]  Between  (75600;77399))  Then  "21:00:00"

ElseIf([v_Numeric Value]  Between  (77400;79199))  Then  "21:30:00"

ElseIf([v_Numeric Value]  Between  (79200;80999))  Then  "22:00:00"

ElseIf([v_Numeric Value]  Between  (81000;82799))  Then  "22:30:00"

ElseIf([v_Numeric Value]  Between  (82800;84599))  Then  "23:00:00"

ElseIf([v_Numeric Value]  Between  (84600;86399))  Then  "23:30:00"

 

Step 2:

  1. Create a Column Chart, with v_Halfhourly Timestamps on Category axis (X axis), Calls Received and Calls Resolved on Value Axis 1.
  2. Go to Format Chart -> Value Axis -> in Stacking, select Unstacked
  3. Go to Format Chart -> Plot Area -> Design -> update Spacing within Groups as 0.1 and Spacing between Groups to 0.5, that'll make the bars for Calls Received and Calls Resolved for a Halfhourly Timestamp look close to each other, which looks nice to compare the 2 values. Apply and OK.
  4. In addition to that, Format Data Series of Calls Received as Red color and Calls Resolved as Green color.

 

Voila, we did it. This is what the chart looks like, now.

Snap 01.png

 

Please try it and let me know your feedback, so I can fix if there are any issues or improve it further.


Thanks,
Mahboob Mohammed

I've seen quite a few times, people requesting how to conditionally change font color of hyperlinked columns depending on the values in the cell. Let's see how to approach and address that request. I'll be using the below sample data for this exercise:

Snap 01.PNG

After applying a hyperlink on the Company Name (with the website value), let's see how can we change the font color of Apple to Aqua, Google to Green, Oracle to Orange, and so on.

 

Steps to add hyperlink:

  • Right click on the Company Name column -> Linking -> click Add Hyperlink
  • In the Link to Web page, in the space given to enter the web address, write the formula =[Website] and click Parse. (we already have the link value in [Website] object.
  • Choose the Target window as New window
  • In Tooltip, click the down arrow on the right, click build formula, write formula as ="http://"+[Website], and click OK
  • Click Apply and OK

Snap 03.pngSnap 02.png

Steps to format hyperlink:

  • Click inside the cell of one of the Company Names to see the html code in the Formula bar, which would be ="<a href=\"=[Website]\" title=\""+("http://"+[Website])+"\" target=\"_blank\" nav=\"web\">"+[Company Name]+"</a>" as shown below.

Snap 04.png

 

  • Between "a" and "href" in the "a href" in the beginning , add the text style='text-decoration:none;" +  (If([Company Name]="Apple") Then "color:aqua" ElseIf([Company Name]="Facebook") Then "color:#4766A9"  ElseIf([Company Name]="Google") Then "color:green" ElseIf([Company Name]="Oracle") Then "color:red" ElseIf([Company Name]="SAP") Then "color:orange") + "' and parse and apply the formula.

 

Note: The whole text in the cell would now be:

="<a  style='text-decoration:none;" +  (If([Company Name]="Apple") Then "color:aqua" ElseIf([Company Name]="Facebook") Then "color:#4766A9"  ElseIf([Company Name]="Google") Then "color:green" ElseIf([Company Name]="Oracle") Then "color:red" ElseIf([Company Name]="SAP") Then "color:orange") + "' href=\"=[Website]\" title=\""+("http://"+[Website])+"\" target=\"_blank\" nav=\"web\">"+[Company Name]+"</a>"

 

This is what the result looks like, Facebook is showing up before Apple, because of the color code we're using for Facebook will come before color name we're using for Apple, when sorted. We can add Company Name in the beginning, so it sorts using Company Name and then hide that extra column by right clicking on it -> Hide -> click on Hide Dimension.

Snap 05.png

Please try it and let me know your feedback.

 

Thanks,
Mahboob Mohammed

Hi Team,

 

Every now and then we will have requirement to show Pie chart for multiple measures in Webi (It is quite straight and easy in EXCEL !!) .In WebI ,answer is NO .


Case


Assume we have BW data for Accounts Receivables at Document and Line Item level .To bring in all this data into WebI and deriving ageing buckets with respect to dates will hamper performance .

 

In BEx it is easy to derive Amount from dates into Ageing Buckets 0-30 , 31-45 and 46-60 .

 

So , now we have 3 key figures .

 

Measures.png

Users always keen in seeing this totals in PIE . Here starts the problem , because PIE in WebI must be derived based out of dimension values and we don’t have one.

 

Solution 1: We will have a personal data provider (Excel/Text) with all the required bucket names as values , then create universe , use it as another data provider to build report .

 

Solution 2:In BO 3.x and BI 4.x , in case you already have a relational universe. Select that universe as a data source , select any of the dimension object ,use Custom SQL

 

Select '0-30' as "Ageing Bucket" from table name UNION Select '31-45'  as "Ageing Bucket" from table name UNION Select '46-60' as "Ageing Bucket" rom table name

 

make sure you append from clause for every select .

 

Pre requisites for using relational connection.


We need one connection that points to any of the relational databases (SQL server/ Oracle..)

Don’t bother if there is no database in your environment .Think , luckily most of us at least use one for BOBJ Auditing or our native teacher EFASHION That is going to be our relational connection !!

 

Solution 3 : Viable Solution (I’m thinking of !!)


From BI 4.1 SP6 , Free Hand SQL as a data source supports at great extension .  We are going to derive the Custom dimension to build the PIE .

 

Code

Select '0-30' as "Ageing Bucket" UNION Select '31-45'  as "Ageing Bucket" UNION Select '46-60' as "Ageing Bucket"

That’s all , our custom dimension is ready to create PIE. Use this code and run the query .


In Report

Create a variable to redefine all the 3 key figures as one measure with respect to our custom dimension .

Amount =If([Ageing Bucket]="0-30";[0-30];If([Ageing Bucket]="31-45";[31-45];If([Ageing Bucket]="46-60";[46-60])))


Create Chart

Now create PIE with Ageing Bucket Dimension (from Free Hand SQL source) and Amount variable

 

Pie Chart.PNG

 

Hope this small piece of information saves our time .

 

Thank you for reading

 

Please share your inputs .

Many a time, we've seen users and/or developers wanting to be able to display (and/or print) continuous/sequential page numbers in a multi-tab Webi document.

 

Suppose, we've a Webi Document with 3 tabs, Tab 1 having 3 pages worth of data in Page mode, Tab 2 having 5 pages worth of data in Page mode, and Tab 3 having 10 pages worth of data in Page mode. We'd like to display (and/or print):

  • Page numbers 1-3 in Tab 1
  • Page numbers 4-8  in Tab 2 (instead of restarting numbering from 1 again and displaying 1-5) and
  • Page numbers 9-18 in Tab 3 (instead of restarting numbering from 1 again and displaying 1-10)

 

This workaround will come handy.

 

Step 1:

Create the below variables:

  • Total Number of Pages in Tab 1 = 0 (don't worry, its OK, we'll update it later, to function dynamically)
  • Total Number of Pages in Tab 2 = 0 (don't worry, its OK, we'll update it later, to function dynamically)
  • Total Number of Pages in Tab 3 = 0 (don't worry, its OK, we'll update it later, to function dynamically)
  • Total Number of Pages in Document = [Total Number of Pages in Tab 1] + [Total Number of Pages in Tab 2] + [Total Number of Pages in Tab 3]
  • Page Numbers in Tab 1 = Page() + " of " + [Total Number of Pages in Document]
  • Page Numbers in Tab 2 = ([Total Number of Pages in Tab 1] + Page()) +" of " + [Total Number of Pages in Document]
  • Page Numbers in Tab 3 = ([Total Number of Pages in Tab 1] + [Total Number of Pages in Tab 2] + Page()) +" of " + [Total Number of Pages in Document]

 

Step 2:

Input Controls:

  • In Tab 1, create a single value Input Control with the variable object [Total Number of Pages in Tab 1] with Entry Field option, so we're able to manually type-in values.
  • Similarly, create an input control in Tab 2 with [Total Number of Pages in Tab 2]
  • Similarly, create an input control in Tab 3 with [Total Number of Pages in Tab 3]

 

Step 3:

Displaying the Page Numbers:

  • Drag and drop a blank cell in Tab 1 in Header or Footer (wherever we want to show the Page Numbers) and add =[Page Numbers in Tab 1] variable in it formula.
  • Similarly, in Tab 2, using [Page Numbers in Tab 2]
  • Similarly, in Tab 3, using [Page Numbers in Tab 3]

 

Voila, we're done. Every time we refresh a report, we need to open each tab and manually check the last page number and type that number in the Input Control of that tab. And then, we can print it or save it to PDF.

 

Note: This will display (and/or print) page numbers as 1 of 18 and so on, as we've a [Total Number of Pages in Document] variable. We can customize if we don't need that " of 18" part.

 

Very Important: Please make sure to type in Numbers only in the Input Control, if we type in text, it'll mess up the formulas and hence the page numbers displayed in one or all tabs may be wrong.

 

Try it and let me know your feedback.

 

Thanks,
Mahboob Mohammed

Picture this: You have just completed an upgrade of your BI Platform environment and you are now seeing some big changes to your Web Intelligence documents.

 

For some of you, this may have been a reality in the past.  How would you like to help ensure this doesn’t happen in the future?  Here’s how you can help!

 

We are looking for your Web Intelligence documents so that we can test them against newer versions of the BI Platform for you before you upgrade.

 

Before now:


You may be familiar with this scenario:

 

An update is installed and the WebI document shows different data. This could be due to either a calculation engine change or it may be an unintended code change.

 

These types of changes can be disruptive for everyone. Data you rely on and are expecting has changed, which may affect important business decisions. This also results in a scenario that can be difficult to troubleshoot and resolve.

 

Going forward:

 

The Product Support and Development teams have joined forces to create the Web Intelligence Calculation Testing project. We are looking for an initial group of customers to provide a sample of their documents to SAP.

 

These documents will be tested on current and future product versions to ensure they return accurate results before any new product release. If any changes are detected, they will be investigated and documented and, if required, fixed. If you choose to participate, the following criteria should be met:

 

  • You have a set of documents with data(~20)
  • Documents are not set to "Refresh on open"
  • Document version 4.0 and/or 4.1. Note: XI 3.1 documents are not in scope for the project at this time
  • Provided to SAP in .lcmbiar format

 

How to Join:

 

If you are interested in taking part, click the below link to send an email with your contact details:

 

Sign up for WebI Calculation Testing Project

 

Name:

Company:

Preferred phone number:

Preferred email address:

 

We will get back to you with additional information, including how to deliver the reports to us, and a consent form. Also, feel free to ask any additional questions you may have about the project in the email.

 

More information:

 

The Web Intelligence Bulletin

SAP BusinessObjects Web Intelligence 4.1: Calculation Engine Changes

Hi all,

 

 

Earlier this year, the new version of Galigeo G16 was released complete with many new features.

 

For those not familiar, Galigeo for Webi is a product that allows the inclusion of any kind of map in your Webi reports.

It behaves like other Webi components by consuming the queries of the report. The data is automatically transformed into geographic objects so these can be visualized directly on a map. Authors can then define many types of symbol representations (cloropleth, proportional symbols, pie charts, icons, labels, etc...) in order to highlight their indicators.

 

G4Webi_main_ux.png

 

 

Having all the information displayed on a map can be really helpful to understand the data. For example we can detect in the blink of an eye whether a territory is correctly covered or not, which zones are abandoned and where hot spots are.

 

Now, I'd like to focus on one of the new great features, Motion Maps.

 

Galigeo goes a step further by adding time based information to the visualization. Working with motion maps is very simple and is outlined as follows:

  1. Select a dimension in your query
  2. Animate the map against that dimension

G4Webi_motion_maps.png

For example this screenshot below shows the monthly evolution of store revenue. Click the play button and the map is animated like a movie. Users can also navigate manually within the time period they are interested in observing in more detail.


Same thing in video: https://www.youtube.com/watch?v=4NAfH655oog


Something even more fun is to represent some indicators using a heatmap. Combining this type of visualization with motion maps will allow the user to view their data in a way that resembles familiar with the TV weather forecast.G4Webi_motion_maps_heat.png


To see this sort of map, the Webi report requires two specific dimensions:

  • A geographic dimension. This dimension can be any information that provides a clue on the localization of a record: a zipcode, a pair of lat/long, a city name
  • A time dimension. Anything that represents time and can be ordered: time, date, period, etc...

 

For every object on the map, what we see is the combination of these two dimensions according to the position of the Motion Maps player.

 

Here is an example of data that is appropriate for motion maps:

 

ZoneYearIndicator
A2014150
A2015140
A2016130
B2014200
B2015205
B2016203
C2014160
C2015150
C2016140

 

(The "zone" value can be a zipcode for example)

 

With this type of data, the indicator can be represented on the map using a range of colors. Launching the motion maps on year will animate that dimension. All along users can see the evolution of the indicator in space and time.

 

 

If you want to try it out, you can download the application here: Galigeo for WebIntelligence: Location mapping software

 

 

I hope you found this article interesting!

 

 

Ganaël

When: May 4, 2015 - 11:30 am ET
Register  for this event…

APOS is pleased to present this online live  Q & A session in conjunction with SAP and SAPinsider. During this session,  SAP product experts will explore how SAP BI 4.2 can enrich the experiences of  both users and information consumers.

 

During planning for this session, the session  title went through a few iterations, including:

 

  • Will SAP's  BI Tool Convergence and Interoperability Strategy Make Your BI Team Better?
  • Platform  Progress, Tool Convergence, and Quadrant Qualms….Where are we now??

 

These titles, and the title  we finally settled on, all describe the session accurately, but the last, which  was deemed a bit controversial, describes a particular quandary that developed when  Gartner published its most recent BI Magic Quadrant for Business  Intelligence and Analytics Platforms.

 

Back in February - on Super  Bowl Sunday, to be precise -- Mark Richardson published a critique of Gartner's  change in direction. His post was called 'Moving  the Goalposts': Why #DataViz Often Fails to Reflect Reality. In his  post, Mark noted:

GARTNER has moved their focus for this document away from “the long-standing  BI requirement for centrally provisioned, highly governed and scalable  system-of-record reporting” – and toward “analytical agility and business user  autonomy”. That’s their call – but I think it is the wrong one.

There is a danger in reliance on ad hoc reporting  and data visualizations to the exclusion of the underlying data, which is why a  “system-of-record” reporting engine is so important.

 

It’s easy to be deceptive  with visualizations, even to deceive yourself, but the real problem in such  cases is generally inaccurate data, especially when taken cumulatively, in  which case simple, seemingly inconsequential variances can distort the picture  and lead to poor decision-making.

 

What is required above all, as Mark  Richardson points out, is stability, accuracy, and governance. Can these  qualities be said to be characteristics of a platform?

 

It has been nearly 2  years since Jayne Landry published Run Simple: Convergence of the SAP  BI Product Portfolio. Now, with the release of SAP BI 4.2, it's time to review the progress  SAP has made on the platform, and check the convergence and interoperability of  the BI tool portfolio.

 

From the conceptual to  the technical, this session will let you explore the boundaries and synergies  of the SAP BI 4.2 BI tool set, and discover the potential for Lumira, Design  Studio, Web Intelligence, Analysis for Office and HANA within your deployment of  the SAP BI platform.

Panelists will  include:

 

  • Jayne Landry - Global VP & GM, Business Intelligence, SAP
  • Ty Miller - Senior Director of Solution Management for Enterprise Business  Intelligence, SAP
  • Olivier Duvelleroy - Senior Director, Solution Management, Business  Intelligence, SAP
  • Alexander Peter - Product Manager, SAP
  • David Stocker - Senior Product Manager, SAP
  • Gregory Botticchio - Product Manager, Web  Intelligence, SAP
  • Adrian Westmoreland - Product Manager, SAP


Register  for this event…

Hello everyone,

 

Another long standing customer request has been implemented in Web Intelligence, but without great fanfare. So little so that I did not realize it had been implemented until recently.

 

We now have the ability to export URL based images to PDF and Excel from Web Intelligence.

 

This has been a complaint from users for ages and it is now possible to do.

 

Previously if you created a WebI report with an image from a URL, if you exported it to PDF or Excel you would get a blank cell.

 

Starting with BI 4.1 SP6, SP7, and BI 4.2 that is no longer necessarily the case.

 

You can make registry edits to allow the URL images to be embedded in both formats.

(Note that the instructions for Linux are also included in the user guide below.)

 

This information is found in the Web Intelligence User manuals.

I am using http://help.sap.com/businessobject/product_guides/sbo41/en/sbo41sp7_webi_user_guide_en.pdf

In section 7.7 on page 448.

 

Here is step by step how you can do it:

 

Create a blank WebI document.

 

Add a blank cell.

 

Right click on the Cell and select Format Call.

 

Click on the Appearance selection on the left.

 

Select the Image from Address radio button and insert the image address as follows:

Image1.png

 

 

 

Click Ok.

 

After resizing the cell I have the following:

Image2.png

Save the Report.

 

If you now export to PDF you will not see the image, you will see something like this:

Image3.png

Now to implement the registry edits to enable this to work.

 

Open the registry and go to HKEY_LOCAL_MACHINE\SOFTWARE\SAP BusinessObjects\Suite XI 4.0\default\WebIntelligence\BlobManager

 

Create/Modify the string value ResolveHTTPUrl and set its value to yes.

 

Create/Modify the string value PROXY and set its value to <proxy>:<portnumber> where your replace <proxy> with your proxy name and <portnumber> with the proxy’s port.

 

It will look something like this:

Image4.png

Now that those are set, you can try exporting again.

 

Assuming the above information is configured properly, you should now see the image as such:

 

PDF

Image5.png

 

Excel

Image6.png

 

That’s it!

 

You can now export your URL based images to PDF or Excel from Web Intelligence.


If you are using the Web Intelligence Rich Client, you would make the same changes as above, but under the HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\SAP BusinessObjects\Suite XI 4.0\default\WebIntelligence\BlobManager


On Unix:


You need to modify the boconfig.cfg file found in the $installdir/setup folder.

 

In the boconfig.cfg file, locate the Software\SAP BusinessObjects\Suite XI 4.0\default\WebIntelligence\BlobManager section and do the following:

 

1.Create or modify the ResolveHTTPUrl value to yes to have the following line:

"<ResolveHTTPUrl>"=string:"<yes>".

 

2.Create or modify the PROXY value to <proxy>:<port>, where <proxy> is your client proxy server and <port> is the port of that server, to have the following line:

"<PROXY>"=string:"<proxy>:<port>"

 

It has been a long time coming, but it is finally here.

Hello All,

 

I came across a thread some days back where an end user wanted the Age of a customer in X Years Y Months and Z Days format given tow dates.

 

I searched through a lot of blogs but most of them didn't considered leap year which may lead to an incorrect data.

 

I tweaked the logic which I found in one of the blog and got that working so thought of sharing with all of you as we may come across such requirements in future.

 

So here how it goes. I will take two dates as Current Date([CurrDate]) and  Birth Date([BDate]).

 

First I will calculate the number of years in a formula which I have been told by an expert that breaking a huge formula into smaller pieces makes it more readable and easy to understand

 

[NumberOfYears]=Year ([CurrDate]) - Year ([BDate]) - If ( [CurrDate] <[BDate];1 ; 0 )+" Years "

 

Now I will calculate the number of months

 

[NumberOfMonths]=(Mod (((MonthNumberOfYear([CurrDate]) - MonthNumberOfYear([BDate])) + 12) - If ( DayNumberOfMonth([CurrDate]) < DayNumberOfMonth([BDate]) ; 1 ; 0 ); 12 ))+" Months "

 

And last the number of Days

 

[NumberOfDays]=(DayNumberOfYear([CurrDate]) - DayNumberOfYear( [BDate]) + If ( DayNumberOfYear([CurrDate])  >= DayNumberOfYear( [BDate]) ; 0 ; If ( DayNumberOfYear( [CurrDate]) - DayNumberOfYear([CurrDate])  < DayNumberOfYear( [BDate]) ; DayNumberOfYear( [BDate]) ; DayNumberOfYear( [CurrDate])- DayNumberOfYear( [CurrDate])  ) ))+" Days"

 

 

After we do all this only task left is to concatenate these three formula's.

 

[Age]=[NumberOfYears]+[NumberOfMonths]+[NumberOfDays]

 

and you will get the data in below format.

 

Capture.JPG

 

I have tested the code with Leap year Dates and some other random dates but your valuable feed backs and suggestions are always welcome.

 

Hope you like it.

 

Regards

Niraj

Many users/developers want to see/display custom comments in a Column chart. Not just displaying custom comments, accurately positioning them is a challenge as well. I've seen people use workarounds which are GREAT, but users/developers end up compromising (on few things) due to limitations in Web Intelligence.

 

Let's consider the below scenario of a Column Chart with Company Names and their Revenue in $B (dummy numbers over a period of time), plus the Custom Comments to be shown on top of each bar with Traded As names (of those companies on NASDAQ/NYSE), their Stock Price (at a point in time) and also conditional formatting of those custom comments depending on the Revenue (in $B).

Snap 08.PNG

Let's see how to do it.

 

Below is the data I used to develop this report.

 

Company NameRevenueTraded AsStock Price
LinkedIn2.99LNKD117
Apple95.00AAPL106
Google74.98GOOG754
Yahoo4.96YHOO36
Facebook17.98FB109
Adobe4.75ADBE96
Intel55.40INTC32
Oracle38.23ORCL41
HP85.00HPQ13
IBM81.74IBM145


Step 1:

  • Create the below variables
    • v_MaxRev =Max([Revenue]) In Block

(To find out the maximum Revenue out of all Companies)

 

    • v_PctofMaxRev =[Revenue] / [v_MaxRev]

(To find what Percent is the Revenue of a Company when compared to the maximum Revenue out of all the Companies)

 

    • v_TradedAsandStockPrice =[Traded As]+" - $"+[Stock Price]

(To concatenate Traded As name and Stock Price of a Company, which we want to show as Custom Comments)

 

    • v_LinestoSkip (Main variable of this trick, to skip number of lines (or move down) depending on the Revenue (measure) value)

=If([v_PctofMaxRev] <= 0.0249) Then 40

ElseIf([v_PctofMaxRev] Between (0.025;0.0499)) Then 39

ElseIf([v_PctofMaxRev] Between (0.05;0.0749)) Then 38

ElseIf([v_PctofMaxRev] Between (0.075;0.0999)) Then 37

ElseIf([v_PctofMaxRev] Between (0.1;0.1249)) Then 36

ElseIf([v_PctofMaxRev] Between (0.125;0.1499)) Then 35

ElseIf([v_PctofMaxRev] Between (0.15;0.1749)) Then 34

ElseIf([v_PctofMaxRev] Between (0.175;0.1999)) Then 33

ElseIf([v_PctofMaxRev] Between (0.2;0.2249)) Then 32

ElseIf([v_PctofMaxRev] Between (0.225;0.2499)) Then 31

ElseIf([v_PctofMaxRev] Between (0.25;0.2749)) Then 30

ElseIf([v_PctofMaxRev] Between (0.275;0.2999)) Then 29

ElseIf([v_PctofMaxRev] Between (0.3;0.3249)) Then 28

ElseIf([v_PctofMaxRev] Between (0.325;0.3499)) Then 27

ElseIf([v_PctofMaxRev] Between (0.35;0.3749)) Then 26

ElseIf([v_PctofMaxRev] Between (0.375;0.3999)) Then 25

ElseIf([v_PctofMaxRev] Between (0.4;0.4249)) Then 24

ElseIf([v_PctofMaxRev] Between (0.425;0.4499)) Then 23

ElseIf([v_PctofMaxRev] Between (0.45;0.4749)) Then 22

ElseIf([v_PctofMaxRev] Between (0.475;0.4999)) Then 21

ElseIf([v_PctofMaxRev] Between (0.5;0.5249)) Then 20

ElseIf([v_PctofMaxRev] Between (0.525;0.5499)) Then 19

ElseIf([v_PctofMaxRev] Between (0.55;0.5749)) Then 18

ElseIf([v_PctofMaxRev] Between (0.575;0.5999)) Then 17

ElseIf([v_PctofMaxRev] Between (0.6;0.6249)) Then 16

ElseIf([v_PctofMaxRev] Between (0.625;0.6499)) Then 15

ElseIf([v_PctofMaxRev] Between (0.65;0.6749)) Then 14

ElseIf([v_PctofMaxRev] Between (0.675;0.6999)) Then 13

ElseIf([v_PctofMaxRev] Between (0.7;0.7249)) Then 12

ElseIf([v_PctofMaxRev] Between (0.725;0.7499)) Then 11

ElseIf([v_PctofMaxRev] Between (0.75;0.7749)) Then 10

ElseIf([v_PctofMaxRev] Between (0.775;0.7999)) Then 9

ElseIf([v_PctofMaxRev] Between (0.8;0.8249)) Then 8

ElseIf([v_PctofMaxRev] Between (0.825;0.8499)) Then 7

ElseIf([v_PctofMaxRev] Between (0.85;0.8749)) Then 6

ElseIf([v_PctofMaxRev] Between (0.875;0.8999)) Then 5

ElseIf([v_PctofMaxRev] Between (0.9;0.9249)) Then 4

ElseIf([v_PctofMaxRev] Between (0.925;0.9499)) Then 3

ElseIf([v_PctofMaxRev] Between (0.95;0.9749)) Then 2

ElseIf([v_PctofMaxRev] >= 0.975) Then 1

 

    • v_PositionedCustomComments =RightPad("";[v_LinestoSkip];Char(13))+[v_TradedAsandStockPrice]

(To show Custom Comments in their accurate position)

 

Step 2:

  • Insert a Vertical table on top left of the report, with just 2 rows and update Format Table for the below options
    • Format Table -> General -> Update Name as Custom Comments Table
    • Format Table -> Layout -> Relative Position -> Horizontal as 0.2 cm from Left of Report and Vertical as 0.2 cm from Top of Report.
    • Format Table -> Appearance -> In Alternate Color, update Frequency as 0 and Color as White
    • Click Apply and OK
  • Insert Company Name in first row and v_PositionedCustomComments in 2nd row as shown below.

Snap 03.PNG

  • Select all 4 cells in the table and go to Format Cell to update below options
    • Format Cell -> General -> check Autofit Height
    • Format Cell -> Alignment -> Update Horizontal as Center and Vertical as Top (Note: This is very important.)
    • Format Cell -> Alignment -> Update Padding as 0 cm for Top, Bottom, Left and Right.
    • Format Cell -> Font -> Update Font size as 7
    • Format Cell -> Border -> Remove all borders
    • Click Apply and OK.
  • Select the 2 cells Body Cells (not header) and right click on them to go to Format Cell
    • Format Cell -> set Width as 2.12 cm
    • Click Apply and OK. This is how the table will look with data.

Snap 04.PNG

  • Select the 2 Header cells and right click on them to go to Format Cell
    • Format Cell -> Appearance -> under Background Image, update Color to No Color and Pattern to None.
    • Click Apply and OK.
  • Right Click on one of the company names from this vertical table and go to Hide -> click Hide Dimension as we want to hide the Company Name. This is how the table looks now.

Snap 05.PNG

 

Step 3:

  • Create a Column Chart with Company Name on Category Axis and Revenue on Value Axis 1 as shown below.

Snap 02.PNG

  • Go to Format Chart and update below options:
    • General -> Width = 22 cm and Height = 13.25 cm
    • General -> Data Values -> Check on Data Displaying Label Mode, update Data Postion = Inside, change Font size to 7, Font color to White and Orientation as Horizontal
    • General -> Background -> Update Background Color's Opacity to be 0%, so it becomes transparent
    • Legend -> Design -> Update Layout -> Location as Bottom
    • Legend -> Title -> Uncheck Visible
    • Category Axis -> Title -> Uncheck Visible
    • Value Axis -> Title -> Uncheck Visible
    • Value Axis -> Scaling -> Update Maximum Value to Fixed Value and use formula =[v_MaxRev]
    • Plot Area -> Background -> Update Category Axis Grid Color Opacity to 100%, so it becomes transparent.
    • Click Apply and OK.

We've created the Table and the Chart, now we need to align/place them in a way, they look like just ONE chart.

  • Right Click on the Column Chart, from Order -> select Bring to Front.
  • Go back to Format Chart and update these options
    • Format Chart -> Global -> Layout -> Relative Position -> set Horizontal as 1.35 cm from Left edge of Custom Comments Table and Vertical as 1 cm from Top edge of Custom Comments Table.
    • Click Apply and OK. This is how the Chart looks now.

Snap 07.PNG

Step 4:

  • Create the required Title and Subtitle as needed.
  • Create a conditional formatting Rule as below:
    • If [Revenue] Greater or equal to 75, then Font color should be Green
    • If [Revenue] Between 25 and 74.99, then Font color should be Blue
    • If [Revenue] Less or equal to 25, then Font color should be Red

Snap 09.PNG

  • Save this rule and apply on the Column in Custom Comments Table.

 

Voila, we did it. This is what the result looks like.

Snap 08.PNG

The result of this method may be 95% of what users/developers want. Rest 5% is just adjusting the Chart width and Column width (that shows custom comments) manually by looking at it.

 

Note:

This trick will surely help until the below BI Ideas are delivered as feature(s). I request all of you who checkout this document, please checkout and vote up on the below ideas.

comments in charts : View Idea

Webi Chart with Data Table : View Idea

 

Also, this workaround can be used with Combined Column, Stacked Column, Bar, Line... and few other types of Charts available.

 

Update from 05/04/2016 10:52 EST: Attaching the .txt file of the webi document, download it, rename it by removing .txt and/or .zip from the name.

 

Enjoy and please let me know your feedback.

Hello Everyone,

 

I found lot of queries being asked that Charts not displaying properly when have null values against then in the measure values. So thought of sharing my past experience that I had. below id the simple raw data that we will be using against the Line Chart.

 

MonthSales
Jan100
Feb
Mar250
Apr50
May75
Jun375
Jul
Aug66

 

So we can see that we have null values for the Sales in the month of Feb and Jul. Now we will create a simple line chart against the Raw data and you can spot that on below chart we have a break in the line in the month of Feb and Jul which is not what we want.


Null Values.JPG

 

So I created another measure using sales and added up 0 to it so as to handle the null value.

 

[Test]=[Sales]+0

 

The below chart is created with the newly created measure and you can see that now we are getting the chart way we want it.


Non Null Values.JPG

 

Hope I was able to explain to some extent. feedback and suggestions are always welcome.

 

Regards

Niraj

Hi

 

i have generated the Dynamic hyperlink with single parameter some thing like this

http://abc:9999/OpenDocument/opendoc/openDocument.jsp?iDocID=8080&sType=wid&sRefresh=N&sWindow=New&lsMEnter+Year%3A=([Ye…

Now i want to pass mutiple parameters dynamically Can you please let me know anyone on this

 

 

Thanks in Advance

 

 

Best Regards

Mohammed Zuber

Greetings Webi World,

 

I wanted to ensure that people were aware of this issue as it is causing a lot of incidents to come in to Product Support @ SAP.

 

It was recently discovered that a patch has introduced an issue with the calendar objects that are used by several Webi workflows.  It seems that for for months that have 30 days or less, only 27 days will show up in the Calendar picker.

 

This issue is currently being investigated by our development team and will be released in SAP Note: https://service.sap.com/sap/support/notes/2200522 (Service Market Place login required)

 

At the time of this writing, there is no solution.  This does only affect the HTML viewer and scheduling workflows so you should be able to use Webi Rich Client and the Applet Viewer  as a temporary work-around for now.

 

Thanks

Jb

Actions

Filter Blog

By author:
By date:
By tag: