Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Note

Before proceeding, make sure you know, how basic adding elements in Constructor works, PLUS:

  •  Hashtags, as this section is heavy on referencing data points,
  •  Automatic Data Filters, as Loops need a source of data and Filters are the most commonly used one.


...

Info
titleWHERE

#Loop:LOOPNAME:objects@COLUMN-NAME#

  • #LOOP - points that data must be taken from a Loop and iterated
  • LOOPNAME - sets a name of Loop to be used as source
  • Objects@column-name - points at which data point to pull from the Object to display

Other properties that can be referenced are:

  • backend@COLUMN_NAME - for Events
  • statuses@COLUMN_NAME - for Statuses of Events

...

16. Click Preview button to launch app from the screen to check it works.




info
Infonote

You can have a look at how it's setup in Demo App in your account, screen - Filters Iterate.

You can have a look at how it's setup in Demo App in your account, screen - Filters Iterate.




DATA FROM OPERATIONS


We have a screen, where a user can select a country from the drop down and see its' public holidays. For this example, we have pre-created API Operation to the 3rd party service.

...

  1. Drag and Drop a Select element

  2. Use Add Option and create a list of countries:

    1. Label = USA Value = US

    2. Label = Canada Value = CA

    3. Label = Brazil Value = BR

  3. Drag and Drop Button element

  4. Set it's properties:

    1. Backendname = holidaysButton

    2. Caption Button = Check Holidays

  5. Click Actions, select Execute Operations and add pre-created Holiday operation

  6. Drag and Drop Text element

  7. Enable looping for that element: find LOOP in the right hand side menu and check Enabled box


    Image Modified

  8. Set up Data Source for the loop: #Operation:Holiday:Response:Result:0:response:holidays#

  9. Name the loop as Holidays

  10. Go to Text field of the element and set up what will be displayed by pulling the required array elements from the loop (OPERATION):

    1. #Loop:Holidays:name#

    2. #Loop:Holidays:date:iso#

...

You can take a look at how it's implemented in Demo App in your account, screen - 13 Operation Loop Screen.



Infonote

You can take a look at how it's actually  implemented in Demo App in your account, screen - Operation Loop Screen.


DATA FROM LISTS OF TABLES


You can loop any data from any of your custom Lists of Tables. Pulling data arrays from lists of tables is available anywhere, where there is a Loop, including on slider components, etc etc. 

For example, using existing tables in you Task Manager sample app, we can do this to show all languages available for it's users, which are stored in table named "languagelist" and in column named "language"

Image Added


Steps taken in this example:

  1. A button added to a screen

  2. Enable Loop on the button, marked purple ↓

  3. Insert a hashtag with the List you want to use as Data Source, marked green ↓, as example, #List:languages:languagelist#, where:

    1. List = a command to address lists of tables in hashtag

    2. languages = a name of a list we have in this sample app

    3. languagelist  = a name of the actual table you are referring to

  4. Name the Loop, as how it can be referred later on, marked red ↓, for example - ShowAllLanguages

  5. Refer to this named Loop in any place of a button, in this case in Caption section - #Loop:ShowAllLanguages:language# , where:

    1. Loop = a command to show that some data needs to be pulled from the Loop

    2. ShowAllLangues = a name of the loop we have given before

    3. language  = an exact column name, which you are pulling from the list and need to iterate. 


Image Added


Note

There is a reason why there is an extra step, from DECLARING the Loop's source and using it's data on screen in form of a Loop's name. This allows to declare and name more then one data source for the same iteration (inserting row in row and declaring loop on each of them) and refer to the exact needed data point later to show more complex data. 



Content by Label
showLabelsfalse
max5
spacesKB
showSpacefalse
sortmodified
reversetrue
typepage
cqllabel = "kb-how-to-article" and type = "page" and space = "KB"
labelskb-how-to-article

...