Business objects are the base of workflows, they describe what a workflow is about and no workflow can be processed without a business object. A business object or business-relevant object is effectively a Purchase Order or an Invoice, actual documents on the SAP system which can be represented as a Business Object in workflow.
So what is a Business Object ? Does the Business Object representing a Purchase order contain any Purchase order data ? Is it a copy of an actual Purchase Order ? What would happen if the Business object Puchase order is changed, does the actual order also get changed ? Here's how it works: the Business Object represents a Purchase Order. It is not an actual order, it just represents one. So really all that is required is a link to the actual Purchase order, which would be the PO number. A business object has attributes (and key fields) which can hold any information on the Purchase order, so in effect all data could be held on the database (EKKO
, EKPO
, etc) as well as the Business Object - but - the developer would have to ensure the information on the Business object and real live object stays the same. The easiest way to avoid problems ? Don't copy information into the Business object. Fetch it from the original source - when required.
The Business object represents a real-life object. This means it's not the same. It is only a representation.