on 10-19-2015 3:02 PM
Hi All,
I need to find a solution for a weird requirement. Simply, I need to find the customers whom bought a list of materials (all)
I could find an easy solutions however stuck at a point.
material infoobject |
A |
B |
Sales infocube | material | quantitiy |
customer 1 | A | 10 |
customer 1 | B | 20 |
customer 2 | A | 30 |
I made a MP which include Material infoobject and sales infocube.
by making "Access Type for Result Values property to Master Data" for 0material in bEX, I could get the list of the materials which do not have a quantity. (customer 2 material B)
Multiprovider | material | quantitiy |
customer 1 | A | 10 |
customer 1 | B | 20 |
customer 2 | A | 30 |
customer 2 | B | 0 |
Once I define an exception aggregation (MIN) on quantity with 0material object and I was expecting to get below result.
Quey result | minumum quantitiy | |
customer 1 | 10 | |
customer 2 | 0 |
However, I am receving below report output.
Quey result | minumum quantitiy | |
customer 1 | 10 | |
customer 2 | 30 |
Any idea about this ?
thanks
regards
Berna
Hi Berna,
What is customer 1 and 2 here? are they info providers? or data of characteristic info object (ex: customer)?
If it is a info object, then you can try creating a new formula --> Quantity then apply exception aggregation choose minimum and reference char as "customer (info object) " . You can suppress the result of material and see if it works.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Berna,
If the characteristic(customer) is available in the Query level then you can try creating the Formula on Quantity and then define exception aggregation with the customer as ref infoobject.
since you want to have minimum W.R.T customer, suppress the result rows for material.
Let me know it this works
Regards
Vivek
Berna,
Customer will be in the output of report. So, why I am adding it as reference to aggregation, I am not sure. I need to get the minimum of material sold in customer detail. I am achieving it,
Total results in query are always aggregated against each characteristics that are defined in rows
considering below example, if both Customer and Material results are displayed , then it displays result (quantity) for each material wise in a customer and also total quantity of a customer (ex: customer 1 total result - 30 and customer 2 total result - 30)
Multiprovider | material | quantitiy |
customer 1 | A | 10 |
customer 1 | B | 20 |
customer 2 | A | 30 |
customer 2 | B | 0 |
Your requirement is to view the minimum material sold qty in each customer, so we have to change the setting of standard aggregation by using reference char as :customer.
but it does not give me "zeros" which are not comming from transactional data.
I am not sure if this is a typo, you mean to say Customer 2 is not displaying the minimum quantity as '0' ? if yes, then have you suppress the display result of Material (from the inf object bex properties -->Display-->Result Rows--> choose 'Always supress')
Material will not be in the output, only customer will.
Expected result should be here :
Quey result | minumum quantitiy | |
customer 1 | 10 | |
customer 2 | 0 |
However, I am receving below report output.
Quey result | minumum quantitiy | |
customer 1 | 10 | |
customer 2 | 30 |
I also tried your suggestion (changing ref. object to customer), it did not help.
cheers
Berna
without the material, report output would be 30 for customer1 as well (if it is only char in the rows). not sure how your query rows are defined.
Anyhow, please add material to rows and hide it (from the inf object bex properties -->Display-->Display as--> No display) and see the report output.
Hi,
yes, since each customer has at least one material with zero quantity. to avoid this, you can create a condition (column (+0) >0 ). this will hide all the materials with zero quantity
And please allow the material result rows as always display(previously we suppressed it in other scenario). you can still hide the material and allow result on it. then you should be able to get the correct values.
Hi Berna ,
Can you try creating a formula on the key figure .
Ex KF1 = KF+0 . Then apply Exception aggregation .
or
Use Minimum / Minimum of 0 and Operand function from Mathematical functions section .
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Berna,
From your above comments could understand that you have done the exception aggregation on Quantity with ref infobject as 0material. If you expect the minimum of Quantity based on the customer ,define the exception aggregation on Quantity with customer infoobject
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
85 | |
10 | |
10 | |
9 | |
6 | |
6 | |
6 | |
5 | |
4 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.