cancel
Showing results for 
Search instead for 
Did you mean: 

Filtering based on compounded characteristic

marco_simon2
Participant
0 Kudos

Hi experts,

I've got the requirement that I need to filter a report (globally)

based on a variable using a compounded characteristic.

An example:

The report shall be restrictable (via variable) based on 0mat_plant (material, compounded to the plant).

In the BEx Query Designer I've got the possibility to restrict staticly to compounded values (eg. 01/333333).

In the BEx Analyzer (after having submitted the variable-screen) the user has got the possiblity to restrict
based on compounded values (e.g. 01/333333 + 01/444444) as well.

But as soon as I use a variable, it seems as if I could not use compoundet values anymore, but only the
materialnumber. This means, that I do not have the chance to select

material 333333 from plant 01 + material 444444 from plant 01 and plant 02

while excluding 333333 from plant 02 at the same moment.

Did I get that right?

Is this a known restriction of variables?

Is there any common work-around?

(In the end my scenario is simplified. What I need to do is filling the compounded variable using a customer-exit - but I cannot see
a way to pass anything more than the material-part of the compound).

Accepted Solutions (1)

Accepted Solutions (1)

former_member182470
Active Contributor
0 Kudos

There is a wonderful document in BEx forum titled " Effect of Compounding Infoobject on Bex Selection Screen". I feel it will help you to achieve your requirement. Please read it..

marco_simon2
Participant
0 Kudos

Hi Suman,

very good hint, but it unfortunately does not bring me forward,

since I've got a similar problem to the one manish kumar mentioned in the comments.

In the meanwhile I found another thread which describes my problem even better:

http://scn.sap.com/thread/1459598

The point I'm hesitating with is:

The the value-helper shows values for compounded objects repeatedly if they have a compount with more than one value. (E.g. 01/333333 and 02/333333) would be displayed as as:

[333333] SomeMaterial

[333333] SomeMaterial

So the compounded key is just discarded and cannot be used for a clean selection anymore.

(While this isn't the case in the QD and in BEx after the varible-screen).

The effect from this is, that it isn't possible to populate the variable with a complete compounded key. As written in the above mentioned thread:

0010            12345678       <...>

0020            12345678       <...>

0010            87654321       <...>

0020            87654321       <...>

I wanna create a variable (i.e. multiselection) to select the first and the last value. By defalut, a variable on 0ACTIVITY let me select just 0010 or 0020 and on 0NETWORK a variable let me select 12345678 or 87654321: two separated variables gives me ALL 4 records

I'm not so keen on the mentioned workaround using an additonal artifical char in the InfoProvider, but I'll try to workaround the problem by adding the full compounded key as an artificial attribute of the original characteristic 0mat_plant.

cornelia_lezoch
Active Contributor
0 Kudos

Hi Marco,

as far as I know you need to create 2 variable, one for plant and one for material.

if you select plant first, in F4 help for material it should show only all material for the selected plant.

regards

Cornelia

former_member182470
Active Contributor
0 Kudos

Hi Cornelia,

That's exactly was mentioned in my proposed document in my first reply.

Regards,

Suman

marco_simon2
Participant
0 Kudos

Hi Cornelia,

hi Suman,

that is definetly correct, but is only part of the riddle.
The usage of 2 variables does not allow you to select cleanly in all cases.

As already described above:

If you've got the records

Plant     Material

01          333333

01          444444

02          333333

02          444444

and wanna see only 01/333333 and 02/333333 then the option with using 2 variables will not solve the problem. You'd have to select plant=01+02 and material=333333+444444, which would lead to a selection of all 4 records instead of 2. This are different selections!

I evaluated the use of a dummy-attribute yesterday and I think that this way covers my needs (since I fill the variable via user-exit). The idea is as follows:

0mat_plant (technical key = 333333) has plant-dependant master-data.

This means that the InfoObject-key itself is not plant-dependant, but it's masterdata.

I added a dummy-attribute ZMatPlant to the masterdata of 0mat_plant which contains the concatenated key of plant+material (in the end this is a copy of the md-table-key) e.g. 01333333.

This allows me to use this new attribute as a navigational attiribute in queries - and I can create variables for this nav.attribute. This allows me to provide the full key of the plant/mat-values I wanna really see in the report.

Best regards,

  Marco

former_member182470
Active Contributor
0 Kudos

No. You are misunderstanding the blog. When you choose 33333 in Material variable, the F4 help of Plant Variable will show only 01 and 02. Because same material is present in two plants. Both variables will have cascading dependency. Please go through the blog thoroughly.

cornelia_lezoch
Active Contributor
0 Kudos

correct -this would have been also my suggestion.

cornelia_lezoch
Active Contributor
0 Kudos

I didn´t read the document 🙂

marco_simon2
Participant
0 Kudos

Hi Suman,

I fully understand that - but I cannot see how that helps for my case.

I want to select 01/333333 and 02/444444.

If I enter plant=01 I won't get 02/444444

If I enter plant=02 I won't get 01/333333

If I enter material (by the way: material is imho not part of the blog, but plant and MatPlant)

material=333333 I won't get 02/444444

material=444444 I won't get 01/333333

I'm quite sure that I understood the blog and the system behaviour, but maybe you could gimme a step-by-step description how to select 01/333333 and 02/444444 cleanly.

cornelia_lezoch
Active Contributor
0 Kudos

only solution is what you did - create a char that is concatenated instead of compounded

former_member182470
Active Contributor
0 Kudos

Hi Simon,

Looks to me same as Cornelia thought. Compounding doesn't help in your requirement.

Regards,

SUman

Answers (0)