Locate parameterId but can't find the index

a!localVariables(
  
  
   
  local!allRole:rule!KONE_Development_ROLE(),
  local!allLanguage:rule!KONE_Development_LANGUAGE(),
  local!allBranch:rule!KONE_Development_BRANCH(),
  local!allRegion:rule!KONE_Development_REGION(),
 
    

  a!formLayout(
    contents: {
      a!textField(
        label: "Username",
        value: {ri!userinputsheet.kone_user_name},
        saveInto: {ri!userinputsheet.kone_user_name,
          a!save(ri!userrole.NAME,ri!userinputsheet.kone_user_name)
         },
        required: true
      ),
      a!textField(
        label: "firstName",
        value: {ri!userinputsheet.FIRST_NAME},
        saveInto: {ri!userinputsheet.FIRST_NAME},
        required: true
      ),
      a!textField(
        label: "LastName",
        value: {ri!userinputsheet.LAST_NAME},
        saveInto: {ri!userinputsheet.LAST_NAME},
        required: true
      ),
      a!textField(
        label: "Email",
        value: {ri!userinputsheet.Email},
        saveInto: {
          a!save(ri!userinputsheet.Email,ri!userinputsheet.Email),
          a!save(ri!userrole.EMAIL,ri!userinputsheet.Email)
        },
        required: true
      ),
      a!dropdownField(
        label:"Role",
        placeholder:"---please fill your Role---",
        choiceLabels:reject(fn!isnull,local!allRole),
        choiceValues:reject(fn!isnull,local!allRole),
        value:ri!userinputsheet.Role,
        saveInto:{
        a!save(ri!userinputsheet.Role,ri!userinputsheet.Role),
        a!save(ri!userrole.ROLE_ID,
        a!forEach
        (items:rule!KONE_Development_Role_RoleId,
        expression:if(fv!item.Role=ri!userinputsheet.Role,fv!item.Role_Id,{})        
        )),
        a!save(ri!userrole.PHASE_ID,
        a!forEach
        (items:rule!KONE_Development_Role_RoleId,
        expression:if(fv!item.Role=ri!userinputsheet.Role,fv!item.Role_Id,{})        
        ))
        },
        required:true       
      ),
      a!dropdownField(
        label:"Branch",
        placeholder:"---please fill your Branch---",
        choiceLabels:reject(fn!isnull,local!allBranch),
        choiceValues:reject(fn!isnull,local!allBranch),
        value:ri!userinputsheet.Branch,
        saveInto:{
        a!save(ri!userinputsheet.Branch,ri!userinputsheet.Branch),
        a!save(ri!userrole.BRANCH,ri!userinputsheet.Branch),
        a!save(ri!userrole.BRANCH_ID,
        a!forEach
        (items:rule!KONE_Development_Branch_BranchId,
        expression:if(fv!item.Branch=ri!userinputsheet.Branch,fv!item.Branch_Id,{})        
        ))
        },
        required:true       
      ),
      a!dropdownField(
        label:"Region",
        placeholder:"---please fill your Region---",
        choiceLabels:reject(fn!isnull,local!allRegion),
        choiceValues:reject(fn!isnull,local!allRegion),
        value:ri!userinputsheet.Region,
        saveInto:{
        a!save(ri!userinputsheet.Region,ri!userinputsheet.Region),
        a!save(ri!userrole.REGION,ri!userinputsheet.Region),
        a!save(ri!userrole.REGION_ID,
        a!forEach
        (items:rule!KONE_Development_Region_RegionId,
        expression:if(fv!item.Region=ri!userinputsheet.Region,fv!item.Region_Id,{})        
        ))
        },
        required:true       
      ),
      a!textField(
        label: "ManagerRole",
        value: {ri!userinputsheet.Manager_role},
        saveInto: {
          a!save(ri!userinputsheet.Role,ri!userinputsheet.Role),
          a!save(ri!userrole.ROLE,ri!userinputsheet.Role)},
        required: true
      ),
      a!dropdownField(
        label:"Language",
        placeholder:"---please fill your Language---",
        choiceLabels:reject(fn!isnull,local!allLanguage),
        choiceValues:reject(fn!isnull,local!allLanguage),
        value:ri!userinputsheet.Language,
        saveInto:{ri!userinputsheet.Language,
       
        a!save(ri!userrole.LANGUAGE_ID,
        a!forEach
        (items:rule!KONE_Development_Role_RoleId,
        expression:if(fv!item.Language=ri!userinputsheet.Language,fv!item.Language_Id,{})        
        ))
        },
        required:true       
      ),
      a!textField(
        label: "CELevel",
        value: {ri!userinputsheet.CE_LEVEL},
        saveInto: {
          a!save(ri!userinputsheet.CE_LEVEL,ri!userinputsheet.CE_LEVEL),
          a!save(ri!userrole.LEVEL,ri!userinputsheet.CE_LEVEL)
        },
        required: true
      ),
      a!textField(
        label: "Telephone Number",
        value: {ri!userinputsheet.Telephone_number},
        saveInto: {
          a!save(ri!userinputsheet.Telephone_number,ri!userinputsheet.Telephone_number),
          a!save(ri!userrole.TELEPHONE_NUMBER,ri!userinputsheet.Telephone_number)
        },
        required: true
      ),
      a!textField(
        label: "Exceptional Case Library View Right",
        value: {ri!userinputsheet.Exceptional_case_library_view_right},
        saveInto: {
          a!save(ri!userinputsheet.Exceptional_case_library_view_right,ri!userinputsheet.Exceptional_case_library_view_right),
          a!save(ri!userrole.IS_EXCEPTION,ri!userinputsheet.Exceptional_case_library_view_right)
        },
        required: true
      )
      
    },
    buttons: a!buttonLayout(
      primaryButtons: {
        a!buttonWidget(
          label: "Submit",
          saveInto:(
            a!writeToDataStoreEntity(
              dataStoreEntity: {cons!KONE_Development_userinputsheet_Constant,cons!KONE_Development_userrole_Constant},
              valueToStore:{ri!userinputsheet,ri!userrole }          
            ),
          ),
          submit: true,
          style: "PRIMARY"
        )
       
      }
      
    )
  )
)

I am trying to find the roleId by join the save role between two tables and save it into database, i used a!forEach loops for keep searching the equal role, but  seems it is not acceptable and can't find fv!index seemly. Error report as follow:

Could not display interface. Please check definition and inputs. Interface Definition: Expression evaluation error [evaluation ID = 88465:3ed58] : An error occurred while executing a save: Expression evaluation error at function a!forEach [line 52]: Error in a!forEach() expression during iteration 1: Expression evaluation error : Invalid index: Cannot index property 'Role' of type Text into type Rule or Function Reference

  Discussion posts and replies are publicly visible