Skip to Content
Hi Again,

I think we are starting to get a good collection of Blogs and How To papers for the Visual Composer that show how to do some pretty cool stuff. But, the Visual Composer is still relatively new technology, and I am still getting a lot of “simple” modeling questions via email. Simple is of course a relative term – it just depends on how long you have been working with the Visual Composer for 🙂
So I thought I might address a few of the more common ones that I came across, in a few blogs.

I’ve chosen a couple to start with here….

Column Widths in Table Views

You have dragged a BI Query into the VC storyboard, and you have connected a Table View to the output port. You have then gone into the Layout tab, and changed the widths of your columns. You deploy your model, and run it. As soon as the data comes back, all of your columns go back to equal width.
What happened? How to make those columns stay the same width that you specified at design time?

The good news is that it is surprisingly simple. All you have to do is double click on the output port of your BI query (to bring up the Configure properties), and deselect the checkbox called “Dynamic Port” (see the below image). image

And that’s it… Seriously…
The dynamic port flag, if switched on, means that the Table View can have a dynamic number of columns. If you have a fixed number of columns being returned, then you dont need to have the port flagged as dynamic, so you should be fine to switch it off.

Ok, one more for today…

Passing Values from a Data Series in a Chart

The scenario here is that a user should be able to click on a data series in a chart, and have the value they click on be passed on to another data service. This can be used for example, to return some detailed information about the selected value.

So you model a basic application, like the one below. In my example, the Chart View will displayed Planned vs. Actual Responses for my open Campaigns in CRM. I want to be able to click on a campaign in this chart, and then see a breakdown of planned vs. actual responses over time. In order to do this, I simply drag out from the “out” port of my chart, and connect it to the “Input” port of my BI query that returns the campaign information by time, as shown in the below image.
image

But, when you deploy this model, you will see that no information is getting passed to my second BI query. What’s going wrong?

What we are missing, is the event that needs to occur when values need to be passed from the chart to my second query. In this case, the event is the “select” event (ie. whenever a user selects a campaign in the chart, then I want the system to pass that campaign to my BI query).
So, all we have to do to get this working as expected, is double click the line connecting the “out” port of the chart with the “input” port of the BI query (to bring up the Configure properties of this line). Then, simply type in the field “Event name”, the value “select” (this is highlighted in the below image). Note: this event is not available from the drop down list of events – you will need to type it in manually.

Technically, thats all you have to do. But an important point to note is that if you are using BI Queries, as in this example, then you will want to address the field mappings too. By default, the system will propose to pass the “value” of a characteristic, however, when passing values to the input or variables port of BI queries, you need to supply either the “key” or “external key” (for more information about this, please see this How To guide).
So in my case, I will change the mapping to pass the key value (this change has also been highlighted in the below image). image

And now, we have the desired behaviour at runtime, where I can click on a campaign in my chart, and then view the detailed responses by month in the table below it (see below).
image

So I hope these type of modeling basics is useful for some of you out there!

Cheers,
Ryan

To report this post you need to login first.

8 Comments

You must be Logged on to comment or reply to a post.

  1. Jason Scott
    How do you enter the text “select” for the event to trigger the second BI queyr when the user clicks on the chart? If I follow your instructions and go to the “Configure Element” screen for the connection the “Event Name” field is display ony! The only option available is to select from the popup list and “select” is not avaoilable… So how do you get that “select” text into the connection?

    jason.

    (0) 
  2. Jason Scott
    It turns out that the “Event Name” field is only editable when the connector is pointing to another data source and not a form or table…
    (0) 
  3. Deepak Jaju
    Hi Ryan

    Can you please tell me the steps to populate my drop-down list dynamically using the BI queries…????

    If possible, can you also explain to me as to how should i link Value Helps…??? It’s like…the scenario is as follows:

    I have two input fields – Country and States of type Input Text Box and they both have Value Help.If I select value for Country using the value help1, how do I restrict the values displayed in the second value help being relevant only to the value selected in the first value help.

    Also your article “Drilling down in SAP NetWeaver VC” is juts great…!!!

    Please reply to my queries….

    Thanks
    Deepak Jaju

    (0) 
    1. Ryan Leask Post author
      Hi Deepak,

      I’m glad you found it useful…

      Dynamic Drop-Down lists:
      Go to the properties of your drop down box, and click on the “Entry List” tab. Change the radio button from “static” to “dynamic”. This should bring up a popup box that allows you to select a data source to populate your drop-down. You should be able to select a BI query here if that’s what you are after.

      Linking Value Helps:
      Go into the popup iView for your value help on state. Click on the start point, and manually add a new field to it called “Country”. Now click on the line that connects your start point to your data service. Assuming your data service has Country on the Input Port (which it must if you want to link them), then simply map your field @Country from the start point to this field on the Input Port. Now return back to your main iView with the Form in it. Select the line that connects your form to your popup iView for State, and map the Country field on your form, to the Country field in your popup iView.

      That should be it!

      Hope it helps.
      Regards,
      Ryan

      (0) 
  4. Daryl Hilliard
    Ryan, I just found out how to change the columns, but is there a way to wrap the header in a column so I don’t have to abreviate or make my columns wide for the header even though the data in the text is short?  Thanks!
    (0) 
      1. Ryan Leask Post author
        Hi Patricio,

        Glad you found the article useful. The link the article is pointing to the correct site. That How To Guide describes how to deal with passing variable values.

        Regards,
        Ryan

        (0) 

Leave a Reply