In this sentence : "By this time next year,he.......(work) here for 7 years. Do we say : he will have worked or will have been working?
This tense is formed with the modal will plus the modal have plus been plus the present participle of the verb (with an -ing ending). So, it is more correct to say:
By this time next year, he will have been working here for 7 years.
Generally, progressive forms occur only with what are called dynamic verbs and not with stative verbs.
Actually in this case both forms are acceptable but the future perfect continuous would be used if you wish to indicate that it is more likely that he will still be working there and will continue to do so. If you use the future perfect it indicates that he will have already worked there up until that point in time in the future but it is not really clear whether or not he is still working there or if he is going to continue working there, or is about to quit; maybe retire.