cancel
Showing results for 
Search instead for 
Did you mean: 

Problem when sync deliverys

Former Member
0 Kudos

I have received error after upgrade to PL12. Anyone know how to fix this ?


NPBase - more than one object found.
   at netpoint.api.NPBase.PopulateFromReader(String sql, DataParameters dp)
   at netpoint.api.NPBase.Fetch(String[] keys)
   at netpoint.api.commerce.NPOrderDetail..ctor(String synchid, NPConnection conn)
   at NetPoint.SynchSBO.SBOObjects.SBODelivery.SBOToNetPoint(SBOQueueObject qData)
   at NetPoint.SynchSBO.SynchObjectBase.Synch()

Greg.

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Greg,

This happens when the NPOrderDetail constructor finds multiple records that match the synch id that was passed in from the delivery synch.

Basically, there are two orderdetail records mapped to the same RDR1 record in B1.

You can find the duplicates with the following query:


select count(od.synchid), od.synchid
from orderdetail od
inner join ordermaster om on om.orderid = od.orderid and om.Carttype = 'O'
group by od.synchid
having count(od.synchid) > 1

You might have duplicate orders in WT. If the query returns only a few results, you can fix the data manually. If there are a number of these, it may be due a an old bug and upgrade scripts that failed to run--or failed to successfully complete.

Former Member
0 Kudos

Hi Shane

I check and i have about 600 of them do you now how i can fix it using some script.

Greg.

Former Member
0 Kudos

Unfortunately, the script to fix this is extremely complicated and requires a small program to justify the data between B1 and WT.

Did you have a problem during the upgrade--a timeout maybe?

We might be able to break it down into a few steps that we could do manually, but the more we do that, the more room there is for the introduction of error.

This may need to be resolved by SAP support.

Former Member
0 Kudos

Hi Shane thanks for quick replay

No just upgrade is not completed successfully.

do i need to delete only duplicated rows or something more, if only this i can try to write some SQL code to fix it it shouldn't be so difficult. What you suggest, my customer is confused because of this and debit card problem (not working in 11) i have fix from support. You know that to fix this with support take few days ...

thanks

Greg.

Former Member
0 Kudos

Deleting the duplicated orderdetail rows should be sufficient. But you will likely run into dependancy problems. You will also need to delete the payment attatched to the row and the delivery.

You should definitely examine the data first to guarantee that the data is in fact duplicate. The query I posted only tested for the same synchid. You need to confirm that everything else on the two records is also duplicate.

Alternately, you could delete all order detail in WT from the orders with duplicates. The B1->WT synch will correctly readd them all. If you do this, you must make sure these orders are in the B1 queue.

The query would take me a bit of time to write, if you are comfortable with SQL, you should be able to figure it out. Just be careful and make sure you test a couple one at a time before running the whole thing.

You can probably also limit this by paying attention to the the ones that are throwing errors in the synch. If this is a small number, you can probably do them all manually.

Answers (1)

Answers (1)

Former Member
0 Kudos

Thanks Shane

I sorted out problem and it look fine now.

Greg.