In sentences employing Bă (把) construction, a sense of total affectedness of the undergoer can be manifest as a necessary completion of the event.
In the sentence *他把湯喝了,可是沒喝完 (t¯a b˘a t¯ang h¯e le, kˇesh`ı m´ei h¯e w´an), the b˘a-sentence imposes the necessary completion of the event of drinking the soup. Therefore, the cancellation of such an implication by the sentence 可是沒喝完 (kˇesh`ı m´ei h¯e w´an/ but did not finish) leads to a grammatically incorrect sequence.
On the other hand, the sentence 他喝了湯,可是沒喝完 (t¯a h¯e le t¯ang le, kˇesh`ı m´ei h¯e w´an/ He drank the soup, but he didn't finish it.) shows that such a cancellation is possible for a non-b˘a-sentence, as it does not contain the same implication of necessary completion.
Reference: Chinese: a linguistic introduction by Chao Fen Sun