How to get input values of a UIViewSDLForm

I’ve a UIViewSDLForm like

  "component": "UIViewSDLForm",
  "title": "{~DeveloperAdmin.Configs.Spaces.AddSpace~}",
  "customSubmit": true,
  "submitDataSource": "submitRecord",
  "submitArgument": "this",
  "clearOnCancel": true,
  "fieldSets": [
   . . .
  ],
  "effectTriggers": [
    {
      "trigger": "CUSTOM_FORM_SUBMIT",
      "effectType": "UIAsyncEffect1",
      "payload": {
        "form": "ThisForm"
      }
    }
  ]

Now in the effect function of UIAsyncEffect1 I’m trying to get the values of the each input unsuccessfully so far

          var formId = action.payload.form;
          var state = stateStream.value;
          form = UIViewSDLForm.make({
            environment: environment,
            metadataId: formId,
          });
          var fieldValues = form.getConfigFromState(state, ['fieldValues']);

WIth the above, I can see the fields names in the fieldValues object but the values are undefined

What is the correct way to read the input values?

There is an example in this file: c3server/repo/server/runtimes/src/ui/UiAsyncEffectSaveRuntime.js

1 Like

thanks, the thing is in my case I don’t have an initial record, the form is initially empty and supposed to read user inputs.

So if in the effect I do the following I will get undefined for record and the values in formObject

      var record = self.getData('record');
      var formObject = self.generateFormObject(stateStream.value, record);

@josh.nathanson please remember that we have customers using this environment who won’t have access to the c3server

@bachr please remember we have customers using this environment and to please not post proprietary c3 code. (This page is not abig deal, but for the future)

1 Like