Похоже, что ваше приложение отправляет событие всякий раз, когда генерируется пакет.
Я предполагаю, что внутри вашего кода у вас есть что-то вроде:
dispatchEvent( new BatchEvent("batchGenerated") );
или
dispatchEvent( new BatchEvent(BatchEvent.BATCH_GENERATED) );
Второй способ обычно предпочтительнее, так как использование переменных вместо магических строк дает дополнительный уровень проверки времени компиляции.
Первым обязательным параметром событий обычно является тип события - Event.CHANGE (он же «изменение»), FlexEvent.VALUE_COMMIT (он же «valueCommit») и т. Д.
Это то, с чем фактически сравнивает слушатель события.
Таким образом, в приведенном выше коде прослушивателя событий вы хотели бы изменить строку на:
printableInvoice.addEventListener("batchGenerated", printableInvoice_batchGeneratedHandler);
или, надеюсь,
printableInvoice.addEventListener(BatchEvent.BATCH_GENERATED, printableInvoice_batchGeneratedHandler);
Если вы хотите пойти дальше, документация Flex подробно описывает , как система событий работает , и как события эффективно нацеливаются и обрабатываются с помощью Capture, Target и Пузырьковые фазы.