2 grids, the first is for selecting rows, and the second is a read only for presenting the first and last name of the row selected.
a!localVariables( local!selection, local!selectedEmployees, { a!columnsLayout( columns: { a!columnLayout( contents: { a!gridField( label: "Read-only Grid", labelPosition: "ABOVE", data: a!queryEntity( entity: cons!EMPLOYEE_ENTITY, query: a!query( selection: a!querySelection( columns: { a!queryColumn( field: "id" ), a!queryColumn( field: "firstName" ), a!queryColumn( field: "lastName" ), a!queryColumn( field: "department" ), a!queryColumn( field: "startDate" ) } ), pagingInfo: fv!pagingInfo ), fetchTotalCount: true ), columns: { a!gridColumn( label: "First Name", sortField: "firstName", value: fv!row.firstName ), a!gridColumn( label: "Last Name", sortField: "lastName", value: fv!row.lastName ), a!gridColumn( label: "Department", sortField: "department", value: a!richTextDisplayField( value: { a!richTextItem( text: {fv!row.department}, linkstyle: "INLINE", color: if(fv!row.department="Sales", "SECONDARY", null), style: { "EMPHASIS" } ) } ) ), a!gridColumn( label: "Start Date", sortField: "startDate", value: fv!row.startDate, align: "END" ) }, pagesize: 5, initialsorts: { a!sortInfo( field: "lastName" ) }, selectable: true, selectionvalue: local!selection, selectionsaveinto: { local!selection, /* This save adds the full rows of data for items selected in the most recent user interaction to local!selectedEmployees. */ a!save(local!selectedEmployees, append(local!selectedEmployees, fv!selectedRows)), /* This save removes the full rows of data for items deselected in the most recent user interaction to local!selectedEmployees. */ if(rule!APN_isEmpty(fv!selectedRows),{}, a!save(local!selectedEmployees, if(rule!APN_isEmpty(fv!deselectedRows),local!selectedEmployees,difference(local!selectedEmployees, fv!deselectedRows))) ) } , selectionrequired: false, disablerowselectionwhen: fv!row.department="Sales", validations: {} ) }, width: "WIDE" ), a!columnLayout( contents: { a!richTextDisplayField( label: "Selected Employees", labelPosition: "ABOVE", value: a!forEach( items: local!selectedEmployees, expression: { a!richTextIcon( icon: "user-circle-o" ), " "& fv!item.firstName & " " & fv!item.lastName, char(10) } ) ) } ) } ) } )
Discussion posts and replies are publicly visible
Hi mernst,
Your code seems to be fine.
It is clear you are saving the selected rows into local!selectedEmployees and you are using that on foreach.
If you could share the scenario you're getting this error, might be able to help. Also, try refreshing the interface and test once again.