We have a similar workflow to that described above, modeling pipework in different areas and later connecting it up.
Having just spent a day getting various bits of 1 system into the correct logical system types, I stumbled across a tip I wanted to share, and that is if you delete systems to the point where they become "undefined" you can then draw a new branch off one of the defined runs, selecting the desired system type before placing the pipe, and the desired type propogates back through the system. Then you just have to delete the branch.