Answer
Since Apps9's Event condition builder doesn't expose an IS NULL option, move that null-transition check into the PL/SQL action code itself instead of trying to express it in the 'Conditions for performing this action' section — leave that condition section empty (so the action evaluates for every record save) and have the PL/SQL logic itself compare the OLD and NEW field values to detect the no-value-to-has-value transition before doing anything. Having the action evaluate on every save this way typically doesn't cause a meaningful performance issue.