9.0 will feature User defined/Custom Data Type?

9.0 will feature User defined/Custom Data Type?

  
Am I seeing what I am seeing? 9.0 will feature user defined/custom data types?

If you add a entity or structure, you can now add an attribute reference with your own entity/structure.

How will this work in 9.0? I mean when you create an entity (Item), then create a structure (CustomerItem) and now reference the entity (Item) via structure attribute -  what datatype is the attribute now? Is an entity identifier or is it a record datatype? 

If you assign a custom datatype to an input parameter it is treated just like a record/record list of the data type that you assign. 

However is it treated the same way in code? this is unknown at this stage. Since there is no available documentation about custom datatype (http://www.outsystems.com/help/servicestudio/8.9/), I'm not sure if this feature is a preview feature, or a final feature to be release in 9.0?

Any ideas?
Hi Robert,

As you concluded, using an Entity or Structure directly as a Data Type behaves very similarly to Records of those data types. The main distinction can be seen on usage. If you have a variable Employee with data type User, you can now write "Employee.Username" directly, instead of the "Employee.User.Username" you'd write if it was a User Record.

The main use case for using the Record/Record List data types now, is when you want to have more than one Entity or Structure (e.g. in query outputs). That should be made clearer until the final release of 9.0, and you can also expect the feature to be documented by then.

In terms of generated code, they are not exactly the same thing, as the Record has one more level in the hierarchy. Nevertheless, Service Studio accepts User where User Record is expected, and vice-versa, so you don't need to worry about the conversion for this case unless using extensions.

Best regards,
Paulo Ferreira
Paulo Custom data types, will be a feature in 9.0?it is not a beta preview? Are custom data types defined as a record or a record list? How would you distinguished between the two types?
Hi Robert,

What I described is a 9.0 feature, yes. Since Entity Identifiers, Records and Record Lists are already custom data types (e.g. User Identifier, User Record, User Record List), you could say we are adding Entities and Structures as custom data types.

The bottom line is that you will be able to set the data type of a variable to be an Entity or Structure directly, instead of having to use data type Record for that simple case. But the definition of Records will still be supported, and the distinction is clearer if you look at the scope in both cases:





Best regards,
Paulo Ferreira
Paulo, ....nice feature! would this feature also be available via extension ?
Hi Robert,

At the moment, you are not able to use Entities and Structures directly as data types when creating extensions.

Best regards,
Paulo Ferreira