Dynamic Detail Views in a list or dynamic Tab Container

Hello I am trying to achieve the following, but fail: I use an entity LIST to manage different  lists. Each list is associated with n STEP items from a different entity. From the LIST overview I open a new overview page to show the STEP items associated with a particular LIST item. Just creating a data grid of the LIST items works without a problem. What I want to achieve is opening a detail view on the first ENTITY object with a forward button to go to a detail view to the 2nd, 3rd…. item. Even better would be a wizard style timeline showing the number of associated STEP items to a list. Any ideas on how to achieve this? A possible take: I could imagine to use the “Tab Container” widget and apply some styling for the wizard effect. I don’t know how to apply the STEPs in a list as tab pages in the container dynamically. Any suggestions?
1 answers

Hi Jakob,

There can be several different ways to achieve this. Couple of the ways I can think of ATM are;

  1. Use listen to widget source but you cannot have forward button. Detail view will be shown based on the LIST object that is selected
  2. Add custom logic yourself
    • You can add an attribute called StepNumber to the STEP entity
      • When new step is created, auto allocate StepNumber (e.g. 1 for the first step, don't use autonumber because you can use 1 as StepNumber again for other LIST object)
      • Make sure its in ascending order and is unique for the associated LIST
      • If a STEP object is deleted, then reallocate the StepNumber of all the STEP objects for the associated LIST accordingly
    • Add a microflow to open the first step from the LIST overview
      • Retrieve the first step by using retrieve action;
        • If you want to retrieve from database then, set datasource = database, XPath = [Data_Ingest.STEP_LIST = $LIST] range = First and sorting = StepNumber ascending (this will give you STEP1)
        • If you want to retrieve from association then, datasource = association, select $LIST/STEP_LIST to retrieve STEP List.  
          • Add list operation action and set operation = sort, list = STEPList, add a new sorting (select StepNumber attribute and sort order = Ascending). Set List name = STEPList_Sorted
          •  Add another list operation action and set operation = head and List = STEPList_Sorted (this will give you STEP1)
      • Than use show page action to call the detail view page and pass in STEP1 object 
        •  In this page you can show forward or back buttons
        • For forward button add a microflow, pass in the parameter of STEP1 object, create a variable called StepNumber and increment StepNumber (that is Step1/StepNumber+1) and then use retrieve action to retrieve next STEP object where datasource = database, XPath = [Data_Ingest.STEP_LIST = $LIST] [StepNumber=$StepNumber] range = First and sorting = StepNumber ascending (this will give you STEP2). (this is hardcoded or static way but you can also explore dynamic way if you are interested)
        • For previous or back button you can follow the above steps but decrement StepNumber instead of increment 
    • For showing wizard on top of the page, you can use progress wizard building block 
      • Use list view to get STEP objects
      • Style it accordingly


Hope this helps!