Am using the grid feature in the form to show multiple values from the database/

Am using the grid feature in the form to show multiple values from the database/datasource...now i have put a true/false input type(checkbox) in order to select that particular row in the table....

now the problem is I want to populate the selected row value into the next form...

...

OriginalPostID-40127

OriginalPostID-40127

  Discussion posts and replies are publicly visible

  • The check-box in the grid will return an array of boolean. Loop through the boolean using doForEach() function OR MNI in order to get the selected row/element. You can use the displayValue function here to select items that were 'selected' and use this in the subsequent form.
  • Another option is to use the paging grid component, based on what I am easing about your scenario. The paging grid can be populated using a query rule (data from data source) and if you save the selection into an ac, it will give you a radio button or check boxes if you are saving into a single or multi. The primary id will be saved into the variable, then you can execute a query rule for example based on the stored value to get more details.
  • am still not clear ..I get the values in the next form but each parameter has multiple values...now I want only single value(that the user has selected) to reflect...am a newbie in appian..I assume javascript can help but am not sure
  • You don't need to use JS. On the form with the paging grid, are you saving the selection into an ac, that is not a multiple? If you save it into an ac and then into a pv, you can use that pv on the next form to display data, execute a query rule to get more data about that one record, etc. hope that helps!
  • I'm struggling with the same thing, but on a regular grid, not paging. I'm trying to allow the user to select more than one item. There are, e.g, two fields, first name and last name, that I need to display. So after the selection, I have an array of booleans, an array of first names, and an array of last names. So, say I have "true, true, false," "Joe, null, Jerry", "Smith, Jones, Doe." Since the If statement requires a value if false, then after I select the trues, I have "Joe, null, null" and "Smith, Jones, null." If I don't filter out the nulls (and by the way, I can't get filternulls to work so I'm using filterlist), I don't have just the selected data. If I do, then one of the arrays will be short. I'm still trying things, but if you could provide a few more specifics on how to go about this, I'd appreciate it.
  • Duh, I could put X or something instead of null. But anyway, I keep feeling like I must be going about this the wrong way.
  • To save someone else too many hours of work, I'm going to record how I finally got this to work. All variables mentioned are multiples. The first rule returns the values for the selections: displayvalue(true(),ri!arrayToSearch,ri!replacementArray,null). It is used with doforeach in node outputs of the form where the selection is made (doforeach("rule1",ac!selections,pv!authorLast_text) to save the lastname in the selected row to a new PV, selectedLast; nonselected rows have empty values in selectedLast. Second rule (=ri!input<>"") removes the empty values from selectedLast and is used in a script task following the selection form [filterlist("rule2",pv!selectedLast)]. Even though the first rule says to return null if not found, the empty values are not nulls and need to be removed by filterlist instead of filternulls.