We use CircuitWorks. Our PCB's are laid out by an outside contractor using PCAD. It seems to work very well and (at least with PCAD) gives us bi-directional data transfer. So we can move components or change the board outline, and send them back. CircuitWorks populates the boards with actual SolidWorks library models or automatically generates component volumes or a mixture. The volumes are a footprint with a Z height. This is great for common components like diodes, resistors, etc. We only accurately model the stuff where we care about the detailed shape. For most purposes there does not seem to be any point in modelling the other stuff perfectly and it keeps the file sizes smaller. We also use these Solidworks PWB assemblies in CosmosWorks/Flow, etc. for vibration and thermal analysis. In that case having an accurate placement, footprint, height, etc. is really great. Is it also great for absolutely being sure you have physical clearance in your assemblies for every component on the board.
We actually start out with the board outline model and any components (especially connectors) that we need to place for mechanical reasons and send the contractor the file. They then take if from there through layout and send a file back for us to update our model. It may go around a couple of times before everything is finalized so having this capability is a real time saver in many ways.
We use this quite happily with SmarTeam PDM and it functions fine. As with every new piece of software, it took a little learning to find the best options for our needs, but not much pain compared to most things. If you need more information, I could put you in touch with our resident expert.
One thing to bear in mind is that the PC layout world is essentially flatland (2D). So in CircuitWorks you have to have side 1 of your boards and the relative component and board assembly orientations in Front view. (Remember for file import and export basic mathematical coordinates do not change even if you rename the Top/Front/Right views even though SolidWorks knows internally about these things. So even if you rename Top to Front inside Solidworks, it will still export as CPL 1 or "top view" orientation.) Also the origin of the boards model must be your PC layout 0,0.
Most of these issues are more than likely similar in the other systems.
I was - and he did. So at least I didn't get coal.....
OK, OK, It's a reference to my holiday sig. "Be naughty - Save Santa a trip..."