Each engine has its own set of jobs that are not visible to other engines in the same station (with the exception of those stored in the yard). There is not a way to refresh jobs while a train is at a station. Jobs are refreshed for a train each time it enters a new station.
Cargo brought from one station to another can be laid over in the yard. Each station starts out with 5 yard slots and can be expanded with bux.
Cargo cannot be laid over in it's start city.
So for example if you take a car destined for Rome from Munich to Berlin and place it in the yard and later take it back to Munich (on the same train/track or another) you wont be able to put it in the Munich yard. You can pass back through the original city to get to the destination but you cannot unload cargo into the yard at its original city. If you unload an item in it's start city it will be lost when that train leaves the station.