когда завершенность действия относится к настоящему времени, если не ошибаюсь. например, Have you seen him today/this week/this morning? то есть, видел ли ты его сегодня/на этой неделе/этим утром. То есть этот день/неделя/утро еще идет. ну и соответственно отрицание тоже допустимо. он еще не закончил его работу. то есть на данный момент мы имеем некоторый результат (незавершенную работу) =)
Present perfect употребляется когда действие уже было совершено. Подробно грамматику описывать не буду почитай тут http://engramm.su/grammar/perfect_forms_of_verb.html