When you specify a Complete Date for a task, the task is considered complete/closed from a scheduling perspective.
Once all leaf tasks have a complete date, the parent task gets a complete date automatically that is equal to the max complete date of the children. Additionally, when a task gets a complete date, Hours to Complete will be set to zero. For a task with children to have a complete date, all active child tasks must have a complete date.
Depending on the dependency type, when a predecessor task has a Complete Date, the successor task may be automatically rescheduled based on the Complete Date.