migration gives warnings when entries defined in triggers like RETS
Author: ulrichmerkel@web.de (ulrich-merkel)
since the very old days, entries were defined in triggers like RETS: entry RETS end ; RETS entry RETS1 end ; RETS1 In U10, the migration goes wrong: ;- [Start '<Retrieve Sequential>'] #startdefine #define $triggerAbbr=RETS trigger retrieveSequential entry RETS end ; RETS entry RETS1 end ; RETS1 end #enddefine ;- [End '<Retrieve Sequential>'] Phase 7: Procs compilation (CSCR) end (CSCR) warning: 1000 - Proc statements occur after 'end' instruction. (CSCR) end (CSCR) warning: 1000 - Proc statements occur after 'end' instruction. (CSCR) end (CSCR) warning: 1000 - Proc statements occur after 'end' instruction. To allow remote controlled trigger execution, we will find in the ERAS or CLR constructions like: call DO_ERAS() entry DO_ERAS message/info "ERASE not active!" return erase if ($status < 0) message $text(1763) ;error rollback else if ($status = 1) message $text(1634) ;not allowed else message $text(1806) ;Ok commit endif endif end ; DO_ERAS or call DO_CLR() entry DO_CLR clear end ; DO_CLR After migration to U10, ;- [Start '<Clear>'] #startdefine #define $triggerAbbr=CLR trigger clear call DO_CLR() entry DO_CLR clear end ; DO_CLR end #enddefine ;- [End '<Clear>']
1 Comment
Local Administrator
Oh dear, we use this structure a lot. Mostly, as Uli says, to allow remote calling of 'trigger' behaviour and one place to put the code. There are a LOT of call <$fieldname>_<$triggerabbr> entry <$fieldname>_<$triggerabbr> code end in our code.
Author: Iain Sharp (i.sharp@pcisystems.co.uk)