Field 'XY' doesn't have a default value ERROR

I keep getting the following error:

Caused by: com.servoy.j2db.dataprocessing.DataException: Field 'proceeding_event_id' doesn't have a default value
	at com.servoy.j2db.dblayer.Zb.Za(Zb.java:128)
	at com.servoy.j2db.server.Zc.Zo.Za(Zo.java:96)
	at com.servoy.j2db.dataprocessing.Zu.performUpdates(Zu.java:750)
	at com.servoy.j2db.dataprocessing.EditRecordList.stopEditing(EditRecordList.java:477)
	... 23 more

I checked the database table/Servoy sequences settings. There all were set as Sequence = Database Identity. I went ahead I set once again each PK’s and FK’s Values as “Database Managed.” I wanted to make sure that all Sequences = Database Identity.

I closed Servoy, truncate all tables, and started Servoy again (a few times I did this), and still I got the same error.

The problems happens when I try to create a record in the table proceedings_documents. See image:

[attachment=1]proceedings_events-proceedings_documents.GIF[/attachment]

I thought the problem was in the method, so I changed it many times. The last one is very simple:

function createRecord(event) {
	controller.newRecord(false);
	var relatedRecordID = forms.frm_proceedings_events_record_view.proceeding_event_id;
	proceeding_event_id = relatedRecordID;
}

This method’s syntax works in other tables, but not in this one.

I attached the ‘create’ syntax of these two tables (just in case).
[attachment=0]create_syntax.txt[/attachment]

Don’t know what is going on. Could this be a bug?

I’m using Servoy Version: 5.2.7 - build 1013

Thank you very much Servoy Forum!

Carlos

create_syntax.txt (3.21 KB)

Carlos,

The proceedings_documents.proceeding_document_id has PK auto-increment, I expect that maps to dbident in Servoy.
That should not be database-managed, but dbident.

You should not set the PK as db-managed either since the db does not generate the value, your js code does.
It should be a regular column (system value: none).

Rob

Yep. That was the problem. You are right in both counts. Also, when you have a composite PK (in a m-n table), those ‘foreign’ PK should be set to none (system value: none).

Thanks a bunch!

Carlos