cancel
Showing results for 
Search instead for 
Did you mean: 

2LIS_02_SCL transformation logic

Former Member
0 Kudos

Hi Guys,

There is a standard SAP DSO 0PUR_DS03 which is getting data from 2LIS_02_SCL.

In the transformation start routine, I could see alogic which is barring some records to DSO. The logic says:

LOOP AT SOURCE_PACKAGE into wa_package

where ( BWVORG NE 001 AND

BWVORG NE 002 AND

BWVORG NE 011 AND

BWVORG NE 012 AND

BWVORG NE 021 AND

BWVORG NE 022 ) OR

umrez EQ 0 OR

umren EQ 0.

DELETE TABLE SOURCE_PACKAGE from wa_package.

clear wa_package.

ENDLOOP.

I want to understand what is the purpose behind this logic. Any documentation on the same?

Regards,

Gaurav

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Kanungo,

This field BWVORG (SAP BW - Transaction Key) you will find majorly in all the LO datasources . The value in this field will determine how other fields in the datasource gets populated .

You can check the below link :

http://help.sap.com/saphelp_sm32/helpdata/en/8d/bc383fe58d5900e10000000a114084/content.htm

The above link contains the explanation for the field BWVORG which exists in 2lis_02_scl and how the value of other keyfigures are determined based on the value of this field .

Also check the note number : 684465 .

This note has the explanation as to what values BWVORG will have, depending on different document types .

Also you can see and maintain * SAP BW - Transaction Key* using the maintenance view : V_TMCLVBW .

This maintenance view consists of two tables : TMCLVBW (Transaction Key for SAP BW)

TMCLVBWT (Texts for Transaction Key for SAP BW

In the above tables you will find SAP BW - Transaction Key entries for different application components of LO.

Hope the above reply was helpful.

Thanks & Regards,

Ashutosh Singh

Answers (2)

Answers (2)

Former Member
0 Kudos

I am trying to understand why do you need to LOOP?

You can simply write it as:

DELETE SOURCE_PACKAGE WHERE

( BWVORG NE 001 AND

BWVORG NE 002 AND

BWVORG NE 011 AND

BWVORG NE 012 AND

BWVORG NE 021 AND

BWVORG NE 022 ) OR

umrez EQ 0 OR

umren EQ 0.

BWVORG = 001 --> PO Creation

BWVORG = 002, 022 --> Goods Receipt

BWVORG = 011, 012 --> STO

BWVORG = 021 (Not sure)

UMREZ = Numerator

UMREN = Denominator

Numerator & Denominator tell us basically ratios between Units of Measure,

i.e. what is the ratio of 1 Carton to Each (each piece). For ex. 1 Carton may hold 10 pieces of the given item.

Regards

Vishal

Former Member
0 Kudos

Hi Vishal,

This is a part of standard SAP code. My idea is that those records are getting deleted where the value is other than the mentioned values.

My idea behind this question was to know about some detailed documentation regarding how these keys are assigned and why this code is deleting some specific records.

Regards,

Gaurav

Former Member
0 Kudos

Well, you are right.

The records do get deleted if they do not satisfy the above condition.

The BW Transaction Key is assigned in R/3. However, the assignment has to be defined in R/3 prior to its use.

Then, whenever a transaction takes place, the system automatically assigns these keys.

Why is the code deleting specific records?

This is the documentation available from SAP:

http://help.sap.com/saphelp_sm32/helpdata/en/bb/e99a3d35cf6f53e10000000a114084/content.htm

Former Member
0 Kudos

Hi,

As rightly pointed out, the BW Transaction Keys (BWVORG) tells is used to inform BW as to what is the quantity is for.

Is it for normal PO quantity (BWVORG = 001) or is it for Stock transport order (BWVORG = 011) or is it a Goods Receipt against normal PO ((BWVORG = 002).

Therefore these keys help recognize the kind of data coming in.

In your case, the routine just accepts only those records where it is either a Purchasing order or a Goods receipt. Also it discards those records where the counter or denominator for the unit conversion factor is 0.