When i make a sub assembly flexible to place parts where i want, the same assembly moves back to the original position when opened. (as shown in attachment b)
That's just how they work. If you want those parts to stay in place in the sub-assembly file, then you will need to position them in the sub-assembly file.
Retrieving data ...