# \[IGN-13795\] Perspective form event data missing

**URL:** <https://forum.inductiveautomation.com/t/ign-13795-perspective-form-event-data-missing/109117>\
**Category:** Ignition 8.3 Early Access\
**Tags:** perspective\
**Created:** [July 30, 2025, 1:29am UTC](https://forum.inductiveautomation.com/t/ign-13795-perspective-form-event-data-missing/109117 "2025-07-30T01:29:34Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

**Author:** ![amy.sudibyo](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/amy.sudibyo/32/38659_2.png) [@amy.sudibyo](https://forum.inductiveautomation.com/u/amy.sudibyo)\
**Post date:** [July 30, 2025, 1:29am UTC](https://forum.inductiveautomation.com/t/ign-13795-perspective-form-event-data-missing/109117/1 "2025-07-30T01:29:34Z")

</div>

I've been testing out the Perspective form component and it seems that the formContext, sessionContext and timestamp properties are missing from the event object.

onSubmitActionPerformed returns just the form data dictionary and onCancelActionPerformed returns an empty object.

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/e/2/e2472755b67805cb82358750d790787833b7783a.png)  
 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/0/f/0f8b09c958ce45eb94b1d6b7c37c88d394a9e9eb.png)

---

<div class="post-metadata">

**Author:** ![Lina\_Wright](https://avatars.discourse-cdn.com/v4/letter/l/22d042/32.png) [@Lina\_Wright](https://forum.inductiveautomation.com/u/Lina_Wright)\
**Post date:** [July 30, 2025, 1:44pm UTC](https://forum.inductiveautomation.com/t/ign-13795-perspective-form-event-data-missing/109117/2 "2025-07-30T13:44:40Z")

</div>

Hi Amy.  
`onSubmitActionPerformed` and `onCancelActionPerformed` are component events that—if configured—are triggered when the form’s submit or cancel action is activated. The action event includes the form data object, so it’s expected that properties like `formContext`, `sessionContext`, and `timestamp` are not included in the event object. This could be a feature request to add those properties to those events.  
Could you please share the configuration you have for `onCancelActionPerformed`? I’d like to replicate the scenario where it returns an empty object.  
For reference: A **form submission event** is an object containing properties such as the `data`, `formContext`, and `sessionContext`. This is located under **Perspective/Gateway Events**.

---

<div class="post-metadata">

**Author:** ![amy.sudibyo](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/amy.sudibyo/32/38659_2.png) [@amy.sudibyo](https://forum.inductiveautomation.com/u/amy.sudibyo)\
**Post date:** [July 31, 2025, 1:32am UTC](https://forum.inductiveautomation.com/t/ign-13795-perspective-form-event-data-missing/109117/3 "2025-07-31T01:32:04Z")

</div>

![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/b/c/bc7a765abbab91b22816b701ef24b089c9878b9f.png)  
That's not clear from the [documentation](https://docs.inductiveautomation.com/docs/8.3/appendix/components/perspective-components/perspective-input-palette/perspective-form/perspective-form-scripting), which lists those properties under the onSubmitActionPerformed and onCancelActionPerformed events.

I tested with onCancelActionPerformed the same way that I tested onSubmitActionPerformed - I passed the event object to a custom property on the view.

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [July 31, 2025, 1:36am UTC](https://forum.inductiveautomation.com/t/ign-13795-perspective-form-event-data-missing/109117/4 "2025-07-31T01:36:22Z")

</div>

~~This is a bug. Having only the form data, none of the user data, utterly cripples form processing.~~

---

<div class="post-metadata">

**Author:** ![Lina\_Wright](https://avatars.discourse-cdn.com/v4/letter/l/22d042/32.png) [@Lina\_Wright](https://forum.inductiveautomation.com/u/Lina_Wright)\
**Post date:** [July 31, 2025, 2:21pm UTC](https://forum.inductiveautomation.com/t/ign-13795-perspective-form-event-data-missing/109117/5 "2025-07-31T14:21:47Z")

</div>

Thank you so much for bringing this to our attention. An internal ticket has now been created to add these properties to the `event` object for `onSubmitActionPerformed` and `onCancelActionPerformed`.

---

<div class="post-metadata">

**Author:** ![ynejati](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/ynejati/32/6093_2.png) [@ynejati](https://forum.inductiveautomation.com/u/ynejati)\
**Post date:** [July 31, 2025, 4:00pm UTC](https://forum.inductiveautomation.com/t/ign-13795-perspective-form-event-data-missing/109117/6 "2025-07-31T16:00:57Z")

</div>

The description in the manual is a mistake, as we only intended to provide the form data object, and not what constitutes an entire form submission event. It's easy enough to create these additional properties, if you really need them in an onSubmitActionPerformed script. Unless I'm missing something obvious, to say that it "utterly cripples form processing" is misleading.

We can certainly consider adding these properties, but why not use the form submission event handler (fireSubmissionEvent) for form processing? Is it because you need access to properties of the page?

---

<div class="post-metadata">

**Author:** ![Steve\_Laubach](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/steve_laubach/32/60900_2.png) [@Steve\_Laubach](https://forum.inductiveautomation.com/u/Steve_Laubach)\
**Post date:** [July 31, 2025, 4:22pm UTC](https://forum.inductiveautomation.com/t/ign-13795-perspective-form-event-data-missing/109117/7 "2025-07-31T16:22:52Z")

</div>

I haven't fleshed out this control yet. I see this in the documentation:

> **[Perspective - Form | Ignition User Manual](https://www.docs.inductiveautomation.com/docs/8.3/appendix/components/perspective-components/perspective-input-palette/perspective-form#basic-form-layout-with-validation)**
>
> The Form component is used to create responsive and dynamic forms for user input and validation in Perspective.

I also see this fireSubmissionEvent property that defaults to false

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/f/3/f3a34b8ebdcc022430f05806d3a1b4d0a023880f.png)

From that I think I need to point the "submissionHandler" property to a method call but I'm not sure where that lives.

I tried adding a message handler on the control and referencing it in the "submissionEventHandler" property but that didn't work. I know it's doing something because it's flicking a "submission failed" error message in the upper right corner of my browser.

What am I doing wrong?

---

<div class="post-metadata">

**Author:** ![paul-griffith](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul-griffith/32/37249_2.png) [@paul-griffith](https://forum.inductiveautomation.com/u/paul-griffith)\
**Post date:** [July 31, 2025, 4:35pm UTC](https://forum.inductiveautomation.com/t/ign-13795-perspective-form-event-data-missing/109117/8 "2025-07-31T16:35:01Z")

</div>

Form submissions are intended to be handled by the Form Submission **gateway event** type, because form submissions have to be able to live 'outside' the component to support offline mode.

My educated guess is that `submissionHandler` should point to the name of the 'Form Submission' event handler you create separately.

---

<div class="post-metadata">

**Author:** ![ynejati](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/ynejati/32/6093_2.png) [@ynejati](https://forum.inductiveautomation.com/u/ynejati)\
**Post date:** [July 31, 2025, 4:35pm UTC](https://forum.inductiveautomation.com/t/ign-13795-perspective-form-event-data-missing/109117/9 "2025-07-31T16:35:42Z")

</div>

![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/8/6/86581d7397058246cf15938cf354478fcc4ca783.png)

---

<div class="post-metadata">

**Author:** ![Steve\_Laubach](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/steve_laubach/32/60900_2.png) [@Steve\_Laubach](https://forum.inductiveautomation.com/u/Steve_Laubach)\
**Post date:** [July 31, 2025, 4:53pm UTC](https://forum.inductiveautomation.com/t/ign-13795-perspective-form-event-data-missing/109117/10 "2025-07-31T16:53:49Z")

</div>

That worked. Not sure if it's supposed to be spamming the message but it is.

This

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/1/7/17132934ae91d3e69e7b47d686d390f1ea2cfd26.png)

Yielded this

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/2/d/2d3965e1131e05dc47593c3750b01eb280efb9fa.png)

I see the response information displays on the "form submitted popup". Nice.

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [July 31, 2025, 5:14pm UTC](https://forum.inductiveautomation.com/t/ign-13795-perspective-form-event-data-missing/109117/11 "2025-07-31T17:14:55Z")

</div>

> [@ynejati](#):
>
> but why not use the form submission event handler (fireSubmissionEvent) for form processing?

Oops. That's what I was thinking of.

---

<div class="post-metadata">

**Author:** ![Steve\_Laubach](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/steve_laubach/32/60900_2.png) [@Steve\_Laubach](https://forum.inductiveautomation.com/u/Steve_Laubach)\
**Post date:** [July 31, 2025, 5:54pm UTC](https://forum.inductiveautomation.com/t/ign-13795-perspective-form-event-data-missing/109117/12 "2025-07-31T17:54:18Z")

</div>

I figured this out.

I had an "onSubmitActionPerformed" event running this code:

```python
self.getSibling("Form").submit(preventInvalid=True)

```

I then checked the property "submit.fireSubmissionEvent" and had it run a form submission.

The end result is it endlessly executes the form submission. The solution was to take out the "onSubmitActionPerformed" code because that event was endlessly causing it to trigger the form submission event.
