cancel
Showing results for 
Search instead for 
Did you mean: 

Caller 09 contains error message in SAP BW

shalaka_golde
Participant
0 Kudos

Hi,

I am trying to load data in a 3.x DSO which uses 2lis_02_itm datasource.While executing the delta load I am getting the error "Caller 09 contains error message" after some of the records are loaded.The datasource is active in R/3 as well as BW yet I tried activating it again in BW and also replicated it.I also executed the program to activate transfer structure and yet I am facing the issue.Kindly help.

Regards,

Shalaka

Accepted Solutions (0)

Answers (9)

Answers (9)

shalaka_golde
Participant
0 Kudos

LOOP AT c_t_data INTO imc02m_0itm.

       IF imc02m_0itm-bsart <> 'LP'.

         MOVE sy-tabix TO vtabix.

         SELECT SINGLE plifz webaz maabc INTO

        (imc02m_0itm-plifz,imc02m_0itm-webaz,imc02m_0itm-maabc)

                FROM marc

         WHERE matnr = imc02m_0itm-matnr

             AND werks = imc02m_0itm-werks .

         SELECT SINGLE zplp2 zplp1 verpr stprs FROM mbew

           INTO (imc02m_0itm-zplp2,imc02m_0itm-zplp1,

               imc02m_0itm-verpr,imc02m_0itm-stprs)

          WHERE matnr = imc02m_0itm-matnr AND bwkey = 'CWH1'.

         SELECT SINGLE dmbtr menge FROM mseg INTO

         (imc02m_0itm-igrval,imc02m_0itm-igrqty)

         WHERE ebeln = imc02m_0itm-ebeln AND ebelp = imc02m_0itm-ebelp

         AND bwart = '101'.

         CLEAR : lv_meins,lv_menge,lv_bprme, lv_price_qty.

         SELECT SINGLE menge meins bprme FROM ekpo INTO

          (lv_menge,lv_meins,lv_bprme)

          WHERE ebeln = imc02m_0itm-ebeln AND ebelp = imc02m_0itm-ebelp.

           IF lv_meins EQ 'EA'.

           imc02m_0itm-ipoqty = imc02m_0itm-menge .

         ELSEIF lv_meins EQ 'L'.

           imc02m_0itm-ipoqty = imc02m_0itm-menge.

         ELSEIF lv_meins EQ 'LT'.

           imc02m_0itm-ipoqty = imc02m_0itm-menge.

         ELSEIF lv_meins EQ 'K'.

           imc02m_0itm-ipoqty = imc02m_0itm-menge.

         ELSEIF lv_meins EQ 'KG'.

           imc02m_0itm-ipoqty = imc02m_0itm-menge.

         ELSEIF lv_meins EQ 'M'.

           imc02m_0itm-ipoqty = imc02m_0itm-menge / 1000.

         ELSEIF lv_meins EQ 'ML'.

           imc02m_0itm-ipoqty = imc02m_0itm-menge / 1000.

         ELSEIF lv_meins EQ 'G'.

           imc02m_0itm-ipoqty = imc02m_0itm-menge / 1000.

         ELSEIF lv_meins EQ 'GM'.

           imc02m_0itm-ipoqty = imc02m_0itm-menge / 1000.

         ELSEIF lv_meins EQ 'TO'.

           imc02m_0itm-ipoqty = imc02m_0itm-menge * 1000.

         ELSEIF lv_meins EQ 'TON'.

           imc02m_0itm-ipoqty = imc02m_0itm-menge * 1000.

         ELSE.

           imc02m_0itm-ipoqty = imc02m_0itm-menge.

         ENDIF.

 

         SELECT SINGLE eindt bedat etenr FROM eket INTO

         (imc02m_0itm-ieindt,imc02m_0itm-ibedat,imc02m_0itm-ietenr)

         WHERE ebeln = imc02m_0itm-ebeln AND ebelp = imc02m_0itm-ebelp.

         SELECT SINGLE zterm  zbd1t INTO (imc02m_0itm-zzpterm , imc02m_0itm-zzbd1t ) FROM ekko WHERE ebeln = imc02m_0itm-ebeln .

         SELECT knumv INTO ekko-knumv FROM ekko

           WHERE ebeln = imc02m_0itm-ebeln AND bstyp IN ('F', 'L')

         AND bsart IN ('NB','ZASR','ZCAP','ZCED','ZFGT','ZHPR','ZIMP','ZINT',

                       'ZNEW','ZPLN','ZPRO','ZREP','ZRMT','ZSER',

                        'ZUNC','ZWB').

           CLEAR : konv-kbetr,konv-kkurs,w_kbetr.

           SELECT SINGLE kbetr waers kkurs INTO  (konv-kbetr,konv-waers,konv-kkurs)                         

             FROM konv WHERE

              knumv = ekko-knumv AND

                kposn = imc02m_0itm-ebelp

                  AND kschl IN ('PB00','PBXX')

                  AND kbetr <> 0.

           w_kbetr = konv-kbetr * konv-kkurs.          " Subodh on 27.06.09

           imc02m_0itm-zzkkurs = konv-kkurs.

           imc02m_0itm-zzwaers = konv-waers.

           CLEAR : lv_price_qty,

                   lv_bprme1,

                   lv_meins1,

                   lv_menge1.

           MOVE : lv_bprme TO lv_bprme1,

                  lv_meins TO lv_meins1,

                  lv_menge TO lv_menge1.

 

           CALL FUNCTION 'J_1I6_UNIT_CONVERSION'

             EXPORTING

*    MATNR_IMP           = ' '

*    MEINS_IMP           = ' '

               unit_new_imp        = lv_bprme1

               unit_old_imp        = lv_meins1

               value_old_imp       = lv_menge1

            IMPORTING

              value_new_exp        = lv_price_qty

            EXCEPTIONS

              overflow            = 1

              OTHERS              = 2.

           IF sy-subrc = 1.

             MESSAGE 'Overflow Exception occured.' TYPE 'E'.

           ELSEIF sy-subrc = 2.

             MESSAGE 'Exception occured.' TYPE 'E'.

           ENDIF.

***************** end of addition *******************************************

           imc02m_0itm-ipoval = lv_price_qty * w_kbetr .

I am getting the COMPUTE_BCD_OVERFLOW exception at the last line.

Pl help

RamanKorrapati
Active Contributor
0 Kudos

Pleas try to check below note

Note 536534 - Dump COMPUTE_BCD_OVERFLOW for availability check

Regarding code, please take abap expert help and find the cause.

shalaka_golde
Participant
0 Kudos

The value of a record for PO Value field is exceeding the maximum length which is 13.

RamanKorrapati
Active Contributor
0 Kudos

Ask source team to enter the value less than the limit.

ECC field and bw info object need to have the same length. so please check them and do the changes accordingly.

shalaka_golde
Participant
0 Kudos

ECC Field length is 13 including 2 decimal places and in BI since we are using Datatype as CURR for the keyfigure,the length is 9.

RamanKorrapati
Active Contributor
0 Kudos

PO value is number. for that po value how you use curr type?

You need to use the same type/length of info object. you need to Chang the mapping of your info object at transformations.

by using BW table RSOSFIELDMAP, find the relevant info object for your ECC Field - PO Value and use it.

shalaka_golde
Participant
0 Kudos

I have found out where the problem actually is.

shalaka_golde
Participant
0 Kudos

Actually the request is a Repeat delta and I am also getting the following dump:

Req. 0000447959 in DataStore CO_OPURD must have QM status green before i

t is activated after I get the above error message.Since the delta was not properly loaded i had turned the QM status to red.

Pl help

Former Member
0 Kudos

Hi Shalaka,

This tells us that you still have the previous request in DSO with undefined status. You will need to manually set the status of that request from both DSO and PSA to red and delete it before you start the repeat delta again.. When u start the repeat delta see how many records are there in RSA7 for delta repetition in source.

Thanks,

Sathya

shalaka_golde
Participant
0 Kudos

I have set the status to red in the PSA as well as DSO before starting the update,as a result of which the request is a repeat delta.There are 68000 entries in RSA7 for the datasource for delta repetition as already mentioned

Former Member
0 Kudos

Hi,

when is the last delta load happened for this data source? Per above suggestion check in sm58 and then also check in WE05 in source and see if there are any idocs stuck with the status 30 or any other status for your job.

You may want to see if any  dumps got generated in ECC when the job is running apart from checking the job logs.

Thanks,

Sathya

shalaka_golde
Participant
0 Kudos

The last delta upload had happened on 06.12.2013.There are no idocs stuck in we05.I have also checked in sm58.

Former Member
0 Kudos

Hi,

This error mainly occurs  Idocs strucks in the source system or the problem in the datasource in the source system.  Check in SM58 of Idoc status.

Repeat the load again.....

Thanks,

Purushotham.

RamanKorrapati
Active Contributor
0 Kudos

Hi,

As prod,  ECC Tx - SM58 luws will be hanged. seek basis team help and ask them to clear the queue if any have red status.

at BW info pack, details tab, under Ttransfer idocs and trfc: if you see any idoc numbers as failed then under status bad find the idoc numbers and execute the from ecc system by using BD87.

Thanks

shalaka_golde
Participant
0 Kudos

The job at ECC end is getting cancelled with COMPUTE_BCD_OVERFLOW error

former_member182343
Active Contributor
0 Kudos

Dear shalka,

Check SAP NOTE: 1701903 and analyse the root cause for issue.

Check for any table space issue,  specially for PSA table space.

Check the proper resource available at ECC end and check for any down time taken at ECC side by coordinating with BASIS team.

Regards,

vijay

former_member182516
Active Contributor
0 Kudos

Hi Shalaka,

If the above replies did not provide any solution then check the below.

Do you have any enhancement Code for this extractor?

Check if there are any short dumps in ST22, share the dump information so that we can put some light on it.

Regards

KP

former_member182343
Active Contributor
0 Kudos

Hi,

What is the job status in ECC side, is it active still or finished.

Better activate transfer / update rules again.

- Check for authorisations.

Try to create new infopackage and trigger delta run and load data up-to PSA. Then update it to target.

shalaka_golde
Participant
0 Kudos

The job in ECC is in Cancelled state

MGrob
Active Contributor
0 Kudos

Hi

Check SM58 if you have documents stuck in trfc that are not processed. If your data is transferred but not inserted check partner profiles in we21/20 with your basis team.

hope that helps

Martin

shalaka_golde
Participant
0 Kudos

Hi Martin,

There are no documents stuck in sm58.The data also has not yet got transferred completely, as in 68000 records should get transferred but only 18000 have got transferred so far.