Hi Ben,

I just installed a few samples as in description . CONGRATULATIONS !
- not only that I get what I want and leave the rest aside
- I also can split samples by subjects in several DBs and namespaces without being trapped by (hidden) dependencies.

I think this makes live for training and teaching significantly easier!
And allows central bug fixing independent from core release dates.


A great idea! Thanks!

To my understanding the main purpose of introducing %INLIST in our SQL was
to have a more handy option than the classic IN (....)

%INLIST takes a Single $LISTBUILD()  as parameter with a Variable number of values that you pass at runtime by only 1 "?"

while IN (p1,p2,p3,p4)   or better IN (?,?,?,?)  requires a fixed static number of parameters during execution. 
so you have to know the maximum number of values ahead when you create your query
and eventually to fill unused parameters by some impossible value to feed the query

 

Query 1 Example 1 could be marginally faster by less line terminations and less command dispatch:
But as this will be compiled some kind of code optimizer eventually might run.

Query2 Example1 is faster by less line terminations and less command dispatch.

BUT:  Both cases aren't the place to win benchmarks. Rather look for Global access , SQL optimizing, ....

Hi Ben,
- I like the idea of external samples. That offers definitely more flexibility .
- DOCUMATIC is unchanged and works local!  That's important. OK 
- JDBC: it isn't visible in Custom Install.  You only see xDBC -> ODBC .   
   Not an issue, rather a surprise. The .jar are  where they used to be before.

I'm really happy that we finally can get out of old chains imposed by 40yrs (DSM-11 and others) backward compatibility .

Robert  

rewrite of comment:

if this is something like

SELECT people.name, holiday.date, people.ID||'^'||holiday.ID as UNIQ
FROM people JOIN holiday
ON people.country = holiday.country

Then the bolded expression should not be longer than your 50 Char.

IF you use CachéStorage
ID is always a unique positive Integer (1.... 19digits)  and you can always disassemble it by the separator.