2011 Oct 10 6:50 AM
Hello all,
Attached below is my ABAP code written for BW. I want do a look up from
RESULT_PACKAGE-UCCONTRACTbut I keep getting a short dump on this because there are multiple UCCONTRACT in RESULT_PACKAGE. Can someone pleaes help me with this error?
DATA: BEGIN OF l_s_masterdata,
/BI0/OIUCCONTRACT TYPE /BI0/OIUCCONTRACT,
/BI0/OIUCPREMISE TYPE /BI0/OIUCPREMISE,
/BI0/OIUCINSTALLA TYPE /BI0/OIUCINSTALLA,
/BI0/OIUC_POD TYPE /BI0/OIUC_POD,
END OF l_s_masterdata,
l_t_masterdata LIKE HASHED TABLE OF l_s_masterdata
WITH UNIQUE KEY /BI0/OIUCCONTRACT.
* cache mapping table per data package
I keep hitting the duplicate error on this line
SELECT UCCONTRACT UCPREMISE UCINSTALLA UC_POD FROM /BIC/AZCON_D0800
INTO CORRESPONDING FIELDS OF TABLE l_t_masterdata
FOR ALL ENTRIES IN RESULT_PACKAGE
WHERE UCCONTRACT = RESULT_PACKAGE-UCCONTRACT.
* Loop through result package and assign mapped fields
LOOP AT RESULT_PACKAGE ASSIGNING <result_fields>.
READ TABLE l_t_masterdata INTO l_s_masterdata WITH TABLE KEY
/BI0/OIUCCONTRACT = <result_fields>-UCCONTRACT.
IF sy-subrc = 0.
<RESULT_FIELDS>-UCPREMISE = l_s_masterdata-/BI0/OIUCPREMISE.
<RESULT_FIELDS>-UCINSTALLA = l_s_masterdata-/BI0/OIUCINSTALLA
.
<RESULT_FIELDS>-UC_POD = l_s_masterdata-/BI0/OIUC_POD.
ELSE.
<RESULT_FIELDS>-UCPREMISE = ''.
<RESULT_FIELDS>-UCINSTALLA = ''.
<RESULT_FIELDS>-UC_POD = ''.
ENDIF.
ENDLOOP.
Hello all,
Attached below is my ABAP code written for BW. I want do a look up from
RESULT_PACKAGE-UCCONTRACTbut I keep getting a short dump on this because there are multiple UCCONTRACT in RESULT_PACKAGE. Can someone pleaes help me with this error?
DATA: BEGIN OF l_s_masterdata,
/BI0/OIUCCONTRACT TYPE /BI0/OIUCCONTRACT,
/BI0/OIUCPREMISE TYPE /BI0/OIUCPREMISE,
/BI0/OIUCINSTALLA TYPE /BI0/OIUCINSTALLA,
/BI0/OIUC_POD TYPE /BI0/OIUC_POD,
END OF l_s_masterdata,
l_t_masterdata LIKE HASHED TABLE OF l_s_masterdata
WITH UNIQUE KEY /BI0/OIUCCONTRACT.
* cache mapping table per data package
I keep hitting the duplicate error on this line
SELECT UCCONTRACT UCPREMISE UCINSTALLA UC_POD FROM /BIC/AZCON_D0800
INTO CORRESPONDING FIELDS OF TABLE l_t_masterdata
FOR ALL ENTRIES IN RESULT_PACKAGE
WHERE UCCONTRACT = RESULT_PACKAGE-UCCONTRACT.
* Loop through result package and assign mapped fields
LOOP AT RESULT_PACKAGE ASSIGNING <result_fields>.
READ TABLE l_t_masterdata INTO l_s_masterdata WITH TABLE KEY
/BI0/OIUCCONTRACT = <result_fields>-UCCONTRACT.
IF sy-subrc = 0.
<RESULT_FIELDS>-UCPREMISE = l_s_masterdata-/BI0/OIUCPREMISE.
<RESULT_FIELDS>-UCINSTALLA = l_s_masterdata-/BI0/OIUCINSTALLA
.
<RESULT_FIELDS>-UC_POD = l_s_masterdata-/BI0/OIUC_POD.
ELSE.
<RESULT_FIELDS>-UCPREMISE = ''.
<RESULT_FIELDS>-UCINSTALLA = ''.
<RESULT_FIELDS>-UC_POD = ''.
ENDIF.
ENDLOOP.
2011 Oct 10 7:22 AM
WITH UNIQUE KEY /BI0/OIUCCONTRACT.
change to WITH non UNIQUE KEY /BI0/OIUCCONTRACT.
| User | Count |
|---|---|
| 3 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |