Page tree

Versions Compared

Key

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

...

It has been introduced as beta in 2.21.1 - Release Notes#Version2.21.1 and as a GA in version 2.24.7 - Release Notes#Version2.24.7


As with all the "smart" fields in ConfiForms this field is about linking forms together, but with one important difference - it allows you to ADD new records into the referenced form directly and in "one go"

Here is what we mean

Consider a simple form with 2 fields named "participantsForm"

  • Name (text) - required
  • Mark (numeric)

And another form that we want to use as a database to store our tests - "testsForm"

This form will have 3 fields: 

  • Test name (text) - required 
  • Test document (file) - required
  • Participants (smart multi-row linked to "participantsForm" form)


This will allow us to manage data in "participantsForm" by filling in the form in "testsForm". See below

Configuration of a "participantsForm" form

Confluence editorStorage format

Image Added

Code Block
<ac:structured-macro ac:macro-id="5a980275-b7c8-4daa-a464-2772e73126de" ac:name="confiform" ac:schema-version="1">
  <ac:parameter ac:name="formName">participantsForm</ac:parameter>
  <ac:rich-text-body>
    <p>
      <ac:structured-macro ac:macro-id="74824740-c126-410e-a294-67ff7b66afaf" ac:name="confiform-field-definition" ac:schema-version="1">
        <ac:parameter ac:name="fieldName">Name</ac:parameter>
        <ac:parameter ac:name="fieldLabel">Name</ac:parameter>
        <ac:parameter ac:name="type">text</ac:parameter>
      </ac:structured-macro>
    </p>
    <p>
      <ac:structured-macro ac:macro-id="abffe50a-f465-4885-9620-838887290f9b" ac:name="confiform-field-definition" ac:schema-version="1">
        <ac:parameter ac:name="fieldName">Mark</ac:parameter>
        <ac:parameter ac:name="fieldLabel">Mark</ac:parameter>
        <ac:parameter ac:name="type">number</ac:parameter>
      </ac:structured-macro>
    </p>
    <ac:structured-macro ac:macro-id="bd59ea30-96e8-4f31-aa95-df2e8567c87a" ac:name="confiform-entry-register" ac:schema-version="1">
      <ac:rich-text-body>
        <p>
          <br/>
        </p>
      </ac:rich-text-body>
    </ac:structured-macro>
  </ac:rich-text-body>
</ac:structured-macro>

Configuration of a "testsForm"

Confluence editorStorage format

Image Added

Code Block
<ac:structured-macro ac:macro-id="7c29b98e-f2f7-4eb4-9548-792f0c424efc" ac:name="confiform" ac:schema-version="1">
  <ac:parameter ac:name="formName">testsForm</ac:parameter>
  <ac:rich-text-body>
    <p>
      <ac:structured-macro ac:macro-id="5bb451e5-4b48-411b-bb37-b01032cb7f60" ac:name="confiform-field-definition" ac:schema-version="1">
        <ac:parameter ac:name="fieldName">testName</ac:parameter>
        <ac:parameter ac:name="fieldLabel">Test name </ac:parameter>
        <ac:parameter ac:name="type">text</ac:parameter>
        <ac:parameter ac:name="required">true</ac:parameter>
      </ac:structured-macro>
    </p>
    <p>
      <ac:structured-macro ac:macro-id="e035cc8e-7ba3-490b-8aee-b54bc061d654" ac:name="confiform-field-definition" ac:schema-version="1">
        <ac:parameter ac:name="fieldName">testDoc</ac:parameter>
        <ac:parameter ac:name="fieldLabel">Test document</ac:parameter>
        <ac:parameter ac:name="type">file</ac:parameter>
        <ac:parameter ac:name="required">true</ac:parameter>
      </ac:structured-macro>
    </p>
    <p>
      <ac:structured-macro ac:macro-id="1165010b-7d19-4df8-8f38-096f231b262d" ac:name="confiform-field-definition" ac:schema-version="1">
        <ac:parameter ac:name="fieldName">participants</ac:parameter>
        <ac:parameter ac:name="fieldLabel">Participants</ac:parameter>
        <ac:parameter ac:name="values">[93390017:participantsForm]Name,</ac:parameter>
        <ac:parameter ac:name="type">smartmultirow</ac:parameter>
      </ac:structured-macro>
    </p>
    <ac:structured-macro ac:macro-id="3c9f51d5-1f4a-45f4-9226-70ac7dd28c1d" ac:name="confiform-entry-register" ac:schema-version="1">
      <ac:rich-text-body>
        <p>
          <br/>
        </p>
      </ac:rich-text-body>
    </ac:structured-macro>
  </ac:rich-text-body>
</ac:structured-macro>  

With configuration of a "participants" smart multi-row field done like this

Image Added

This will built as a form as follows:

Image Added

Allowing us to add multiple rows for participants

Image Added

Which will be stored in the "participantsForm" for us automatically and also conveniently rendered for us through the "testsForm" form

Image Added

You may use ANY number of fields for your ConfiForms Smart multi-row - and any field type, except another "smart multi-row" field. (In other words - no nesting of "smart multi-row" fields is supported at the moment)