How to update all entries in a table by clicking one button or single action?
Asked by VD:

Hello Atlassian Community

I have a table with \~100 rows each having 25 fields, and I have several rules written to populate different fields in a row. I initially load the table using a csv file - this takes care of about 10 fields. But post that, the remaining fields have to be populated using the rules I've written.

At present, I'm stuck with clicking 'Edit' against each row and then 'Save' just to trigger these rules. How do I do a bulk update of all the records, without having to click 'Edit' 100 times for the 100 rows? And btw, the number of rows may also increase.

I don't know how to write javascript, and we aren't allowed to use REST APIs. I saw somewhere that IFTTT may help to do this, but I can't for the life of me figure out how IFTTT can be used.

Any help would be appreciated!


Answers:
author: Alex Medved _ConfiForms_
body: When specifically do you need to have a batch update and what it should be updating (and more specifically, what value it should use for updating)

You can trigger bulk updates via single record update/create - <https://wiki.vertuna.com/display/CONFIFORMS/Configuring+ConfiForms+IFTTT+actions+and+rules#ConfiguringConfiFormsIFTTTactionsandrules-UpdateConfiFormsEntriesbyFilter>

Not sure about the whole process though... -\> when/what/why...

Alex

comments: author: VD
body: I can create an Action button, that when pressed, will trigger the update. And I have the list of fields that should be updated. But what should be updated into these fields are driven by the rules I've written.

Say I have 4 fields - s1, s2, s3 and s4. Of these, s1 and s2 are country ID and country name, and available to me in a csv file which I load into the form. That takes care of s1 and s2.

Now, to populate s3 and s4, I've got rules within the form. s3 indicates the region to which the country belongs, s4 has the tax ID for the country. But these are dynamically populated in the form through rules. When I add a new country manually, the rules automatically kick in and populate s3 and s4. The problem is when I have to load via csv. Then I just click Edit and trigger the rules for each individual country. Do you see, I don't know before-hand what should populate in s4 and s3, it really depends on what the rules say. How do I use ifttt to bulk update?


author: Alex Medved _ConfiForms_
body: How you can use a bulk update if you dont know in advance what values you should use for the update.

This sounds very over complicated to me. Why not to have an IFTTT that updates record on create/import... though I am still confused where to take s3 and s4 (in your case). You are saying they are coming from the rules.. what kind of rules do you use? What's the logic?

Alex


author: VD
body: Sorry for the confusion - here is how the storage format looks:

```
<p><br /></p><p><br /></p><ac:structured-macro ac:name="confiform" ac:schema-version="1" ac:macro-id="ef47dd68-eabc-454a-817e-18b28b6d335f"><ac:parameter ac:name="formName">domrule</ac:parameter><ac:rich-text-body><p><strong><strong>Test Area</strong><br /></strong></p><p><strong>------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</strong></p><p><strong>Fields:</strong></p><p><strong><ac:structured-macro ac:name="confiform-field-definition" ac:schema-version="1" ac:macro-id="4251d29f-3eb3-44b3-806b-c7141dbda20b"><ac:parameter ac:name="fieldName">origincountry</ac:parameter><ac:parameter ac:name="fieldLabel">Origin Country (Local)</ac:parameter><ac:parameter ac:name="values">[1791216010|ccountry|cname|false||]</ac:parameter><ac:parameter ac:name="type">smartselect</ac:parameter></ac:structured-macro></strong></p><p><strong><strong><ac:structured-macro ac:name="confiform-field-definition" ac:schema-version="1" ac:macro-id="7dcfff3b-1a9c-482f-8734-e9bede6c4cc1"><ac:parameter ac:name="fieldName">applicablecountry</ac:parameter><ac:parameter ac:name="fieldLabel">Applicable Country</ac:parameter><ac:parameter ac:name="values">[1791216010|ccountry|cname|false||]</ac:parameter><ac:parameter ac:name="type">smartselect</ac:parameter></ac:structured-macro></strong><br /></strong></p><p><br /></p><p><ac:structured-macro ac:name="confiform-field-definition" ac:schema-version="1" ac:macro-id="bc11cdd8-f6de-41de-8b05-e18ec6082af4"><ac:parameter ac:name="fieldName">trade</ac:parameter><ac:parameter ac:name="fieldLabel">Trade</ac:parameter><ac:parameter ac:name="values">false[default=TBD|success=Applicable|error=Excluded at Source|complete=Global|current=Local|moved=Exclude by Rule|]</ac:parameter><ac:parameter ac:name="type">status</ac:parameter></ac:structured-macro></p><p><ac:structured-macro ac:name="confiform-field-definition" ac:schema-version="1" ac:macro-id="6f27e715-bd62-4b1f-ad46-0e0025c9dd8e"><ac:parameter ac:name="fieldName">usdomestic</ac:parameter><ac:parameter ac:name="fieldLabel">US Domestic</ac:parameter><ac:parameter ac:name="values">false[default=TBD|success=Applicable|error=Excluded at Source|complete=Global|current=Local|moved=Exclude by Rule|]</ac:parameter><ac:parameter ac:name="type">status</ac:parameter></ac:structured-macro></p><p><br /></p><p><ac:structured-macro ac:name="confiform-field-definition" ac:schema-version="1" ac:macro-id="dec12414-7b90-43a9-bfbd-7d25ce848664"><ac:parameter ac:name="fieldName">tradecountry</ac:parameter><ac:parameter ac:name="fieldLabel">Trade Country</ac:parameter><ac:parameter ac:name="values">[1791216010|ccountry|cname|false||]</ac:parameter><ac:parameter ac:name="type">smartselect</ac:parameter></ac:structured-macro></p><p><strong><ac:structured-macro ac:name="confiform-field-definition" ac:schema-version="1" ac:macro-id="bdcafedd-98f7-4f5a-9711-43b5966e3584"><ac:parameter ac:name="fieldName">usdomcountry</ac:parameter><ac:parameter ac:name="fieldLabel">US Domestic Country</ac:parameter><ac:parameter ac:name="values">[1791216010|ccountry|cname|false||]</ac:parameter><ac:parameter ac:name="type">smartselect</ac:parameter></ac:structured-macro></strong></p><p><br /></p><p><br /></p><p><strong>Rules:</strong></p><p>Trade</p><p><ac:structured-macro ac:name="confiform-field-definition-rules" ac:schema-version="1" ac:macro-id="33ed3de7-1f5f-41d1-86b0-def75accdab5"><ac:parameter ac:name="condition">trade.label:Exclude by Rule OR trade.label:Excluded at Source OR trade.label:TBD</ac:parameter><ac:parameter ac:name="values">tradecountry=['N/A']</ac:parameter><ac:parameter ac:name="action">Set value</ac:parameter><ac:parameter ac:name="actionFieldName">trade</ac:parameter></ac:structured-macro><ac:structured-macro ac:name="confiform-field-definition-rules" ac:schema-version="1" ac:macro-id="64265877-0984-43b6-9379-5b118bb74af8"><ac:parameter ac:name="condition">trade.label:Local</ac:parameter><ac:parameter ac:name="values">tradecountry=[entry.origincountry]</ac:parameter><ac:parameter ac:name="action">Set value</ac:parameter><ac:parameter ac:name="actionFieldName">trade</ac:parameter></ac:structured-macro><ac:structured-macro ac:name="confiform-field-definition-rules" ac:schema-version="1" ac:macro-id="0d61015c-3852-432c-8d62-acdccfac704b"><ac:parameter ac:name="condition">trade.label:[empty]</ac:parameter><ac:parameter ac:name="fieldName">tradecountry</ac:parameter><ac:parameter ac:name="values">who cares</ac:parameter><ac:parameter ac:name="action">Reset value</ac:parameter><ac:parameter ac:name="actionFieldName">trade</ac:parameter></ac:structured-macro></p><p><ac:structured-macro ac:name="confiform-field-definition-rules" ac:schema-version="1" ac:macro-id="dd0b4708-2043-4b3a-aea6-2bb3d87fef2e"><ac:parameter ac:name="condition">trade.label:Global</ac:parameter><ac:parameter ac:name="fieldName">tradecountry=[entry.cname]</ac:parameter><ac:parameter ac:name="values">applicability:rep</ac:parameter><ac:parameter ac:name="action">Lookup and set value</ac:parameter><ac:parameter ac:name="actionFieldName">trade</ac:parameter><ac:parameter ac:name="values2">ccountry:1791216010</ac:parameter></ac:structured-macro><ac:structured-macro ac:name="confiform-field-definition-rules" ac:schema-version="1" ac:macro-id="cef92b02-69c5-4fcc-a999-29d8a4554946"><ac:parameter ac:name="condition">trade.label:Applicable</ac:parameter><ac:parameter ac:name="fieldName">newtestapp=[entry.cname]</ac:parameter><ac:parameter ac:name="values">tradecountry=[entry.applicablecountry]</ac:parameter><ac:parameter ac:name="action">Set value</ac:parameter><ac:parameter ac:name="actionFieldName">trade</ac:parameter><ac:parameter ac:name="values2">ccountry:1791216010</ac:parameter></ac:structured-macro></p><p><br /></p><p>US Domestic</p><p><ac:structured-macro ac:name="confiform-field-definition-rules" ac:schema-version="1" ac:macro-id="7c8dedb4-9c07-4a97-a0ec-c1f3cd9af491"><ac:parameter ac:name="condition">usdomestic.label:Exclude by Rule OR usdomestic.label:Excluded at Source OR usdomestic.label:TBD</ac:parameter><ac:parameter ac:name="values">usdomcountry=['N/A']</ac:parameter><ac:parameter ac:name="action">Set value</ac:parameter><ac:parameter ac:name="actionFieldName">usdomestic</ac:parameter></ac:structured-macro><ac:structured-macro ac:name="confiform-field-definition-rules" ac:schema-version="1" ac:macro-id="12c2374a-e7c1-4ff8-b820-d54b4c0e9bed"><ac:parameter ac:name="condition">usdomestic.label:Local</ac:parameter><ac:parameter ac:name="values">usdomcountry=[entry.origincountry]</ac:parameter><ac:parameter ac:name="action">Set value</ac:parameter><ac:parameter ac:name="actionFieldName">usdomestic</ac:parameter></ac:structured-macro><ac:structured-macro ac:name="confiform-field-definition-rules" ac:schema-version="1" ac:macro-id="4b7eb1f9-5bf9-4c98-8074-936cf0fab3fb"><ac:parameter ac:name="condition">usdomestic.label:[empty]</ac:parameter><ac:parameter ac:name="fieldName">usdomcountry</ac:parameter><ac:parameter ac:name="values">who cares</ac:parameter><ac:parameter ac:name="action">Reset value</ac:parameter><ac:parameter ac:name="actionFieldName">usdomestic</ac:parameter></ac:structured-macro></p><p><ac:structured-macro ac:name="confiform-field-definition-rules" ac:schema-version="1" ac:macro-id="d3197afa-9481-4ccf-b570-14c50a721cfe"><ac:parameter ac:name="condition">usdomestic.label:Global</ac:parameter><ac:parameter ac:name="fieldName">usdomcountry=[entry.cname]</ac:parameter><ac:parameter ac:name="values">applicability:rep</ac:parameter><ac:parameter ac:name="action">Lookup and set value</ac:parameter><ac:parameter ac:name="actionFieldName">usdomestic</ac:parameter><ac:parameter ac:name="values2">ccountry:1791216010</ac:parameter></ac:structured-macro><ac:structured-macro ac:name="confiform-field-definition-rules" ac:schema-version="1" ac:macro-id="e45c7426-c15b-450c-80df-4c912459aa2a"><ac:parameter ac:name="condition">usdomestic.label:Applicable</ac:parameter><ac:parameter ac:name="fieldName">newtestapp=[entry.cname]</ac:parameter><ac:parameter ac:name="values">usdomcountry=[entry.applicablecountry]</ac:parameter><ac:parameter ac:name="action">Set value</ac:parameter><ac:parameter ac:name="actionFieldName">usdomestic</ac:parameter><ac:parameter ac:name="values2">ccountry:1791216010</ac:parameter></ac:structured-macro></p><p><br /></p><p><strong>------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</strong></p><p><br /></p><ac:structured-macro ac:name="confiform-entry-register" ac:schema-version="1" ac:macro-id="ffc2aa85-122f-4c39-8f6f-20436616fc92"><ac:parameter ac:name="formName">domrule</ac:parameter><ac:parameter ac:name="type">Embedded</ac:parameter><ac:parameter ac:name="atlassian-macro-output-type">INLINE</ac:parameter><ac:rich-text-body><p><br /></p></ac:rich-text-body></ac:structured-macro></ac:rich-text-body></ac:structured-macro><ac:structured-macro ac:name="confiform-table" ac:schema-version="1" ac:macro-id="510b173e-db06-4dac-b691-d778bab4750e"><ac:parameter ac:name="formName">domrule</ac:parameter><ac:rich-text-body><ac:structured-macro ac:name="confiform-entry-edit" ac:schema-version="1" ac:macro-id="a59dd419-10a9-4040-a6c7-9ba9b4aa73eb"><ac:parameter ac:name="atlassian-macro-output-type">INLINE</ac:parameter><ac:rich-text-body><p><br /></p></ac:rich-text-body></ac:structured-macro><p><br /></p><p><ac:structured-macro ac:name="confiform-field" ac:schema-version="1" ac:macro-id="77c99de4-4d06-4fea-9cf6-587ab0feb21e"><ac:parameter ac:name="fieldName">origincountry</ac:parameter></ac:structured-macro><ac:structured-macro ac:name="confiform-field" ac:schema-version="1" ac:macro-id="80d54c54-9719-4914-a1b9-56f5e55e75cf"><ac:parameter ac:name="fieldName">applicablecountry</ac:parameter></ac:structured-macro></p><p><ac:structured-macro ac:name="confiform-field" ac:schema-version="1" ac:macro-id="34209cb6-f99d-458c-92f4-0edbf8e69b8f"><ac:parameter ac:name="fieldName">trade</ac:parameter></ac:structured-macro><ac:structured-macro ac:name="confiform-field" ac:schema-version="1" ac:macro-id="ea63e141-27fe-41c5-8187-dc071010b1bf"><ac:parameter ac:name="fieldName">usdomestic</ac:parameter></ac:structured-macro></p><p><br /></p><p><ac:structured-macro ac:name="confiform-field" ac:schema-version="1" ac:macro-id="4a86509d-aeb7-45c3-b380-da14381a2ac1"><ac:parameter ac:name="fieldName">tradecountry</ac:parameter></ac:structured-macro></p><p><ac:structured-macro ac:name="confiform-field" ac:schema-version="1" ac:macro-id="0a458f89-ea2a-447a-bde2-1369be5c27a3"><ac:parameter ac:name="fieldName">usdomcountry</ac:parameter></ac:structured-macro></p><p><br /></p></ac:rich-text-body></ac:structured-macro><p><br /></p><p><br /></p><p><br /></p>
```

If I were to load this form using csv, I'm only going to have values for *origincountry* , *applicablecountry* , *trade* and *usdomestic* fields. The remaining two (i.e *tradecountry* and *usdomcountry*) must be determined based on the rules within the form How do I get the rules to fire, either when the csv is being loaded or on click of a button after the csv is loaded?


author: VD
body: -removed due to duplication -


author: VD
body: -removed due to duplication -


author: VD
body: I want all my Confiform table entries updated in a single click , which will trigger the rules configured on my form. I've been trying to paste my form's storage format here, but doesnt seem to work.


author: VD
body: ```
-removed due to duplication-
```


author: VD
body: ![confiform.jpg](https://community.atlassian.com/t5/image/serverpage/image-id/150012i0EEE8119D645C8AA/image-size/large?v=v2&px=999 "confiform.jpg")

This is how the form looks. I have field rules configured to update Trade Country and US Domestic Country fields. But those run only if I'm : a) adding a new record or b) modifying existing record. But these records you see onscreen were loaded via csv (Import API), and the rules haven't run for those. How do I get the field rules to run for entries loaded by csv, without clicking 'Edit' button against each entry?


author: VD
body: -removed due to duplication -


author: Alex Medved _ConfiForms_
body: ConfiForms Field Definition rules could not be triggered via APIs or via ConfiForms IFTTT rules, such as <https://wiki.vertuna.com/display/CONFIFORMS/Configuring+ConfiForms+IFTTT+actions+and+rules#ConfiguringConfiFormsIFTTTactionsandrules-UpdateConfiFormsEntriesbyFilter>

You need to have an update set up in a way that it does the lookups for you automatically and sets the values - see "queryAndSet" on <https://wiki.vertuna.com/display/CONFIFORMS/Virtual+functions>

Which you can use in the parameters for [UpdateConfiFormsEntriesbyFilter](https://wiki.vertuna.com/display/CONFIFORMS/Configuring+ConfiForms+IFTTT+actions+and+rules#ConfiguringConfiFormsIFTTTactionsandrules-UpdateConfiFormsEntriesbyFilter) IFTTT rule


author: VD
body: Thanks Alex - let me try that.


author: VD
body: -nil-


author: VD
body: -removed due to duplication-


Tags: confiforms

confluence-server

server