All the object related to one development should be saved in one request, Eg. A development is having program, table, fields, view, structure etc… All these objects are the part of one development so they have to be in one request. If by mistake you have saved one object in different request then you have the option of merging that separated objects task into the main request through SE09.. Another option is to create a TOC and include both the tasks into that TOC.. But one should have a good practice of keeping the related objects of one development into one request..  TOC should not be used for merging the request for avoiding such mistakes.
The beauty with Transport of Copy is, it dies in the next target system. Let's say I have three system landscape for my ECC system: DA1 -> QA1 -> PA1. If you create a workbench request in DA1 system and release it, it goes to import buffer of QA1. Once imported in QA1, transport is now available in the import buffer of PA1 for import in PA1. But, if you create a Transport of Copy for the same transport in DA1 and release it, it will be in import queue of QA1. However, when you import this transport to QA1 it does not go to the import buffer of PA1. 
 
 
Serkan AKKAVAK
Computer Engineer
ABAP Developer & SAP S/4 HANA Logistics Team Lead
Contact : serkurumsal@yandex.com