Hi,
I have a local variable with Map type. I have 2 fields inside a variable (Field label and Field Type)
I need to save the variable in a loop by clicking on the Add dynamic link. Please help me out here since the current code is not working.
local!manualDynamicField:a!map( manualdynamicFieldLabel:"", manualdynamicFieldType:"" ), a!gridLayout( label: "Manual Dynamic Fields", labelPosition: "ABOVE", headerCells: { a!gridLayoutHeaderCell(label: "Field Label"), a!gridLayoutHeaderCell(label: "Field Type"), a!gridLayoutHeaderCell(label: "") }, columnConfigs: { a!gridLayoutColumnConfig(width: "MEDIUM"), a!gridLayoutColumnConfig(width: "MEDIUM"), a!gridLayoutColumnConfig(width: "ICON") }, rows: a!forEach( local!manualDynamicField, { a!gridRowLayout( contents: { a!textField( label: "", labelPosition: "ABOVE", value: index(fv!item,"manualdynamicFieldLabel",{}), saveInto: { a!save( index(fv!item,"manualdynamicFieldLabel",{}), concat("###", save!value, "###") ), a!save( local!manualDynamicFieldToAdd, difference( index(local!manualDynamicField,"manualdynamicFieldLabel",{}), local!manualDynamicFieldCopy ) ), a!save( local!manualDynamicFieldToRemove, difference( local!manualDynamicFieldCopy, index(local!manualDynamicField,"manualdynamicFieldLabel",{}) ) ), if( a!isNullOrEmpty(local!manualDynamicFieldToAdd), {}, { a!save( ri!record['recordType!{bf842322-0f8a-429a-873a-f0d69ec9d438}UWG Amendment Reference.relationships.{cbd28086-f4ea-4c46-a88b-e1a617136bb8}amendmentReferenceMaster.fields.{657f4be1-54fc-4b71-8af5-94fc937f67a1}templateEnglish'], append( ri!record['recordType!{bf842322-0f8a-429a-873a-f0d69ec9d438}UWG Amendment Reference.relationships.{cbd28086-f4ea-4c46-a88b-e1a617136bb8}amendmentReferenceMaster.fields.{657f4be1-54fc-4b71-8af5-94fc937f67a1}templateEnglish'], local!manualDynamicFieldToAdd ) ), a!save( ri!record['recordType!{bf842322-0f8a-429a-873a-f0d69ec9d438}UWG Amendment Reference.relationships.{cbd28086-f4ea-4c46-a88b-e1a617136bb8}amendmentReferenceMaster.fields.{a94f4383-91a2-48fd-a9bf-cd64a4bf3a16}templateFrench'], append( ri!record['recordType!{bf842322-0f8a-429a-873a-f0d69ec9d438}UWG Amendment Reference.relationships.{cbd28086-f4ea-4c46-a88b-e1a617136bb8}amendmentReferenceMaster.fields.{a94f4383-91a2-48fd-a9bf-cd64a4bf3a16}templateFrench'], local!manualDynamicFieldToAdd ) ) } ), if( a!isNullOrEmpty(local!manualDynamicFieldToRemove), {}, { a!save( ri!record['recordType!{bf842322-0f8a-429a-873a-f0d69ec9d438}UWG Amendment Reference.relationships.{cbd28086-f4ea-4c46-a88b-e1a617136bb8}amendmentReferenceMaster.fields.{657f4be1-54fc-4b71-8af5-94fc937f67a1}templateEnglish'], substitute( ri!record['recordType!{bf842322-0f8a-429a-873a-f0d69ec9d438}UWG Amendment Reference.relationships.{cbd28086-f4ea-4c46-a88b-e1a617136bb8}amendmentReferenceMaster.fields.{657f4be1-54fc-4b71-8af5-94fc937f67a1}templateEnglish'], local!manualDynamicFieldToRemove, "", 1 ) ), a!save( ri!record['recordType!{bf842322-0f8a-429a-873a-f0d69ec9d438}UWG Amendment Reference.relationships.{cbd28086-f4ea-4c46-a88b-e1a617136bb8}amendmentReferenceMaster.fields.{a94f4383-91a2-48fd-a9bf-cd64a4bf3a16}templateFrench'], substitute( ri!record['recordType!{bf842322-0f8a-429a-873a-f0d69ec9d438}UWG Amendment Reference.relationships.{cbd28086-f4ea-4c46-a88b-e1a617136bb8}amendmentReferenceMaster.fields.{a94f4383-91a2-48fd-a9bf-cd64a4bf3a16}templateFrench'], local!manualDynamicFieldToRemove, "", 1 ) ) } ), a!save( local!manualDynamicFieldCopy, index(local!manualDynamicField,"manualdynamicFieldLabel",{}) ) }, refreshAfter: "UNFOCUS", validations: {} ), a!dropdownField( label: "", labelPosition: "ABOVE", choiceLabels: {"Text","Dropdown","Radio Button"}, choiceValues: {"Text","Dropdown","Radio Button"}, placeholder: "Select a Value", value: local!manualDynamicFieldTypetoAdd, saveInto: { local!manualDynamicFieldTypetoAdd } ), a!richTextDisplayField( value: { a!richTextIcon( icon: "times", color: "NEGATIVE", linkStyle: "STANDALONE", link: a!dynamicLink( value: "", saveInto: { a!save( local!manualDynamicField.manualdynamicFieldLabel, remove(ri!manualDynamicFields, fv!index) ), a!save( local!manualDynamicFieldToAdd, difference( local!manualDynamicField.manualdynamicFieldLabel, local!manualDynamicFieldCopy ) ), a!save( local!manualDynamicFieldToRemove, difference( local!manualDynamicFieldCopy, local!manualDynamicField.manualdynamicFieldLabel ) ), if( a!isNullOrEmpty(local!manualDynamicFieldToAdd), {}, { a!save( ri!record['recordType!{bf842322-0f8a-429a-873a-f0d69ec9d438}UWG Amendment Reference.relationships.{cbd28086-f4ea-4c46-a88b-e1a617136bb8}amendmentReferenceMaster.fields.{657f4be1-54fc-4b71-8af5-94fc937f67a1}templateEnglish'], append( ri!record['recordType!{bf842322-0f8a-429a-873a-f0d69ec9d438}UWG Amendment Reference.relationships.{cbd28086-f4ea-4c46-a88b-e1a617136bb8}amendmentReferenceMaster.fields.{657f4be1-54fc-4b71-8af5-94fc937f67a1}templateEnglish'], local!manualDynamicFieldToAdd ) ), a!save( ri!record['recordType!{bf842322-0f8a-429a-873a-f0d69ec9d438}UWG Amendment Reference.relationships.{cbd28086-f4ea-4c46-a88b-e1a617136bb8}amendmentReferenceMaster.fields.{a94f4383-91a2-48fd-a9bf-cd64a4bf3a16}templateFrench'], append( ri!record['recordType!{bf842322-0f8a-429a-873a-f0d69ec9d438}UWG Amendment Reference.relationships.{cbd28086-f4ea-4c46-a88b-e1a617136bb8}amendmentReferenceMaster.fields.{a94f4383-91a2-48fd-a9bf-cd64a4bf3a16}templateFrench'], local!manualDynamicFieldToAdd ) ) } ), if( a!isNullOrEmpty(local!manualDynamicFieldToRemove), {}, { a!save( ri!record['recordType!{bf842322-0f8a-429a-873a-f0d69ec9d438}UWG Amendment Reference.relationships.{cbd28086-f4ea-4c46-a88b-e1a617136bb8}amendmentReferenceMaster.fields.{657f4be1-54fc-4b71-8af5-94fc937f67a1}templateEnglish'], substitute( ri!record['recordType!{bf842322-0f8a-429a-873a-f0d69ec9d438}UWG Amendment Reference.relationships.{cbd28086-f4ea-4c46-a88b-e1a617136bb8}amendmentReferenceMaster.fields.{657f4be1-54fc-4b71-8af5-94fc937f67a1}templateEnglish'], local!manualDynamicFieldToRemove, "", 1 ) ), a!save( ri!record['recordType!{bf842322-0f8a-429a-873a-f0d69ec9d438}UWG Amendment Reference.relationships.{cbd28086-f4ea-4c46-a88b-e1a617136bb8}amendmentReferenceMaster.fields.{a94f4383-91a2-48fd-a9bf-cd64a4bf3a16}templateFrench'], substitute( ri!record['recordType!{bf842322-0f8a-429a-873a-f0d69ec9d438}UWG Amendment Reference.relationships.{cbd28086-f4ea-4c46-a88b-e1a617136bb8}amendmentReferenceMaster.fields.{a94f4383-91a2-48fd-a9bf-cd64a4bf3a16}templateFrench'], local!manualDynamicFieldToRemove, "", 1 ) ) } ), a!save( local!manualDynamicFieldCopy, local!manualDynamicField.manualdynamicFieldLabel ) } ) ) } ) } ) } ), addRowLink: a!dynamicLink( label: "Add Field", value: "", saveInto: { a!save( local!manualDynamicField, append(local!manualDynamicField, save!value) ) } ), selectionSaveInto: {}, validations: {}, shadeAlternateRows: true )
Discussion posts and replies are publicly visible
The local!manualDynamicField which you are trying to append in the addRowLink(line 201) is not an array. Updating the locallocal!manualDynamicField to have "{}" surrounding the a!map() will be required as follows.
local!manualDynamicField:{ a!map( manualdynamicFieldLabel:"", manualdynamicFieldType:"" ) },
a!save( index(fv!item,"manualdynamicFieldLabel",{}), concat("###", save!value, "###") ),