Sizo,
I am confused by your requirement. What data do you need to track? It was my understanding that you need to pass up a full collection of data for each button press, correct? You do not need to create a copy of your data in the temporary store as you called it. Just point each button to a transaction with an update step on it. DO NOT set it to merge or the data will get overwritten with each button press. In the transactions, point to the parent object and add a property for the collection you want to pass up. Add other properties for the start and end times or whatever else. You can even do all the buttons with a single transaction if you don't need to know what button was pressed. This is the easy way to accomplish your requirement, but the data will go up separately and will run an update step for each button press.
Negative impact on performance? I don't think so, depending on your device. WinCE might start to drag if you have lots of collection data queued up this way to be sent up, but the other devices should be fine.
You cannot easily accomplish your last point without completely changing things around. These snapshots of transactional data are all separate from one another. They cannot be sent up and handled in a single update step. To do that, you would need to keep all the data around in a temporary collection, copying rows to this collection with each button press. You would need to key things so the data objects remain unique, yet somehow keep them grouped maybe with a common timestamp or something in another property for matching up later on in your java code. AFter transmit, you would then need to clear the temp collection that was just sent up. This is all possible, but really not how Agentry was designed to be used. I would recommend using the first approach.
Jason Latko - Senior Product Developer at SAP