Saving editable grid

Hello Team,

I have build an editable grind and now I want to save the values inside my records. I have record table and rule input in my interface the problem is how I can save this data for each request I have. The data is a sample there are around 15 rows which I want the user to be able to save some of them can be null some of them can be filled out. Basically the property is read only, once user enter value we can use a!save to save the property for the respective row, but I always get cannot index rule input records..

rows: {
                            a!gridRowLayout(
                              contents: {
                                a!richTextDisplayField(
                                  labelPosition: "COLLAPSED",
                                  value: {
                                    a!richTextItem(
                                      text: {"Melting Point"}
                                    )
                                  }
                                ),
                                a!textField(
                                  label: "Text",
                                  labelPosition: "ABOVE",
                                  saveInto: {},
                                  refreshAfter: "UNFOCUS",
                                  disabled: false,
                                  validations: {}
                                ),
                                a!dropdownField(
                                  choiceLabels: {"g/cm3", "kg/m3"},
                                  choiceValues: {"g/cm3", "kg/m3"},
                                  label: "Dropdown",
                                  labelPosition: "ABOVE",
                                  placeholder: "Select",
                                  saveInto: {},
                                  searchDisplay: "AUTO",
                                  validations: {}
                                ),
                                a!textField(
                                  label: "Text",
                                  labelPosition: "ABOVE",
                                  saveInto: {},
                                  refreshAfter: "UNFOCUS",
                                  validations: {}
                                ),
                                a!textField(
                                  label: "Text",
                                  labelPosition: "ABOVE",
                                  saveInto: {},
                                  refreshAfter: "UNFOCUS",
                                  validations: {}
                                ),
                                a!dropdownField(
                                  choiceLabels: {"℃", "℉"},
                                  choiceValues: {"℃", "℉"},
                                  label: "Dropdown",
                                  labelPosition: "ABOVE",
                                  placeholder: "Select",
                                  saveInto: {},
                                  searchDisplay: "AUTO",
                                  validations: {}
                                ),
                                a!dropdownField(
                                  choiceLabels: {"Property has not been measured"},
                                  choiceValues: {"Property has not been measured"},
                                  label: "Dropdown",
                                  labelPosition: "ABOVE",
                                  placeholder: "--- Select a Value ---",
                                  saveInto: {},
                                  searchDisplay: "AUTO",
                                  validations: {}
                                )
                              },
                              showWhen: if(
                                or(
                                  ri!AOS_PhysChem['recordType!{1ddc2dbc-133e-49a3-a416-3e896db0beb4}AOS_Phys_chem.fields.{6862862b-7cbf-4b5d-be70-7944f6a23f5b}PhysicalState'] = "LIquid",
                                  ri!AOS_PhysChem['recordType!{1ddc2dbc-133e-49a3-a416-3e896db0beb4}AOS_Phys_chem.fields.{6862862b-7cbf-4b5d-be70-7944f6a23f5b}PhysicalState'] = "Solid",
                                  ri!AOS_PhysChem['recordType!{1ddc2dbc-133e-49a3-a416-3e896db0beb4}AOS_Phys_chem.fields.{6862862b-7cbf-4b5d-be70-7944f6a23f5b}PhysicalState'] = ""
                                ),
                                true,
                                false)
                            ),
                            a!gridRowLayout(
                              contents: {
                                a!richTextDisplayField(
                                  labelPosition: "COLLAPSED",
                                  value: {
                                    a!richTextItem(
                                      text: {"Freezing Point"}
                                    )
                                  }
                                ),
                                a!textField(
                                  label: "Text",
                                  labelPosition: "ABOVE",
                                  saveInto: {},
                                  refreshAfter: "UNFOCUS",
                                  disabled: false,
                                  validations: {}
                                ),
                                a!dropdownField(
                                  choiceLabels: {"g/cm3", "kg/m3"},
                                  choiceValues: {"g/cm3", "kg/m3"},
                                  label: "Dropdown",
                                  labelPosition: "ABOVE",
                                  placeholder: "Select",
                                  saveInto: {},
                                  searchDisplay: "AUTO",
                                  validations: {}
                                ),
                                a!textField(
                                  label: "Text",
                                  labelPosition: "ABOVE",
                                  saveInto: {},
                                  refreshAfter: "UNFOCUS",
                                  validations: {}
                                ),
                                a!textField(
                                  label: "Text",
                                  labelPosition: "ABOVE",
                                  saveInto: {},
                                  refreshAfter: "UNFOCUS",
                                  validations: {}
                                ),
                                a!dropdownField(
                                  choiceLabels: {"℃", "℉"},
                                  choiceValues: {"℃", "℉"},
                                  label: "Dropdown",
                                  labelPosition: "ABOVE",
                                  placeholder: "Select",
                                  saveInto: {},
                                  searchDisplay: "AUTO",
                                  validations: {}
                                ),
                                a!dropdownField(
                                  choiceLabels: {"Property has not been measured"},
                                  choiceValues: {"Property has not been measured"},
                                  label: "Dropdown",
                                  labelPosition: "ABOVE",
                                  placeholder: "--- Select a Value ---",
                                  saveInto: {},
                                  searchDisplay: "AUTO",
                                  validations: {}
                                )
                              },
                              showWhen: if(
                                or(
                                  ri!AOS_PhysChem['recordType!{1ddc2dbc-133e-49a3-a416-3e896db0beb4}AOS_Phys_chem.fields.{6862862b-7cbf-4b5d-be70-7944f6a23f5b}PhysicalState'] = "LIquid",
                                  ri!AOS_PhysChem['recordType!{1ddc2dbc-133e-49a3-a416-3e896db0beb4}AOS_Phys_chem.fields.{6862862b-7cbf-4b5d-be70-7944f6a23f5b}PhysicalState'] = "Solid",
                                  ri!AOS_PhysChem['recordType!{1ddc2dbc-133e-49a3-a416-3e896db0beb4}AOS_Phys_chem.fields.{6862862b-7cbf-4b5d-be70-7944f6a23f5b}PhysicalState'] = ""
                                ),
                                true,
                                false)
                            ),
                            a!gridRowLayout(
                              contents: {
                                a!richTextDisplayField(
                                  labelPosition: "COLLAPSED",
                                  value: {
                                    a!richTextItem(
                                      text: {"Boiling Point"}
                                    )
                                  }
                                ),

  Discussion posts and replies are publicly visible

Parents
  • 0
    Certified Associate Developer

    This may be occurring due to the direct [ ] indexing. Try Using the property or Index function.

  • Can you give me an example with the full code which I provided in my previous comment. Thank you!

  • 0
    Certified Associate Developer
    in reply to Shwapx

    Sure. I have tried to replicate and solve this error in 1st and 2nd SS respectively.

    In the first SS, as you can see I am trying to access a field of a null row which is causing the same error mentioned
      

    In the 2nd SS, you can see I am trying to do the same thing with the property and index function, which is not giving an error this time.


    if you have done something like the one mentioned in 1st SS then try to replicate the 2nd SS logic

  • This is still saving only one value and it's not visible in the field.



  • 0
    Certified Associate Developer
    in reply to Shwapx

    Instead of using ri!AOS_physChemDetails use fv!index of foreach in save into of editable grid components. 

  • It's still not working.



    rows: {
                                a!gridRowLayout(
                                  contents: {
                                    a!richTextDisplayField(
                                      labelPosition: "COLLAPSED",
                                      value: {
                                        a!richTextItem(
                                          text: {"Melting Point"}
                                        )
                                      }
                                    ),
                                    a!textField(
                                      label: "Text",
                                      labelPosition: "ABOVE",
                                      value: property(index(ri!AOS_PhysChemDetails,1,{}),'recordType!{45e1c911-2882-4182-a967-cf53ca64dedd}AOS_Phys_Chem_Details',{}),
                                      saveInto: fv!row,
                                      refreshAfter: "UNFOCUS",
                                      disabled: false,
                                      validations: {}
                                    ),
                                    a!dropdownField(
                                      choiceLabels: {"g/cm3", "kg/m3"},
                                      choiceValues: {"g/cm3", "kg/m3"},
                                      label: "Dropdown",
                                      labelPosition: "ABOVE",
                                      placeholder: "Select",
                                      saveInto: {},
                                      searchDisplay: "AUTO",
                                      validations: {}
                                    ),
                                    a!textField(
                                      label: "Text",
                                      labelPosition: "ABOVE",
                                      saveInto: {},
                                      refreshAfter: "UNFOCUS",
                                      validations: {}
                                    ),
                                    a!textField(
                                      label: "Text",
                                      labelPosition: "ABOVE",
                                      saveInto: {},
                                      refreshAfter: "UNFOCUS",
                                      validations: {}
                                    ),
                                    a!dropdownField(
                                      choiceLabels: {"℃", "℉"},
                                      choiceValues: {"℃", "℉"},
                                      label: "Dropdown",
                                      labelPosition: "ABOVE",
                                      placeholder: "Select",
                                      saveInto: {},
                                      searchDisplay: "AUTO",
                                      validations: {}
                                    ),
                                    a!dropdownField(
                                      choiceLabels: {"Property has not been measured"},
                                      choiceValues: {"Property has not been measured"},
                                      label: "Dropdown",
                                      labelPosition: "ABOVE",
                                      placeholder: "--- Select a Value ---",
                                      saveInto: {},
                                      searchDisplay: "AUTO",
                                      validations: {}
                                    )
                                  },
                                  showWhen: if(
                                    or(
                                      ri!AOS_PhysChem['recordType!{1ddc2dbc-133e-49a3-a416-3e896db0beb4}AOS_Phys_chem.fields.{6862862b-7cbf-4b5d-be70-7944f6a23f5b}PhysicalState'] = "LIquid",
                                      ri!AOS_PhysChem['recordType!{1ddc2dbc-133e-49a3-a416-3e896db0beb4}AOS_Phys_chem.fields.{6862862b-7cbf-4b5d-be70-7944f6a23f5b}PhysicalState'] = "Solid",
                                      ri!AOS_PhysChem['recordType!{1ddc2dbc-133e-49a3-a416-3e896db0beb4}AOS_Phys_chem.fields.{6862862b-7cbf-4b5d-be70-7944f6a23f5b}PhysicalState'] = ""
                                    ),
                                    true,
                                    false)
                                ),
                                a!gridRowLayout(
                                  contents: {
                                    a!richTextDisplayField(
                                      labelPosition: "COLLAPSED",
                                      value: {
                                        a!richTextItem(
                                          text: {"Freezing Point"}
                                        )
                                      }
                                    ),
                                    a!textField(
                                      label: "Text",
                                      labelPosition: "ABOVE",
                                      saveInto: {},
                                      refreshAfter: "UNFOCUS",
                                      disabled: false,
                                      validations: {}
                                    ),
                                    a!dropdownField(
                                      choiceLabels: {"g/cm3", "kg/m3"},
                                      choiceValues: {"g/cm3", "kg/m3"},
                                      label: "Dropdown",
                                      labelPosition: "ABOVE",
                                      placeholder: "Select",
                                      saveInto: {},
                                      searchDisplay: "AUTO",
                                      validations: {}
                                    ),
                                    a!textField(
                                      label: "Text",
                                      labelPosition: "ABOVE",
                                      saveInto: {},
                                      refreshAfter: "UNFOCUS",
                                      validations: {}
                                    ),
                                    a!textField(
                                      label: "Text",
                                      labelPosition: "ABOVE",
                                      saveInto: {},
                                      refreshAfter: "UNFOCUS",
                                      validations: {}
                                    ),
                                    a!dropdownField(
                                      choiceLabels: {"℃", "℉"},
                                      choiceValues: {"℃", "℉"},
                                      label: "Dropdown",
                                      labelPosition: "ABOVE",
                                      placeholder: "Select",
                                      saveInto: {},
                                      searchDisplay: "AUTO",
                                      validations: {}
                                    ),
                                    a!dropdownField(
                                      choiceLabels: {"Property has not been measured"},
                                      choiceValues: {"Property has not been measured"},
                                      label: "Dropdown",
                                      labelPosition: "ABOVE",
                                      placeholder: "--- Select a Value ---",
                                      saveInto: {},
                                      searchDisplay: "AUTO",
                                      validations: {}
                                    )
                                  },
                                  showWhen: if(
                                    or(
                                      ri!AOS_PhysChem['recordType!{1ddc2dbc-133e-49a3-a416-3e896db0beb4}AOS_Phys_chem.fields.{6862862b-7cbf-4b5d-be70-7944f6a23f5b}PhysicalState'] = "LIquid",
                                      ri!AOS_PhysChem['recordType!{1ddc2dbc-133e-49a3-a416-3e896db0beb4}AOS_Phys_chem.fields.{6862862b-7cbf-4b5d-be70-7944f6a23f5b}PhysicalState'] = "Solid",
                                      ri!AOS_PhysChem['recordType!{1ddc2dbc-133e-49a3-a416-3e896db0beb4}AOS_Phys_chem.fields.{6862862b-7cbf-4b5d-be70-7944f6a23f5b}PhysicalState'] = ""
                                    ),
                                    true,
                                    false)
                                ),
                                a!gridRowLayout(

Reply
  • It's still not working.



    rows: {
                                a!gridRowLayout(
                                  contents: {
                                    a!richTextDisplayField(
                                      labelPosition: "COLLAPSED",
                                      value: {
                                        a!richTextItem(
                                          text: {"Melting Point"}
                                        )
                                      }
                                    ),
                                    a!textField(
                                      label: "Text",
                                      labelPosition: "ABOVE",
                                      value: property(index(ri!AOS_PhysChemDetails,1,{}),'recordType!{45e1c911-2882-4182-a967-cf53ca64dedd}AOS_Phys_Chem_Details',{}),
                                      saveInto: fv!row,
                                      refreshAfter: "UNFOCUS",
                                      disabled: false,
                                      validations: {}
                                    ),
                                    a!dropdownField(
                                      choiceLabels: {"g/cm3", "kg/m3"},
                                      choiceValues: {"g/cm3", "kg/m3"},
                                      label: "Dropdown",
                                      labelPosition: "ABOVE",
                                      placeholder: "Select",
                                      saveInto: {},
                                      searchDisplay: "AUTO",
                                      validations: {}
                                    ),
                                    a!textField(
                                      label: "Text",
                                      labelPosition: "ABOVE",
                                      saveInto: {},
                                      refreshAfter: "UNFOCUS",
                                      validations: {}
                                    ),
                                    a!textField(
                                      label: "Text",
                                      labelPosition: "ABOVE",
                                      saveInto: {},
                                      refreshAfter: "UNFOCUS",
                                      validations: {}
                                    ),
                                    a!dropdownField(
                                      choiceLabels: {"℃", "℉"},
                                      choiceValues: {"℃", "℉"},
                                      label: "Dropdown",
                                      labelPosition: "ABOVE",
                                      placeholder: "Select",
                                      saveInto: {},
                                      searchDisplay: "AUTO",
                                      validations: {}
                                    ),
                                    a!dropdownField(
                                      choiceLabels: {"Property has not been measured"},
                                      choiceValues: {"Property has not been measured"},
                                      label: "Dropdown",
                                      labelPosition: "ABOVE",
                                      placeholder: "--- Select a Value ---",
                                      saveInto: {},
                                      searchDisplay: "AUTO",
                                      validations: {}
                                    )
                                  },
                                  showWhen: if(
                                    or(
                                      ri!AOS_PhysChem['recordType!{1ddc2dbc-133e-49a3-a416-3e896db0beb4}AOS_Phys_chem.fields.{6862862b-7cbf-4b5d-be70-7944f6a23f5b}PhysicalState'] = "LIquid",
                                      ri!AOS_PhysChem['recordType!{1ddc2dbc-133e-49a3-a416-3e896db0beb4}AOS_Phys_chem.fields.{6862862b-7cbf-4b5d-be70-7944f6a23f5b}PhysicalState'] = "Solid",
                                      ri!AOS_PhysChem['recordType!{1ddc2dbc-133e-49a3-a416-3e896db0beb4}AOS_Phys_chem.fields.{6862862b-7cbf-4b5d-be70-7944f6a23f5b}PhysicalState'] = ""
                                    ),
                                    true,
                                    false)
                                ),
                                a!gridRowLayout(
                                  contents: {
                                    a!richTextDisplayField(
                                      labelPosition: "COLLAPSED",
                                      value: {
                                        a!richTextItem(
                                          text: {"Freezing Point"}
                                        )
                                      }
                                    ),
                                    a!textField(
                                      label: "Text",
                                      labelPosition: "ABOVE",
                                      saveInto: {},
                                      refreshAfter: "UNFOCUS",
                                      disabled: false,
                                      validations: {}
                                    ),
                                    a!dropdownField(
                                      choiceLabels: {"g/cm3", "kg/m3"},
                                      choiceValues: {"g/cm3", "kg/m3"},
                                      label: "Dropdown",
                                      labelPosition: "ABOVE",
                                      placeholder: "Select",
                                      saveInto: {},
                                      searchDisplay: "AUTO",
                                      validations: {}
                                    ),
                                    a!textField(
                                      label: "Text",
                                      labelPosition: "ABOVE",
                                      saveInto: {},
                                      refreshAfter: "UNFOCUS",
                                      validations: {}
                                    ),
                                    a!textField(
                                      label: "Text",
                                      labelPosition: "ABOVE",
                                      saveInto: {},
                                      refreshAfter: "UNFOCUS",
                                      validations: {}
                                    ),
                                    a!dropdownField(
                                      choiceLabels: {"℃", "℉"},
                                      choiceValues: {"℃", "℉"},
                                      label: "Dropdown",
                                      labelPosition: "ABOVE",
                                      placeholder: "Select",
                                      saveInto: {},
                                      searchDisplay: "AUTO",
                                      validations: {}
                                    ),
                                    a!dropdownField(
                                      choiceLabels: {"Property has not been measured"},
                                      choiceValues: {"Property has not been measured"},
                                      label: "Dropdown",
                                      labelPosition: "ABOVE",
                                      placeholder: "--- Select a Value ---",
                                      saveInto: {},
                                      searchDisplay: "AUTO",
                                      validations: {}
                                    )
                                  },
                                  showWhen: if(
                                    or(
                                      ri!AOS_PhysChem['recordType!{1ddc2dbc-133e-49a3-a416-3e896db0beb4}AOS_Phys_chem.fields.{6862862b-7cbf-4b5d-be70-7944f6a23f5b}PhysicalState'] = "LIquid",
                                      ri!AOS_PhysChem['recordType!{1ddc2dbc-133e-49a3-a416-3e896db0beb4}AOS_Phys_chem.fields.{6862862b-7cbf-4b5d-be70-7944f6a23f5b}PhysicalState'] = "Solid",
                                      ri!AOS_PhysChem['recordType!{1ddc2dbc-133e-49a3-a416-3e896db0beb4}AOS_Phys_chem.fields.{6862862b-7cbf-4b5d-be70-7944f6a23f5b}PhysicalState'] = ""
                                    ),
                                    true,
                                    false)
                                ),
                                a!gridRowLayout(

Children