Hi Peter,
Your solution is the way to go if you are merging data into existing
rows. If you are doing a copy of the tmp table to the target table,
always creating new rows, you may do a straight DataRow copy from one
table to another bypassing object creation.
org.apache.cayenne.access.DataPort does something similar - you can
borrow some code from "processInsert" method.
Andrus
On Dec 14, 2006, at 1:56 PM, Peter Schröder wrote:
hi,
first of all, thank you for the fast and helpfull komments in this
mailing-list.
i have another question concerning context.objectFromDataRow():
as you said, it populates the new data through the datacontext if
you use refresh=true. is there a possibility to advise cayenne to
store the "fresh" data into the database? i need this, because i
get the datarow from a tmp-table with the same structure as the
master table.
my workaround is, that i "clean" the object and put all data in it
back from the datarow and commit afterwards... i think there must
be a smarter solution to this.
kind regards
peter
-----Ursprüngliche Nachricht-----
Von: Andrus Adamchik [mailto:[EMAIL PROTECTED]
Gesendet: Montag, 11. Dezember 2006 18:12
An: [email protected]
Betreff: Re: objectFromDataRow with refresh
Hi,
It refreshes any previously cached version of the object with the
data stored in the passed data row.
Andrus
On Dec 11, 2006, at 5:31 PM, Peter Schröder wrote:
hi,
i am wondering what the refresh param of context.objectFromDataRow
does exactly?
does it refresh the data of the object in the context, which i can
commit with context.commitChanges,
or does it fetch refreshed data for the object from the database?
kind regards
peter