Topic
  • 1 reply
  • Latest Post - ‏2012-07-06T10:02:20Z by SystemAdmin
SystemAdmin
SystemAdmin
345 Posts

Pinned topic LastUpdateDateException if referencing extension in unconventional context

‏2012-07-05T19:03:21Z |
Here's an illustration of the issue I am experiencing. Let's say I've got a custom business proxy with transaction called 'someNewTxn', and an existing data extension on Product with a few attributes which I won't mention here. The unique thing about this new transaction is that there is a tag that wraps the ProductBObj as follows:

<TCRMTxType>someNewTxn</TCRMTxType>
<TCRMTxObject>WrapperBObj</TCRMTxObject>
<TCRMObject>
<WrapperBObj>
<ProductBObj>...</ProductBObj>
</WrapperBObj>
</TCRMObject>

This code works exactly as expected, succesfully calls the appropriate internal txns, etc... However as soon as I put the data extension attributes in place, as in:

<TCRMTxType>someNewTxn</TCRMTxType>
<TCRMTxObject>WrapperBObj</TCRMTxObject>
<TCRMObject>
<WrapperBObj>
<ProductBObj>
<TCRMExtension>...</TCRMExtension>
...
</ProductBObj>
</WrapperBObj>
</TCRMObject>

I am getting a LastUpdateDataException, seemingly because the last update date of the extension object doesn't match that of the containing object. So the question is, how do I get these dates in synch? I suspect I just need to wire up WrapperBObj with some of the metadata of the extension and am working on trying that now. Any help would be greatly appreciated... (ps. I am aware of the transaction aliasing capabilities of 9.0.2 as well, so may give that a try as well, downside being I'll need to remove the inner ProductBObj tags which is not desireable...).

Thanks in advance,
  • Lee
Updated on 2012-07-06T10:02:20Z at 2012-07-06T10:02:20Z by SystemAdmin
  • SystemAdmin
    SystemAdmin
    345 Posts

    Re: LastUpdateDateException if referencing extension in unconventional context

    ‏2012-07-06T10:02:20Z  
    Hi Lee,

    There isn't any tie up between the last update date of the extension (if it has its own table) and the last update date of any other object involved in the transaction, unless you have configured the server to synchronize the last update dates (/IBM/DWLCommonServices/SynchronizeTransactionTime/enabled).

    If the extension fields are in the product table, then it has the same last update date as product.

    The LastUpdateException usually means that the last update date in the request didn't match what was in the database. It can also be produced if the database update fails for any other unexpected reason.

    I'd suggest debugging the data extension updateRecord method, check it isn't being invoked twice and that the last update date value is what you expect.

    Hope that helps, Catherine.