Hover over the header for the %-complete column: the definition pops up: “100 * Actual Duration / Duration”. Thus, a 10 day task that started 5 workdays ago is 50% complete, even if nothing has been accomplished. So, don’t update with %-complete. Updating with %-complete leaves the task Finish date unchanged, as well as it’s critical successors, and it leaves an incomplete part of a task in the past or progress appearing the future.
When a resource reports %-complete, smile and put it in a custom column, then ask for Remaining Work or Remaining Duration. Nice to have is Actual Start. Microsoft Project will calculate the %-complete. Comparing the resource’s “%-complete” with the value calculated by Microsoft Project can give an indication if the resource believes their accomplishments are ahead or behind the task’s schedule.
Updating with %-complete is the misconception most prevalent in project management, I believe.