You don’t actually need to overcomplicate this Caché/IRIS doesn’t support putting $ZEL logic directly in the SQL Storage “Delimiter” field. Instead, the usual pattern is to store your delimited string in the global and then expose each element through calculated properties with custom SqlComputeCode (for inserts) and SqlComputed (for retrieval). That way you can parse $ZEL(data,n) into P1, P2, etc. without fighting the wizard. For the record ID, just use the numeric subscript (e.g. rec in ^MYGLO("R",rec)) as your %ID that’s your primary key. In short: don’t try to shoehorn $ZEL into the delimiter option; define your properties as computed and base them on $ZEL slices of your stored string, with rec as the ID. 👍
You don’t actually need to overcomplicate this Caché/IRIS doesn’t support putting $ZEL logic directly in the SQL Storage “Delimiter” field. Instead, the usual pattern is to store your delimited string in the global and then expose each element through calculated properties with custom SqlComputeCode (for inserts) and SqlComputed (for retrieval). That way you can parse $ZEL(data,n) into P1, P2, etc. without fighting the wizard. For the record ID, just use the numeric subscript (e.g. rec in ^MYGLO("R",rec)) as your %ID that’s your primary key. In short: don’t try to shoehorn $ZEL into the delimiter option; define your properties as computed and base them on $ZEL slices of your stored string, with rec as the ID. 👍