Data Broadcasting Bug in Servoy 3.0.x to 3.1.x?

Hi, we are seeing newly created records show up in lists which are supposed to be empty.

We have a database of Customers. On the customer screen, we have a tab panel showing transactions for that customer. This tab panel has an independent found set and is populated by an SQL query.

When there are no transactions for a Customer, we empty the list with the following code:

	var arr = new Array();
	var dataset = databaseManager.convertToDataSet(arr);
	forms.acc_transaction_activity_list.controller.loadRecords(dataset);

Now, if you stay on this form, new transactions added by other users will start appearing… They are not related to the particular customer in any way.

The new transactions are created on another form using an independent found set…

Any ideas? This is driving the accounts department crazy…

We have added code to log when the SQL search is firing, and it is not.

Also, if there is one record or more in list, the problem does not occur.

Christian,

Please create a support case at: http://crm.servoy.com/servoy-webclient/ … oy_support , include a test solution that shows the problem

Rob

Same test case as the other one.

We are trying the following modification:

OLD:

	var arr = new Array();
	var dataset = databaseManager.convertToDataSet(arr);
	forms.acc_transaction_activity_list.controller.loadRecords(dataset);

NEW:

	forms.acc_transaction_activity_list.controller.foundset.clear();

Looks promising, tested with 2 clients, but it needs to be re-tested on live server with up to 18 people creating new records.

   forms.acc_transaction_activity_list.controller.foundset.clear();

This resolves the problem.

Loading an empty dataset causes Servoy to want to update the list if other users create new records.

I think it is without the controller!

so this

forms.acc_transaction_activity_list.foundset.clear(); 

Sorry. I retyped it rather than copy-and-paste…

this is fixed for 3.1.4

now controller.loadRecords(emptyDataSet) has the same behavior as controller.foundset.clear()

Thanks for fixing so promptly.