As already stated, IFS, LTS, REUSE, and a bunch more are MultiValue Handling Functions documented in Universe Basic manual. Don't know where UD documents them.
They can be called from I-descriptors.
Unidata is similar, but I think you might need to call them from I-descriptors via SUBR().

This is a difference between Prime-style I-descriptors & Pick-style correlatives. For correlatives, you write as if single-value & the correlative handler feeds the appropriate values from the mv to the correlative. For I-desc, you have to write like you would in UV/UD Basic. E.g., @RECORD<3> refers to the entire @vm-delineated dynamic array.

The following should all work on UV if I were capable of typing it correctly.

This parallels your own style:

0002: IFS( LTS( @RECORD<3>, @RECORD<2> ), @RECORD<3>-...@record<2>+ REUSE( 86400 ), @RECORD<3>-...@record<2> )

for Unidata I *think* you need to do something like this:

0002: SUBR( '-IFS', SUBR( '-LTS', @RECORD<3>, @RECORD<2> ), @RECORD<3>-...@record<2> + REUSE( 86400 ), @RECORD<3>-...@record<2> )

You can use the dict names START & FINISH instead of @RECORD<2>, @RECORD<3>
I prefer:

0002: (FINISH - START) + ( LTS( START, FINISH ) * REUSE( 86400 ) )

To handle the 1st pair of values, where FINISH is blank because the job is still running, you might wrap the whole thing inside another IFS:

0002: IFS( NES( FINISH, '' ), [one of the calculations listed above], [ '' or REUSE( 'running' ) or whatever] )



_______________________________________________
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users

Reply via email to