# Form component crashes when dynamically duplicating rows (8.3.2)

**URL:** <https://forum.inductiveautomation.com/t/form-component-crashes-when-dynamically-duplicating-rows-8-3-2/114586>\
**Category:** Ignition\
**Tags:** perspective, ignition83\
**Created:** [March 20, 2026, 8:14am UTC](https://forum.inductiveautomation.com/t/form-component-crashes-when-dynamically-duplicating-rows-8-3-2/114586 "2026-03-20T08:14:04Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Paul.M](https://avatars.discourse-cdn.com/v4/letter/p/c0e974/32.png) [@Paul.M](https://forum.inductiveautomation.com/u/Paul.M)\
**Post date:** [March 20, 2026, 8:14am UTC](https://forum.inductiveautomation.com/t/form-component-crashes-when-dynamically-duplicating-rows-8-3-2/114586/1 "2026-03-20T08:14:04Z")

</div>

Hello,

I am working with the Form component in Ignition 8.3.2 and I am trying to allow the user to dynamically add rows (a list of actions).

Currently, I am using the following script triggered by a button:

```python
    
    logger = system.util.getLogger("myLogger")
    
    items = self.getSibling("Form_0").props.columns.items[0].rows.items
    logger.info(str(type(items)))
    import json
    itemsList = json.loads(system.util.jsonEncode(items))
    logger.info(str(type(itemsList)))
    import copy
    newItem = copy.deepcopy(itemsList[-1])
    
    itemsList.append(newItem)
    
    self.getSibling("Form_0").props.columns.items[0].rows.items = itemsList

```

a small part of UI it’s this (rest of UI it’s a fixed structure)

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

The idea is simple: when the user presses the "Adaugare Task" button, I duplicate the last row and append it to the list.

This works initially, but after several uses the UI crashes unpredictably: sometimes after 2–3 additions, sometimes after 10+ additions

On the Gateway, I don’t see any errors.

However, in the Designer I occasionally get this error:

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

From what I can see on designer, the `items` structure is correctly formed after each update, even before the crash

**My questions:**

1. Is the Form component intended to support this kind of dynamic structure (adding rows at runtime)?

2. Could the issue be related to the size/complexity of the JSON (around ~2000 rows)?

3. Is duplicating rows like this (via JSON encode/decode + deepcopy) a problematic approach internally for Perspective?

Thanks,

Paul

---

<div class="post-metadata">

**Author:** ![pamato](https://avatars.discourse-cdn.com/v4/letter/p/c68b51/32.png) [@pamato](https://forum.inductiveautomation.com/u/pamato)\
**Post date:** [March 20, 2026, 12:20pm UTC](https://forum.inductiveautomation.com/t/form-component-crashes-when-dynamically-duplicating-rows-8-3-2/114586/2 "2026-03-20T12:20:32Z")

</div>

Hi Paul, when previewing the page in the Designer, are you seeing any errors in the Designer’s Output Console (Tools \> Console) window when this happens?

---

<div class="post-metadata">

**Author:** ![Paul.M](https://avatars.discourse-cdn.com/v4/letter/p/c0e974/32.png) [@Paul.M](https://forum.inductiveautomation.com/u/Paul.M)\
**Post date:** [March 20, 2026, 12:47pm UTC](https://forum.inductiveautomation.com/t/form-component-crashes-when-dynamically-duplicating-rows-8-3-2/114586/3 "2026-03-20T12:47:42Z")

</div>

> ```python
> [14:38:53.739] 
> [Browser Thread: 10950f11-ab88-42db-a560-6c2fe0127d9c] 
> ERROR Perspective.Designer.Workspace
> 
> Level: LEVEL_ERROR
> 
> Message:
> onerrorLogger:
> 
> TypeError: Cannot read properties of undefined (reading 'readEncoded')
> 
> Stack Trace:
> --------------------------------------------------
> TypeError: Cannot read properties of undefined (reading 'readEncoded')
> at https://gateway-addres/res/perspective/js/PerspectiveClient.3cf0a4e1f3ecd1e92afc.js:2:426069
> at Array.map ()
> at E.encode (https://gateway-addres/res/perspective/js/PerspectiveClient.3cf0a4e1f3ecd1e92afc.js:2:426059)
> at E.toEncoded (https://gateway-addres/res/perspective/js/PerspectiveClient.3cf0a4e1f3ecd1e92afc.js:2:423846)
> at C.readEncoded (https://gateway-addres/res/perspective/js/PerspectiveClient.3cf0a4e1f3ecd1e92afc.js:2:428730)
> at https://gateway-addres/res/perspective/js/PerspectiveClient.3cf0a4e1f3ecd1e92afc.js:2:430237
> at C.visit (https://gateway-addres/res/perspective/js/PerspectiveClient.3cf0a4e1f3ecd1e92afc.js:2:428013)
> at https://gateway-addres/res/perspective/js/PerspectiveClient.3cf0a4e1f3ecd1e92afc.js:2:424605
> at Map.forEach ()
> at T.visitChildren (https://gateway-addres/res/perspective/js/PerspectiveClient.3cf0a4e1f3ecd1e92afc.js:2:424506)
> 
> --------------------------------------------------
> 
> Error Details:
> Name: TypeError
> Message: Cannot read properties of undefined (reading 'readEncoded')
> 
> Log Data:
> --------------------------------------------------
> msg: Uncaught Exception
> errorMsg: Uncaught TypeError: Cannot read properties of undefined (reading 'readEncoded')
> url: https://gateway-addres/res/perspective/js/PerspectiveClient.3cf0a4e1f3ecd1e92afc.js
> line_number: 2
> column: 426069
> --------------------------------------------------
> 
> Source:
> https://gateway-addres/res/perspective/js/PerspectiveClient.3cf0a4e1f3ecd1e92afc.js
> 
> ```

This is error from Console, I masked my gateway address to not make it public 😃

---

<div class="post-metadata">

**Author:** ![pamato](https://avatars.discourse-cdn.com/v4/letter/p/c68b51/32.png) [@pamato](https://forum.inductiveautomation.com/u/pamato)\
**Post date:** [April 7, 2026, 9:43pm UTC](https://forum.inductiveautomation.com/t/form-component-crashes-when-dynamically-duplicating-rows-8-3-2/114586/4 "2026-04-07T21:43:03Z")

</div>

I’ve tried replicating this issue to no avail. Are you able to send me the view JSON?
