# I wanted to Call System.dataset.addRow() like ignition method from java

**URL:** <https://forum.inductiveautomation.com/t/i-wanted-to-call-system-dataset-addrow-like-ignition-method-from-java/45301>\
**Category:** Module Development\
**Created:** [April 6, 2021, 3:53pm UTC](https://forum.inductiveautomation.com/t/i-wanted-to-call-system-dataset-addrow-like-ignition-method-from-java/45301 "2021-04-06T15:53:06Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![pmishra](https://avatars.discourse-cdn.com/v4/letter/p/dc4da7/32.png) [@pmishra](https://forum.inductiveautomation.com/u/pmishra)\
**Post date:** [April 6, 2021, 3:53pm UTC](https://forum.inductiveautomation.com/t/i-wanted-to-call-system-dataset-addrow-like-ignition-method-from-java/45301/1 "2021-04-06T15:53:06Z")

</div>

I found one class DatasetUtilities, In which I found the addRow method, but this method required PySequence row, but I don’t know how to create a PySequence row in java.

---

<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:** [April 6, 2021, 3:59pm UTC](https://forum.inductiveautomation.com/t/i-wanted-to-call-system-dataset-addrow-like-ignition-method-from-java/45301/2 "2021-04-06T15:59:38Z")

</div>

Use a `com.inductiveautomation.ignition.common.util.DatasetBuilder` instead.  
The code in DatasetUtilities is basically equivalent to this:

```auto
    public static Dataset addRow(Dataset ds, Object[] newRow) {
        var builder = DatasetBuilder.newBuilder().colNames(ds.getColumnNames()).colTypes(ds.getColumnTypes());
        for (int i = 0; i < ds.getRowCount(); i++) {
            var row = new Object[ds.getColumnCount()];
            for (int j = 0; j < ds.getColumnCount(); j++) {
                row[j] = ds.getValueAt(i, j);
            }
            builder.addRow(row);
        }
        builder.addRow(newRow);
        
        return builder.build();
    }

```

---

<div class="post-metadata">

**Author:** ![pmishra](https://avatars.discourse-cdn.com/v4/letter/p/dc4da7/32.png) [@pmishra](https://forum.inductiveautomation.com/u/pmishra)\
**Post date:** [April 8, 2021, 4:42pm UTC](https://forum.inductiveautomation.com/t/i-wanted-to-call-system-dataset-addrow-like-ignition-method-from-java/45301/3 "2021-04-08T16:42:59Z")

</div>

Thankyou for replying,  
But, for my module building I need all the system.datatset. methods.  
for exmaple system.dataset.todataset(), system.dataset.deleteRow(). for that I need PySequence row, PySequence headers etc.  
I need help regarding PySequence

---

<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:** [April 8, 2021, 5:35pm UTC](https://forum.inductiveautomation.com/t/i-wanted-to-call-system-dataset-addrow-like-ignition-method-from-java/45301/4 "2021-04-08T17:35:28Z")

</div>

You really don’t. Work with datasets directly.

If you, for whatever reason, particularly want a PySequence, then you can make a `PyList` from a Java list; just call the constructor.
