Thank you for your prompt response, but... This is not a case of composite Keys, 'cause VoidJob only has one ID to Job, staffID is not a key.
I have read Transfer_Configuration_File.cfm, but it does not say anything about *identity ID column cannot be used in manytoone on the same table*. After looking at PetMarket, I guess I can move the manytoone relationship from Job to JobVoid, since technically it is onetoone. However, it'd be nice if it is in Job object because then I can see if it is void or not after read. Thanks, Henry On Feb 2, 1:12 am, Mark Mandel <mark.man...@gmail.com> wrote: > http://docs.transfer-orm.com/wiki/Using_Composite_Keys.cfmhttp://docs.transfer-orm.com/wiki/Transfer_Configuration_File.cfm > > For examples:http://docs.transfer-orm.com/wiki/Example_Code.cfm#tPetmarket > > Mark > > > > On Mon, Feb 2, 2009 at 7:55 PM, henry <henryho...@gmail.com> wrote: > > > My situation is this, I have a table named Job (jobId set to be an > > identity value). It records something else that's useful, but I have > > it simplified for this post. > > > I also a table call JobVoid, that stores the datetime when the job is > > being voided (voidDateTime), by a Staff. So, a Job is void when it > > has an entry in the JobVoid table (an optional onetoone relationship). > > > <package name="Job"> > > > <object name="Job" table="Job"> > > <id name="jobId" type="numeric" generate="false" /> > > <!-- jobID column --> > > <manytoone name="Staff"> > > <link to="Staff.Staff" column="staffId"/> > > </manytoone> > > <manytoone name="Void"> > > <link to="Job.JobVoid" column="jobId"/> <!-- > > jobID column used again --> > > </manytoone> > > </object> > > > <object name="JobVoid" table="JobVoid"> > > <id name="jobId" type="numeric" /> > > <property name="voidDateTime" type="date" > > column="voidDateTime" nullable="false"/> > > <manytoone name="Staff"> > > <link to="Staff.Staff" column="staffId"/> > > </manytoone> > > </object> > > > </package> > > > o = transfer.new("Job.Job"); > > o.setStaff(transfer.get("Staff.Staff", 1)); > > > transfer.save(o); > > > This will throw [Macromedia][SQLServer JDBC Driver][SQLServer]Cannot > > insert explicit value for identity column in table 'Job' when > > IDENTITY_INSERT is set to OFF. > > > SQLSTATE 23000 > > SQL INSERT INTO Job(staffId,jobId) VALUES ( (param 1) , (param > > 2)); select SCOPE_IDENTITY() as id > > > However, if I comment out the manytoone relationship to JobVoid in > > Job, the save operation goes through flawlessly. > > > So, is there a way to make this work in Transfer w/ changing the DB > > structure? > > > If "ID column is used in manytoone relationship" is not supported, do > > you think Transfer should warn the user by throwing an exception upon > > validating the xml? > > > Thanks, > > Henry > > -- > E: mark.man...@gmail.com > W:www.compoundtheory.com --~--~---------~--~----~------------~-------~--~----~ Before posting questions to the group please read: http://groups.google.com/group/transfer-dev/web/how-to-ask-support-questions-on-transfer You received this message because you are subscribed to the Google Groups "transfer-dev" group. To post to this group, send email to transfer-dev@googlegroups.com To unsubscribe from this group, send email to transfer-dev-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/transfer-dev?hl=en -~----------~----~----~----~------~----~------~--~---