Perspective Message Handler not working properly

Hi everyone,

I'm currently employing a perspective message handler for the component. Within my table, each column utilizes a view-selected row update triggered by clicking the Update button (which is also accessible within each table column).

Incorporate receiving the message from the Update button within the root view for the CellName, and utilize the value of this parameter in the onActionPerformed event for updating the selected row.

Currently, I'm encountering an issue during row updates where updating only the Single column triggers automatic updates for other columns, resulting in either blank values or random data being populated. This occurs inconsistently across different columns.

Here's an overview of the data before updating:

After updating the data (where only the Description column has been updated, but other columns are automatically updated with blank values).

Any idea how to fix this?

Priyanka Khandge

I don't understand this part, frankly... Can you explain why you have a message handler on the Update button to update the row values instead of on the Table component? Also, what is the purpose of that button, to pull new data from a DB for just that row? Last thing - is the CellName parameter an outgoing parameter on your button view?

@YF129701 Thanks for the response.

I have used a message handler on the update button because in my case all columns are used to view. The update button column also uses view.

Pass the selected row value to the updated button view using the message handler.

CellName parameter is an incoming parameter.

If I'm understanding you correctly and you're rendering each column as a view, then when you do event.value in the onEditCellCommit component event, I'm almost certain it will be null (or "").

As a test, add this line to the beginning of your onEditCellCommit script:

self.print("event.value: {}, type(event.value): {}".format(event.value, type(event.value))) 

The issue has been resolved; I had called the message handler in the wrong place.