M
Mohammed Siraj
Guest
With Rollbase NUI, we have moved presentation logic to client-side and have developed a client-side SDK. Leveraging these client-side frameworks which are already used to construct UI screens and now available as part of an SDK, amplifies scope of extending & customizing Rollbase UI. If on NewUI, for the above discussed set of client-side solutions, you may want to consider the following provisions in Rollbase: 1. Remove dirty page notifier for a form page var pageContext = rbf_getPageContext(); pageContext && pageContext.removeDirtyPageNotifier(); 2. To query record details for the current page (eg. deduce recordType/Object DefID) var pageContext = rbf_getPageContext(); //valid only for those page types which have a specific data record in context (i.e. View, Edit, Status...) var recordDetails = (pageContext && pageContext.getObjectRecord()) || null; //returns JSON object with top level record details like recordId, objDefId 3. Ajax Page Update for Navigation With NUI, to navigate between application pages we do an Ajax page update to refresh only the page canvas. The following API is available for the same: // supports navigation only within the current application context rb.newui.util.loadApplicationPage(tabId,pageId,additionalParams) additionaParams argument will take a JSON object with additional context details like record ID if navigating to a page like view/edit/status which has as single record context Eg: rb.newui.util.loadApplicationPage(123,456,{id: 60456}); Note: One limitation with this API is that it does not support originalId's. You will need to use tokens to resolve tab and page id's which are to be used as arguments to this function. Retreive current Page Tab (Application Tab/Menu) ID: var pageContext = rbf_getPageContext(); var tabId = pageContext && pageContext.getPageTabId(); Note: These provisions are suggested to asssist with client-side solution for the requirement of deciding on PageID's dynamically. As Murali stated earlier, this requirement will be more comprehensively addressed later as an in-built product feature.
Continue reading...
Continue reading...