when i have done that ,i shall have done all i was supposed to do

问题描述:

when i have done that ,i shall have done all i was supposed to do
请问这里为什么用将来完成时

这个句子是对的:
when 的时间状语从句中可用现在完成时表将来的,但较少使用.
通常我们使用一般现在时表将来,
如:when you finish it ,you can go.
也可以是: when you have finished it,you can go.
因此句意是:当我做完那个,我将已经我应该做的.(主句是将来时,又有已经的意思)