17 Ağustos 2010

SAP CRM ITAB_DUPLICATE_KEY Error

ile Yunus KALDIRIM

BSP_WD_CMWB transactionında tanımlanan bir viewsete view eklenmesi sonrası oluşan problemin çözümü. Eğer bu view daha önce kullanılmışsa sistem uyarı mesajı veriyor fakat kaydetmeye de izin veriyor. Kaydedilince ortalık karışıyor.

Symptom:

In transaction BSP_WD_CMPWB we created a view : “pruebavista01” in the component BT115H_SLSO,but now when we tried to display this component, it gives short dump: “ITAB_DUPLICATE_KEY” .
We debuged the call transformation BSP_WD_RT_REP_RUNTIME and we found two lines with the same name of the view: BT115H_SLSO7pruebavista01, it’s possible eliminate one row ? and activate again the component ? because the table views is a hashed table.

This is part of the st22 log:

Information on where terminated:
Termination occurred in the ABAP program “CL_BSP_WD_REPOSITORY==========CP” –
in “CREATE_INSTANCE_FROM_XML”.
The main program was “BSP_WD_APPL_WB “.

In the source code you have the termination point in line 8
of the (Include) program “CL_BSP_WD_REPOSITORY==========CM003”.

method CREATE_INSTANCE_FROM_XML .

* create repository object
  create object RESULT.

* "parse" repository xml data directly into memory
--->>>  call transformation BSP_WD_RT_REP_RUNTIME
    source xml        REPOSITORY_XML
    result VIEWS    = RESULT->VIEWS
           ROOTVIEW = RESULT->INITIAL_VIEW

Symptom2: A row with the same key already exists.

“ITAB_DUPLICATE_KEY” ” ”
“CL_BSP_WD_REPOSITORY==========CP” or “CL_BSP_WD_REPOSITORY==========CM003”
“CREATE_INSTANCE_FROM_XML”

dumps:

Solution:

You can go to se80 and search for your BSP Application. In the tree on the left side you’ll find the repository.xml in folder ‘Pages with flow logic’. Double click on it, search for your duplicate view/window and just delete the appropriate row.

Search BSP component and repair or change repository.xml and activate. If you enhanced the component you have to search Zxxx component as a BSP Application.

Bu Yazılarda İlginizi Çekebilir