automatic check for referential integrity and "not null"
Aldevinas Katkus
8-14-19
New ideas have just come to my mind (maybe it should be in the Other Ideas):
When we define a field in a datadef.hal, we can point the table that this field refers to (kind of referential integrity):
ArrayField(Item, M4Code, 20, INVc);


It would be very nice if we had an automatic check if the "Item" field in the case above refers to an existing record in the INVc freeing us, developers to write an extra code in the xxxxRecordCheck(). This could be done automatically without writing any hal code.

Next idea:
We could extend the field definition with an optional parameter "is required" (same as "not null" in SQL terms)
For instance:
RecordField(CustCode,M4Code,20,CUVc, true);

if the last parameter is "true" then RecordCheck should automatically throw an error "field must not be empty" without writing any hal code.


This would free us of writing the same boring code everytime we create a new register or a field to an existing register definition.
Leave Comment
You can subscribe to notifications for this post by selecting the 'star' icon on the top right corner of the post.
Latest Posts
Paul Timms
I've found an issue which I'm trying to find the best way to resolve. An integrated proof of delivery system sends two pieces of data to the SERP API, in two separate calls - let's c...
17:59 20 Feb 2026
Andis Blicāns, Grasko
There are some topics in this Q&A related to this question, but none of them is about Idle users - Concurrent or Named. If timeout minutes are specified in Optional Features, then all idle users are...
15:53 18 Feb 2026