Event adelline_before

Description

This event is called when a DELETE operation is requested on a (1,N) or (0,N) collection.

Context

In this context, the deletion is not yet done, and the event can reject the DELETE operation by returning in ASTATUS an error status ([V]CST_AERROR).

The following variables or properties are available in the context:

The different values possible for ALINE are:

Take care that if you want to control the line that will be deleted, you have to use the AGETINDBYLINE method to get the physical position. This can be done by the following code:

$ADELLINE_BEFORE
 Local Integer LCONTROL, POSCONTROL
 If ALINE<>[V]CST_ALASTPOS
   If ALINE=[V]CST_AFIRST_POS
     LCONTROL=1
   Else
     LCONTROL=ALINE
   Endif
   POSCONTROL=fmet this.AGETINDBYLINE("COLLECT",LCONTROL)
   If POSCONTROL>0
     # Here you can control the properties of this.COLLECT(POSCONTROL) to decide if the insertion can be done
   Else
     # The position sent is not valid, raise an error or ignore
   Endif
 Else
     # This case is not possible because this position refers to a position for a line addition
 Endif