Hi,
I have designed one GRID where I am successfully able to capture the selected value.
I am using Processstart link to update the EmpSubType column.
My Requirement is:
The selected value should be captured as soon as I am clicking any random EmpSubType(I do not want to first tick the check box and click on EmpSubType value . )
The selected value is getting captured correctly when I am selecting any row and then clicking the SubType. I am not selecting the check box first and then selecting any EmpSubType randomly then Start Process Link is taking a wrong value.
I am pasting my codes here:
Could someone please help me here?
Thanks
a!localVariables( local!typeData:rule!FF_EMP_QE_EmpTypes(empType: null), local!empType, local!selectedRows, local!selectedEmployee, local!typeId:index(local!typeData.typeid,wherecontains(local!empType,touniformstring(local!typeData.emptype)),{}), { a!sectionLayout( label: "", contents: { a!columnsLayout( columns: a!columnLayout( contents: { a!dropdownField( label: "Employee Types", labelPosition: "ABOVE", placeholder: "--- Select a Value ---", choiceLabels: {local!typeData.emptype}, choiceValues: {local!typeData.emptype}, value:local!empType, saveInto: {local!empType}, searchDisplay: "AUTO", validations: {} ) } ) ), a!gridField( data: a!queryEntity( entity: cons!FF_ENT_EMPSUBTYPE, query: a!query( selection: a!querySelection( columns: { a!queryColumn( field: "empsubtype" ), a!queryColumn( field: "emptype" ), a!queryColumn( field: "typeid" ), a!queryColumn( field: "empid" ) } ), filter:if(isnull(local!empType),null,a!queryFilter( field: "emptype", operator: "=", value: local!empType )), pagingInfo: fv!pagingInfo ), fetchTotalCount: true ), columns: { a!gridColumn( label: "Empsubtype", sortField: "empsubtype", value: a!linkField( label: "Start Process", links:a!startProcessLink( label: fv!row.empsubtype, processModel: cons!FF_PM_SUBTYPEUPDATE, /*We have to pass dictionary*/ processParameters: {empId:local!selectedRows} ) ) /*value: fv!row.empsubtype*/ ), a!gridColumn( label: "Emptype", sortField: "emptype", value: fv!row.emptype ), a!gridColumn( label: "Typeid", sortField: "typeid", value: fv!row.typeid ), a!gridColumn( label: "Empid", sortField: "empid", value: fv!row.empid ) }, pageSize: 20, initialSorts: {}, selectable: true, selectionValue: local!selectedRows, /* Using the index function to return the last-selected item ensures that only one item will be selected at a time, regardless of how fast the user clicks. */ selectionSaveInto: {a!save(local!selectedEmployee, index(fv!selectedRows, length(fv!selectedRows), null)), /* We use the same method as above to limit the selection variable. */ a!save(local!selectedRows, index(save!value, length(save!value), null))} ), a!recordActionField( actions: {a!recordActionItem( action: 'recordType!{abd29c56-81fd-455f-a4d9-25cee496c62c}FF_EMP_RC_Detail.actions.{33cc01b3-6f31-47b8-a75f-d5eacfbd1169}addEmp' ), a!recordActionItem( action: 'recordType!{abd29c56-81fd-455f-a4d9-25cee496c62c}FF_EMP_RC_Detail.actions.{888454cb-b159-4263-8c01-a771c96ff919}updateDetails', identifier:local!typeId ) /*a!recordActionItem(*/ /*action: 'recordType!{abd29c56-81fd-455f-a4d9-25cee496c62c}FF_EMP_RC_Detail.actions.{1d04663f-eeb9-40e5-8d80-ef10a128a931}UpdateSubType',*/ /*identifier:local!selectedRows*/ /*)}*/ } ) } ) })
Discussion posts and replies are publicly visible
Hi faisalf0003, if you are not selecting checkbox in grid means local!selectedRows is blank.
If you want to start proces based on emp subtype link, use fv!row as parameterto process model
processParameters: {empId:fv!row.empid}
Thank you very much.. Purpose solved