Child pages
  • Another example of TableView Merger usage

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Current »

This is the documentation for ConfiForms Server/Data Center app

However, this might also work for ConfiForms cloud and in most cases it does. But please see this page to understand the differences between server and cloud versions of the ConfiForms app.

LIVE Example of TableView Merger

<ac:structured-macro ac:macro-id="a1529b36-ff00-4b50-80f0-da941adec9d1" ac:name="confiform" ac:schema-version="1">
  <ac:parameter ac:name="formName">Invoice1</ac:parameter>
  <ac:parameter ac:name="registrationFormTitle">Invoices rows</ac:parameter>
  <ac:rich-text-body>
    <p>
      <ac:structured-macro ac:macro-id="7be7e7f2-499c-4086-9cd2-a5954f1dd0c3" ac:name="confiform-field-definition" ac:schema-version="1">
        <ac:parameter ac:name="fieldName">type</ac:parameter>
        <ac:parameter ac:name="fieldLabel">Type</ac:parameter>
        <ac:parameter ac:name="values">false[1=Consulting|2=Repair|3=Transport|]</ac:parameter>
        <ac:parameter ac:name="extras">label;false</ac:parameter>
        <ac:parameter ac:name="type">select</ac:parameter>
        <ac:parameter ac:name="required">true</ac:parameter>
      </ac:structured-macro>
    </p>
    <p>
      <ac:structured-macro ac:macro-id="1d9a2690-2e83-4764-9ea7-70094cadc3b0" ac:name="confiform-field-definition" ac:schema-version="1">
        <ac:parameter ac:name="fieldName">description</ac:parameter>
        <ac:parameter ac:name="fieldLabel">Description</ac:parameter>
        <ac:parameter ac:name="type">textarea</ac:parameter>
      </ac:structured-macro>
    </p>
    <p>
      <ac:structured-macro ac:macro-id="7755a69a-3d17-4fcc-a68d-4d13eda5217d" ac:name="confiform-field-definition" ac:schema-version="1">
        <ac:parameter ac:name="fieldName">price</ac:parameter>
        <ac:parameter ac:name="fieldLabel">Price</ac:parameter>
        <ac:parameter ac:name="fieldDescription">in eur</ac:parameter>
        <ac:parameter ac:name="type">number</ac:parameter>
        <ac:parameter ac:name="required">true</ac:parameter>
      </ac:structured-macro>
    </p>
    <p>
      <ac:structured-macro ac:macro-id="37f431bc-9cfc-4975-9429-6ee3de67ea40" ac:name="confiform-field-definition" ac:schema-version="1">
        <ac:parameter ac:name="fieldName">count</ac:parameter>
        <ac:parameter ac:name="fieldLabel">Count</ac:parameter>
        <ac:parameter ac:name="fieldDescription">pcs</ac:parameter>
        <ac:parameter ac:name="type">number</ac:parameter>
        <ac:parameter ac:name="required">true</ac:parameter>
      </ac:structured-macro>
    </p>
    <p> <ac:structured-macro ac:macro-id="d23698df-27c3-4502-9e67-b6b74d63520d" ac:name="confiform-entry-register" ac:schema-version="1">
        <ac:parameter ac:name="atlassian-macro-output-type">INLINE</ac:parameter>
        <ac:rich-text-body>
          <p> </p>
        </ac:rich-text-body>
      </ac:structured-macro>
    </p>
  </ac:rich-text-body>
</ac:structured-macro>
<p> </p>
<p>ALL stored data</p>
<ac:structured-macro ac:macro-id="80220cd8-0cdd-4527-a1a8-7d41d02657a4" ac:name="confiform-table" ac:schema-version="1">
  <ac:parameter ac:name="formName">Invoice</ac:parameter>
  <ac:rich-text-body>
    <p> <ac:structured-macro ac:macro-id="25a2f91b-901f-4f3f-8364-906324291afa" ac:name="confiform-field" ac:schema-version="1">
        <ac:parameter ac:name="fieldName">type</ac:parameter>
      </ac:structured-macro>
    </p>
    <p>
      <ac:structured-macro ac:macro-id="ffe9390f-d35e-48c7-ada0-27d1566b142f" ac:name="confiform-field" ac:schema-version="1">
        <ac:parameter ac:name="fieldName">description</ac:parameter>
      </ac:structured-macro>
    </p>
    <p>
      <ac:structured-macro ac:macro-id="c34c0a39-93d5-409a-89ea-b360f2023ce5" ac:name="confiform-field" ac:schema-version="1">
        <ac:parameter ac:name="fieldName">price</ac:parameter>
      </ac:structured-macro>
    </p>
    <p>
      <ac:structured-macro ac:macro-id="414c44a6-1208-4368-b007-0b7f44a6af08" ac:name="confiform-field" ac:schema-version="1">
        <ac:parameter ac:name="fieldName">count</ac:parameter>
      </ac:structured-macro>
    </p>
  </ac:rich-text-body>
</ac:structured-macro>
<p> </p>
<p> </p>
<p>Totals per type</p>
<ac:structured-macro ac:macro-id="30654675-fc29-4a5f-b82e-82682150fd02" ac:name="confiform-table-merger" ac:schema-version="1">
  <ac:rich-text-body>
    <p> <ac:structured-macro ac:macro-id="3b540c9e-5243-4a37-8fc8-03858983fe8b" ac:name="confiform-field" ac:schema-version="1">
        <ac:parameter ac:name="fieldName">type</ac:parameter>
      </ac:structured-macro>
    </p>
    <p>
      <ac:structured-macro ac:macro-id="39c9fcd4-b4ea-4174-91f0-b44778108573" ac:name="confiform-field" ac:schema-version="1">
        <ac:parameter ac:name="fieldName">Total:([entry.count]*[entry.price])</ac:parameter>
      </ac:structured-macro>
    </p>
    <ac:structured-macro ac:macro-id="12fa94ed-24aa-484a-8ff8-7b123dac31fa" ac:name="confiform-table" ac:schema-version="1">
      <ac:parameter ac:name="formName">Invoice</ac:parameter>
      <ac:rich-text-body> </ac:rich-text-body>
    </ac:structured-macro>
  </ac:rich-text-body>
</ac:structured-macro>
<p> </p>
<p>Record ID is used as a grouping key, together with a type and therefore rows are showed separately</p>
<ac:structured-macro ac:macro-id="e5bdffe1-2841-4885-be2a-dadc408eaf28" ac:name="confiform-table-merger" ac:schema-version="1">
  <ac:rich-text-body>
    <p>
      <ac:structured-macro ac:macro-id="d01c437d-d68a-4141-9b68-4595e616d2cb" ac:name="confiform-field" ac:schema-version="1">
        <ac:parameter ac:name="fieldName">id</ac:parameter>
      </ac:structured-macro> </p>
    <p>
      <ac:structured-macro ac:macro-id="5903bb6e-b217-46f4-be77-3a435637f7b7" ac:name="confiform-field" ac:schema-version="1">
        <ac:parameter ac:name="fieldName">type</ac:parameter>
      </ac:structured-macro>
    </p>
    <p>
      <ac:structured-macro ac:macro-id="a62605e1-9a0e-414a-b65f-8614810d5c31" ac:name="confiform-field" ac:schema-version="1">
        <ac:parameter ac:name="fieldName">Total:([entry.count]*[entry.price])</ac:parameter>
      </ac:structured-macro>
    </p>
    <ac:structured-macro ac:macro-id="630cd566-0723-493b-8042-7ba52280b149" ac:name="confiform-table" ac:schema-version="1">
      <ac:parameter ac:name="formName">Invoice</ac:parameter>
      <ac:rich-text-body> </ac:rich-text-body>
    </ac:structured-macro>
  </ac:rich-text-body>
</ac:structured-macro>
<p> </p>
<p>Same, as above, but description field used as a grouping key, together with a type and therefore rows are showed separately. </p>
<ac:structured-macro ac:macro-id="17df3203-dc06-4567-91b7-8bcf2624fc77" ac:name="warning" ac:schema-version="1">
  <ac:rich-text-body>
    <p>Important to note is that IF there are rows with SAME type and description they will be MERGED! See below</p>
  </ac:rich-text-body>
</ac:structured-macro>
<ac:structured-macro ac:macro-id="4be247d7-4b37-40c7-9c6c-2d3f1aa032fe" ac:name="confiform-table-merger" ac:schema-version="1">
  <ac:rich-text-body>
    <p>
      <ac:structured-macro ac:macro-id="9d9541ed-751e-4363-8740-1ef8b82a3e73" ac:name="confiform-field" ac:schema-version="1">
        <ac:parameter ac:name="fieldName">type</ac:parameter>
      </ac:structured-macro>
    </p>
    <p>
      <ac:structured-macro ac:macro-id="5eb340e8-d8b6-4d1b-ac55-cff058f05f65" ac:name="confiform-field" ac:schema-version="1">
        <ac:parameter ac:name="fieldName">description</ac:parameter>
      </ac:structured-macro>
    </p>
    <p>
      <ac:structured-macro ac:macro-id="911211ff-91ca-48bf-9bd1-2b431b46c682" ac:name="confiform-field" ac:schema-version="1">
        <ac:parameter ac:name="fieldName">Total per row:([entry.count]*[entry.price])</ac:parameter>
      </ac:structured-macro>
    </p>
    <ac:structured-macro ac:macro-id="7f15fa9a-821c-43a0-bc3e-f80d1d7a2fbb" ac:name="confiform-table" ac:schema-version="1">
      <ac:parameter ac:name="formName">Invoice</ac:parameter>
      <ac:rich-text-body> </ac:rich-text-body>
    </ac:structured-macro>
  </ac:rich-text-body>
</ac:structured-macro>
<p> </p>
<p>Chart showing invoice items grouped by TYPE and with their totals</p>
<ac:structured-macro ac:macro-id="ecb4d365-e591-46fd-92d2-9f742230f649" ac:name="chart" ac:schema-version="1">
  <ac:parameter ac:name="3D">true</ac:parameter>
  <ac:parameter ac:name="orientation">vertical</ac:parameter>
  <ac:parameter ac:name="showShapes">false</ac:parameter>
  <ac:parameter ac:name="width">950</ac:parameter>
  <ac:parameter ac:name="rangeAxisLowerBound">1</ac:parameter>
  <ac:parameter ac:name="dataOrientation">vertical</ac:parameter>
  <ac:parameter ac:name="title">Invoice data</ac:parameter>
  <ac:rich-text-body>
    <ac:structured-macro ac:macro-id="c65cc40c-3d2f-4331-b759-938946fce84c" ac:name="confiform-table-merger" ac:schema-version="1">
      <ac:rich-text-body>
        <p>
          <ac:structured-macro ac:macro-id="cfbe3c84-9751-4664-8723-2c32ba1ca7b6" ac:name="confiform-field" ac:schema-version="1">
            <ac:parameter ac:name="fieldName">type</ac:parameter>
          </ac:structured-macro>
        </p>
        <p>
          <ac:structured-macro ac:macro-id="18d3904f-c0df-4af2-9fc8-8ee2b9c0d02b" ac:name="confiform-field" ac:schema-version="1">
            <ac:parameter ac:name="fieldName">Total:([entry.count]*[entry.price])</ac:parameter>
          </ac:structured-macro>
        </p>
        <ac:structured-macro ac:macro-id="a06e57da-b3fe-435a-9dc8-aa002b000f67" ac:name="confiform-table" ac:schema-version="1">
          <ac:parameter ac:name="formName">Invoice</ac:parameter>
          <ac:rich-text-body> </ac:rich-text-body>
        </ac:structured-macro>
      </ac:rich-text-body>
    </ac:structured-macro>
  </ac:rich-text-body>
</ac:structured-macro>
<p> </p>
<p> </p>


So, we have a form with 4 fields

  • type - dropdown field
  • description - text are field to store invoice item details
  • price - numeric field to store numeric data for item price
  • count - numeric field to store number of items per that price



ALL stored data 


To get Totals per type

We have 2 fields in TableView Merger, type and Total which is described as expression

Total:([entry.count]*[entry.price])


Record ID is used as a grouping key, together with a type and therefore rows are showed separately

We have 3 fields in TableView Merger, id, type and Total which is described with the same expression

Total:([entry.count]*[entry.price])


Same, as above, but description field used as a grouping key, together with a type and therefore rows are showed separately. 


We have 3 fields in TableView Merger, type, description and Total which is described as expression

Total:([entry.count]*[entry.price])

Important to note is that IF there are rows with SAME type and description they will be MERGED! See below


Chart showing invoice items grouped by TYPE and with their totals (Chart macro uses the same table as you can see in 1st example, where we group by type field and calculate totals per row)

Pie chart for Invoice data
  • No labels