Versions Compared

Key

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

...

The result is that the quantity field Number of Items automatically displays the number of rows in which the Item column is filled.

Sort a Table by a Column Value

You can use JavaScript to write a sort function that reorders your table rows based on one of the columns. In this simple example, we have a table with two columns, Item (text) and Quantity. On the trigger click, this rule will resort all of the table entries alphabetically by Item. The rule loops through the table and holds the values in an array variable, sorts that array, and then replaces the values in the table in their new (sorted) indexes.

Code Block
languagejs
titleRule Code
if (SortByItem.clicked){
  var newarr = [];
  for (let i = 0; i < Item.value.length; i++){  
    newarr.push([Item[i].value,Quantity[i].value]); 
  }

  newarr.sort(sortthis);
  for (let j = 0; j < newarr.length; j++){
    Item[j].value = newarr[j][0];
    Quantity[j].value = newarr[j][1];
  }
}

function sortthis(a, b){
  if (a > b) {return 1;}
  if (a < b) {return -1;}
  return 0;
}


Original table entries:

Image Added

After Sorting:

Image Added

form.load

Rules can be used to initialize field values. This is a very useful feature and is often used to dynamically populate dropdown options from a database. Rules using form.load are triggered when a form first loads and when a workflow is loaded from a task list.

...