1
0
-1

Is there up to date documentation on how to set up dynamic data in Maestro forms? The only documentation I can find is for Composer. I know it's very similar, but some of our designers have never used Composer and are finding it hard to follow.

    CommentAdd your comment...

    1 answer

    1.  
      1
      0
      -1

      Hi Lin,

      this article might be of some help.

      How to use Data-Driven Components in Maestro

      Thanks

      Mark

      1. Lin VanOevelen

        Thanks Mark. But it's the dynamic data button that I'm using. So to perform 'record', 'search' or 'validation' lookups.

        I've written up our own instructions on how to set up the record option in the meantime, by using trial and error. It's quite different from how it works in Composer and there's a few bits and pieces to add to the form and configure.

      2. Mark Murray

        Hi Lin,

        OK, understood. Yes there are a few challenges; I'm working with a dynamic data service at the moment - data exists in the form, but when the button is clicked the data is not put into the request, so the request returns a data_error.

        Trial and error is a slow process to solve problems, but that's all I have at the moment.

        Thanks

        Mark

      3. Lin VanOevelen

        This is what I wrote up after getting the record search to work in a Maestro form. It was a very quick write up though and we have not yet tested these instructions. And my numbering got messed up when I pasted...

        (The TM part has not changed. We have the old documentation for that stored locally - I cannot find it on this site through search now.)

        Steps to set up a Record lookup:

        Record lookups will find a value in the lookup table and then return corresponding values from other columns in that table.

          1. Add the text fields or datafields used for the input/search value and the output values. (You can deliver the output to text fields, or datafields if you want to use them in calculations or text.)
          2. Drag Dynamic Data Button (DDB) to your structure.
          3. Drag in following datafields:
            1. LookupName
            2. Lookupparams
            3. Lookuptype
            4. Lookupresult
          4. In DDB Configuration: Add 'Generic Lookup Service' as Service Name.
          5. In DDB Config: In Input field mapping, add LookupName, LookupParamas and LookupType. As Key, add their field IDs.
          6. In DDB Config: In Response Field Mapping, add the fields that you want to populate from the lookup. Their Keys should match the column names in the TM lookup service parameter.
          7. Add a On Success event to the DDB with following script:

        console.log(data.output )
        if (data.[output field ID] === '') {

          data.lookupresult = 'failure'

        }

        else {
          data.lookupresult = 'success'

          1. Add calculation script to the LookupName datafield to return the name of the TM parameter. This is the <name> in the JSON script in the paramater.
          2. LookupType datafield: Add calculation script: return 'record'
          3. LookupParams: add this calc script:

        var input = {}
        input.[input column name in TM parameter] = data.[input field ID]

        var jsonString = JSON.stringify(input, 0, '  ')

        //console.log('input', input, jsonString)
        return jsonString

      CommentAdd your comment...