Cancels a subscription to an ABL named event. Specifically, the UNSUBSCRIBE statement cancels one or more subscriptions to one or more named events.
Note: ABL named events are completely different from the key function, mouse, widget, and direct manipulation events, which are described in the “Handle-based Object Events Reference” section. They are also different from the class events described in the “Class Events Reference” section.
UNSUBSCRIBE PROCEDURE subscriber-handleTO event-name ALL IN publisher-handlePROCEDURE subscriber-handleThe PROCEDURE option lets one procedure cancel a subscription on behalf of another. For example, if you want procedure A to cancel a subscription on behalf of procedure B, set subscriber-handle to the procedure handle of B.If the PROCEDURE option does not appear, the AVM assumes that the subscriber is THIS-PROCEDURE, the procedure that contains the UNSUBSCRIBE statement.IN publisher-handleIf the IN option appears, the AVM cancels subscriptions to named events published by publisher-handle-specifically, either all subscriptions (if the ALL option appears), or only subscriptions to event-name (if event-name appears).If the IN option does not appear, the AVM cancels subscriptions regardless of the publisher-specifically, either all subscriptions (if the ALL option appears), or only subscriptions to event-name (if event-name appears).
![]()
When the AVM executes an UNSUBSCRIBE statement, it cancels a subscription when it finds a match. A match means that the SUBSCRIBE and UNSUBSCRIBE event names match, and that one of the following is true:
![]()
The subscription was created using SUBSCRIBE IN, cancelled using UNSUBSCRIBE IN, and the publisher and subscriber handles in the SUBSCRIBE and UNSUBSCRIBE statements match.
![]()
The subscription was created using SUBSCRIBE ANYWHERE, and cancelled using UNSUBSCRIBE without the IN option.
![]()
The AVM executes the UNSUBSCRIBE statement with an implicit NO-ERROR option. That is, if the AVM cannot find a match, it does not report an error. To find out what errors, if any, occurred, use the ERROR-STATUS system handle.
![]()
If you create a subscription using SUBSCRIBE ANYWHERE, you cannot cancel the subscription using UNSUBSCRIBE IN.
© 2012 Progress Software Corporation and/or its subsidiaries or affiliates. |