Skip to Content
Author's profile photo Eshwar Prasanna

Add-On Search Component using SAP Design Studio SDK

It is really useful to have search functionality within an SAP Design Studio dashboard. In an earlier post, I had explained how to implement this functionality using arrays. However, a full-blown search functionality cannot be implemented using this method, due to the following reasons –

  • Only case-sensitive searches are possible in SAP Design Studio – there are no string functions for case conversion
  • Not a very elegant solution – individual members need to be matched and manually added to an array prior to setting a filter and displaying results
  • Code complexity increases exponentially if the search needs to be implemented across multiple dimensions

Resorting to the SDK

To resolve these issues, we took up the challenge to design an add-on search component that would allow

  • Case insensitive search
  • Partial string search
  • Search across multiple dimensions

Read on !

Searchbox.png

SearchboxProperties.png

Case insensitive search

We used JavaScript functions for case conversion, to get this working.

SearchBoxCaseInsensitive.png

Partial string search


SearchBoxWildCard.png

Search across multiple dimensions

For this, the component uses different methods to get search results for the first 4 dimensions of the data source. Each of these methods returns a filtered member list (MemberArray) for that particular dimension. In the screenshot below, we can see that the pop-up displays all members in the first four dimensions, that contain the searched string (“c”).

SearchBoxSetup5thDimension.png

SearchboxMultipleDimensions.png

In rare cases where the user requires search on more than 4 dimensions at a time, the component has an extra method (getResult()) which can be used to obtain a semi-colon delimited list of members of remaining dimensions. These individual members can then be accessed using array functions native to SAP Design Studio.

SearchBoxDimensionList.png

SearchBox5thDimension.png

Enhancements

The good thing about getting this done is that, we can now implement any further enhancements to the search functionality, as upgrades to the component. One idea is to implement the search component with a dropdown list of suggested values based on each key press (think Google style!).

Another such enhancement is to extend the search for key as well as text values, even if only text values are used in the initial view of the data source. We are currently working on a host of such ideas.

Using the SDK and building add-on components promotes reusability and enhanced functionality. Let’s see what SAP Design Studio 1.4 has in store!

Source: http://visualbi.com/blogs/design-studio/add-on-search-component-using-sap-design-studio-sdk/

Assigned Tags

      2 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Former Member
      Former Member

      Hi,

      I have a scenario where I am trying to develop Search Box Design Studio SDK (Java Plugin - Eclipse) Component using Sencha Technology.

      Figure1 : Search Box with Suggestion drop down with check box filter enabled developed using sencha technology with BW as Backend using Ajax call:



      I am trying to implement the same in design studio with suggestion drop down and check box filter on the top of suggestions.

      Do anyone have any idea how to achieve Search Box with suggestion drop down enabled with Check Box filter on the top of suggestion and will sencha libraries (Ext-all.js,Ext-all.js,Ext-all.css) supports design Studio.

      Please help me if anyone have any idea on the above scenario.

      Figure1:


      /wp-content/uploads/2016/01/demosearch_864041.png

      Author's profile photo Former Member
      Former Member

      Hi Eshwar,


      1. Do you have any idea how to achieve Search Box with suggestion drop down enabled with         Check Box filter on the top of suggestion in design Studio.....?


      2.Will ExtJS support in developing SDK extension of Design Studio....?

      kindly help and suggest.


      Regards,

      keshav kushwaha.