Thursday 2 November 2006

Bug in Axpata V3 SP4 "Record already exists"

Again whilst doing a customer implementation I came across a bug in Axapta SP4 and SP5 which will be corrected I am told in SP6.

The bug can be reproduced by the following means:

Go to Accounts Payable / Periodic / Purchase Order Update / any of the options

Do not select any orders just change the Quantity Parameters back and forth, after 2 goes you will get a message about a record not being able to be updated as it already exists.

The cause of the bug is the addition in the PurchEditLines Form on the PurchParmUpdate datasource field SpecQty method modified where a call is made to element.calctotals()

This method found in the main methods of the form forces a write of the purchParmTable which as the screen is empty creates an empty record and then proceeds when the field above is changed to try and do so a second time which causes the error.

I have 2 possible solutions,

1 Check before if PurchParmTable exists and only call CalcTrans if it does, or

2 check in calctrans if a recid is present and only write if it is.

Hope this can be of help to anyone needing to resolve the issue somewhere else.

/Sven

No comments: