>While I haven't had the time to do so yet (have'nt had the need
yet, I need to come up with some sort of mechanism to retain cursor states - maybe a state object with the corresponding cursor state properties and SetState() / GetState() methods.
>
>Don't know yet - just thinking out loud.
The kind of mechanism you are looking for is addressed with a Session preservation object. Developers of web applications are familiar with the concept- take a session identifier (from a cookie, an IP address, whatever) and use it to associate a 'hit' with all previous activity. This is how web shopping carts work:
You hit a website, and the server gives your browser a cookie. The cookie is nothing more than key with a unique value that your browser will automatically send with every subsequent hit.
-On subsequent hits, the server uses the cookie value to look you up in an external data store, and 'restore state'.
Generally, stateless business objects don;t need this type of thing, the client knows who he is, and gives the server that information when he makes the request. An object designed to operate statelessly takes all the information it needs to do business in the form of parameters (there are exceptions, of course).
oPurchase.AddOrder(lnCustomerID, lnSalesAgentID, laProductCodes)
This single method call tells the server everything it needs to know.
Erik Moore
Clientelligence