Ok, thanks - I see the problem. The save() method in the cursor only  
checks the _mementos for the PK, not the _newRecords attribute. I'll  
fix it when I get back to my hotel.

-- Ed

Sent from my iPhone, so please excuse any top-posting.

On Jan 9, 2008, at 12:56 PM, Paul McNett <[EMAIL PROTECTED]> wrote:

> Ed Leafe wrote:
>
>> I'm in the middle of training here at Rackspace, so the only Internet
>> access I have is my phone. Can you tell me when dCursorMixin.new() is
>> called, where that record gets added into the _mementos attribute?
>
> It doesn't, because it is too early - cursor doesn't know what the pk
> value is yet. When you call biz.new() though, it calls
> cursor.setNewFlag() when appropriate, which adds it to the _newRecords
> attribute.
>
> Only when there's an actual change to a field value will the original
> information get added to _mementos. This happens in setFieldVal().
>
> Here's the code for dCursorMixin.setNewFlag():
>         def setNewFlag(self):
>                 """Set the current record to be flagged as a new  
> record.
>
>                 dBizobj will automatically call this method as
> appropriate, but if you are
>                 using dCursor without a proxy dBizobj, you'll need to
> manually call this
>                 method after cursor.new(), and (if applicable) after
> cursor.genTempAutoPK().
>                 For example:
>                         cursor.new()
>                         cursor.genTempAutoPK()
>                         cursor.setNewFlag()
>                 """
>                 if self.KeyField:
>                         pk = self.getPK()
>                         self._newRecords[pk] = None
>
> Paul
>
>  --
> http://paulmcnett.com
>
>
[excessive quoting removed by server]

_______________________________________________
Post Messages to: [email protected]
Subscription Maintenance: http://leafe.com/mailman/listinfo/dabo-users
Searchable Archives: http://leafe.com/archives/search/dabo-users
This message: http://leafe.com/archives/byMID/dabo-users/[EMAIL PROTECTED]

Reply via email to