при отрицании в случае состоявшегося действия 了 не ставится. Почему оно в данном примере?
Вы совершенно правы: в отрицательных предложениях при глаголах частица 了 не используется.
Но тут есть одна хитрость: не всякое 没 в китайском языке означает отрицательное предложение. И 有 как глагол наличия - именно такой случай.
Сравним предложения:
1. 他有工作。-
У него есть работа. (утвердительное предложение, 有 передает значение наличия - "имеет").
2. 他没有工作。 -
У него нет работы. (отрицательное предложение, частица 没 оформляет отрицание глагола 有 - "не имеется").
3. 他有了工作。 -
У него появилась (букв. "он заимел") работа. (утвердительное предложение, 有了 передает значение
появления того, что раньше не было, здесь у нас 了
1 передает значение новой ситуации).
4. 他没有了工作。 -
У него не стало работы. (
утвердительное (!) предложение, 没有了 передает значение
исчезновения того, что раньше было, здесь у нас 了
1 также передает значение новой ситуации).
Таким образом, в предложениях "появления/исчезновения" 有了/没有了 компонент 没 не значит отрицания, т.е. 没有了工作 - это не отрицательное "не появилось работы", а утвердительное "не стало (=исчезло) работы". А потому в данном предложении работает общее правило постановки 了.
Кстати, в таких предложениях можно употреблять форму 没了: 他没了工作。Это также свидетельствует, что 没 в данной конструкции не есть какая-то "внешняя" отрицательная частица к глаголу 有, а является неотъемлемым компонентом семантики глагола исчезновения.