Informix Error -4134
-4134 Class qualification not allowed when invoking an event.
The program specified a class name followed by a scope resolution operator (::) and the name of an event. Replace the class name with the name of the appropriate object.
Oninit® Troubleshooting Guidance
Reasons / Common Causes
-4134 fires when a class name (rather than an object name) is used with :: before an event
name — per the official guidance, events must be invoked through an object, not qualified by a
class name.
- An event invocation qualified with a class name via
::, per the official guidance — the direct, only cause.
Solutions / Resolution
- Replace the class name with the name of the appropriate object, per the official guidance.
Examples
An event qualified with a class name
CALL Order::MyEvent()
-- -4134: events are invoked through objects, not class names
Corrected
DEFINE o Order
CALL o.MyEvent()
Diagnostic Checks
- Check every event invocation using
::, and replace the left-hand class name with an object reference.
Related Errors / Related Topics
- -4127 — "Event expected." A related event-usage error, about the
HANDLEidentifier not being a declared event at all, rather than a valid event being invoked with the wrong qualifier.
An event is invoked with a class-name qualifier via :: — use an object reference instead.