Saving to table field via plugin
The answer on the previous question is a little bit off - you do not want to use json_encode to save the field. Just use the actual array:

$tableValue = [
  [
    "col1": "Product #1",
    "col2": "5",
    "col3": "10",
    "col4": "15"
  ],
  [
    "col1": "Product #2",
    "col2": "7",
    "col3": "14",
    "col4": "21"
  ],
  [
    "col1": "Product #3",
    "col2": "7",
    "col3": "14",
    "col4": "21"
  ]
];

$entry-&gt;setContentFromPost(array(
  'tableField'=&gt; $tableValue,
));


Note that 'col1', 'col2', etc, refer to locations in the table. The handle of the table column is not used.