Skip to Content

Using Bookmarks in design studio application


I need your help with the following scenario:

I have an applications with tabs and I need that each tab will be cleared after a user goes to another tab and then returns to the same tab.

For example: a user goes to tab 3, filters the data and then moves to tab 5. I want the when he moves back to tab 3 the tab will return to its initial state.

In order to achieve this I used the bookmarks:

1. I added the following script in the event On Startup of the application:

g_bookmarkID = Bookmark.saveBookmark(); (g_bookmarkID is declared as a global variable of the application)

2. In the On select event of the tab strip I added the script:


Everything is working fine when the application is running, but get an error message:

Bookmark "AS9dsM.Ch8REsPme.fhbSeY" does not exist and therefore cannot be loaded

when the mentioned bookmark is not the one that was created in event On Startup.

Also, in the error log this message appears as a warning and not as an error.

Any ideas?



Add a comment
10|10000 characters needed characters exceeded

Related questions

3 Answers

  • Posted on Aug 14, 2016 at 12:31 PM

    Hi Hagit,

    I agree with Martin that bookmarks are probably not the right solution for your scenario. Nevertheless, if you must use bookmarks, here are my questions and comments:

    1) It looks like you are using standard bookmarks. These are invalidated every time the application is modified and re-saved, even if it is a minor change. This could be the reason why you receive the "bookmark does not exist message". I recommend that you use Fragment Bookmarks instead of Standard Bookmarks since they are more stable and not influenced by application changes outside the fragment. Also, loading a Standard Bookmark will reload the entire application state, including the state of the the other tabs, which is probably not what you want, as Martin has already pointed out;

    2) Can you be more specific about the type of data source manipulations you want to preserve when you say "here are manipulation on the datasources do I want to avoid repeating the same code"?

    3) Are the data source manipulations you mention in point 2 performed as a result of user interactions/selections or are they performed programatically on application start-up?

    4) Does each tab have it's own separate data source?

    5) How are you creating and loading the bookmarks outside the one that is created on startup?



    Add a comment
    10|10000 characters needed characters exceeded

  • Posted on Aug 11, 2016 at 10:51 AM

    Hi Hagit,

    I think the bookmarking feature is not what you are looking for. They save naigational state of the application or parts of it if you use fragments.

    You should think of using the clearFilter or clearAllFilters on your data source so that they resume their initial state. That will impact the assigned components too. That approach will be much better in performance too.

    You could call those methods on tab change to achieve what you want.

    Kind regards


    Add a comment
    10|10000 characters needed characters exceeded

  • Posted on Aug 14, 2016 at 12:11 PM

    can you please let me know the other statements in the startup, which may effect. And how the data sources are loading(I mean is it script loading).and any other related stuff to the bookmark logic.

    Add a comment
    10|10000 characters needed characters exceeded

Before answering

You should only submit an answer when you are proposing a solution to the poster's problem. If you want the poster to clarify the question or provide more information, please leave a comment instead, requesting additional details. When answering, please include specifics, such as step-by-step instructions, context for the solution, and links to useful resources. Also, please make sure that you answer complies with our Rules of Engagement.
You must be Logged in to submit an answer.

Up to 10 attachments (including images) can be used with a maximum of 1.0 MB each and 10.5 MB total.