The child table for “Breaks” sounds right, assuming you want to keep track of the employee’s history of breaks
The value of the “UnavailableFlag” field in the parent table could computed based on the contents of the most recent record in the Breaks table. If the “Break” is still underway, then the Employee is “unavailable”.
If there are a lot of “Breaks” and you don’t need to track them forever, you may want to “garbage collect” them by deleting old “Breaks” records periodically. You could do that using a Report that runs once a week, or once a month, or whatever. The Report “Action” could delete old “Breaks” records.