cancel
Showing results for 
Search instead for 
Did you mean: 

CO extractors: Table COOI_PI not filled

Former Member
0 Kudos

Dear friends,

I'm working with the datasource 0CO_OM_WBS_7 (WBS Elements: Commitment

Line Items). I'm using delta extraction. I read this link:

http://help.sap.com/saphelp_nw70/helpdata/en/8d/1f383fe58d5900e10000000a114084/frameset.htm

"Deleted records are a special case. If records are deleted in R/3, they are not extracted. For this reason, the records are not deleted in the BW. To solve this problem, after the first delta init is executed all deleted commitments line items are written to a special R/3 table (COOI_PI), and this table is extracted as well."

I executed the delta init but after that if i make changes to a purchase requisition (e.g. i change the account assignment: i move from a wbs element to a network) the deletion record is not generated in table COOI_PI. If i test the extraction with RSA3 i don't get the deleted record because it's no more in table COOI with reference to a wbs element (it is referenced to a network). As a result, deleted record is not in table COOI nor in table COOI_PI. The purchase requisition in the ODS gets obsolete.

This is happening also if i leave the purchase requisition without an account assignent.

The difference is that in the first scenario the purchase requisiton exists in table COOI but under a network and in the second scenario there is no record at all in table COOI.

Both scenarios are not registered in the COOI_PI.

When i made the delta init an index 971 is created automatilly in tables COOI_PI and COOI. Also 3 entries are created in table BWOM_SETTINGS:

OLTPSOURCE PARAM_NAME PARAM_VALUE

COOI INDXNAME 917

COOI_PI DAYS_REORG 380

COOI_PI LAST_REORG 20080714

I read the notes 974415, 1174833 but the attached corrections were already implemented.

Do u have an idea about when table COOI_PI is filled?. Are there any conditions to execute the delta init so table COOI_PI starts to work?.

I'd appreciate your help.

Jose Maria

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

need to add a new record into BWOM_SETTINGS or update the PARAM_VALUE

OLTPSOURCE PARAM_NAME PARAM_VALUE

-


OBLIGODELT PI_RELEASE_AT_LEAST_PI2002_1

Because ECC6 ME23N will excute the Function " K_OPEN_ITEM_POST " and the function will call the follow form.

FORM vb_cooi_pi_insert TABLES t_cooi_del structure COOI

using value(id_timestmp).

CONSTANTS:

lc_param_name TYPE field VALUE 'OBLIGODELT',

lc_param_value TYPE char40

VALUE 'PI_RELEASE_AT_LEAST_PI2002_1',

lc_cooi_pi TYPE tabname VALUE 'COOI_PI'.

DATA:

ld_param_value TYPE char40.

-----CHECK: BW extraction of obligo line items active?--


CALL FUNCTION 'REUT_GET_BWOM_SETTINGS'

EXPORTING

id_param_name = lc_param_name

IMPORTING

ed_value = ld_param_value

EXCEPTIONS

bw_pi_not_exist = 1

OTHERS = 2.

******************************************************

IF sy-subrc <> 0 OR

ld_param_value NE lc_param_value.

  • No: EXIT.

EXIT.

ENDIF.

  • Set time stamp

LOOP AT t_cooi_del.

MOVE id_timestmp TO t_cooi_del-timestmp.

MODIFY t_cooi_del.

ENDLOOP.

--


Write: DELETE protocol for BW extraction--

  • delete (note 974415):

  • INSERT (lc_cooi_pi) FROM TABLE t_cooi_del ACCEPTING DUPLICATE KEYS.

MODIFY (lc_cooi_pi) FROM TABLE t_cooi_del. "974415

--


Abbruch Delete--

  • IF sy-subrc NE 0.

  • RAISE e_delete_cooi.

  • ENDIF.

*

ENDFORM.

suolin.rong&g-m-a-i-l.com

MSN: simon123_rong&h-o-t-m-a-i-l.com

Edited by: yarchen wen on Aug 13, 2009 11:16 AM

Former Member
0 Kudos

Thanks Yarchen!! Problem solved!

José Marí

Answers (0)