Help - Virtual Key Figure
Hi All,
I have created a Virtual Key Figure : "Product Price (ZPRICE)", this infoobject has 0CURRENCY associated.
My question is : Do i have to populated 0CURRENCY in the Virtual Key Figure Logic?
Please, i will appreciate a quick example of Virtual Key Figure with currency object associated.
THANKS IN ADVANCED
Hi,
Do you have any other key figure exists in data target with reference 0currency? If yes then no need to populate it.
Thanks.
Similar Messages
-
Help needed for Virtual Key Figure BADI
I am trying to implement Virtual Key Figures via BADI.
Here is what I have done
Define Method
method IF_EX_RSR_OLAP_BADI~DEFINE.
DATA: l_s_chanm TYPE rrke_s_chanm,
l_kyfnm TYPE rsd_kyfnm.
FIELD-SYMBOLS:
<l_s_chanm> TYPE rrke_s_chanm.
Insert Code
CASE i_s_rkb1d-infocube.
WHEN 'ZMCOPA_02'.
l_s_chanm-chanm = '0CUSTOMER'.
l_s_chanm-mode = rrke_c_mode-read.
APPEND l_s_chanm TO c_t_chanm.
APPEND 'ZCPRC_FLG' TO c_t_kyfnm.
APPEND 'ZRTNS_PRC' TO c_t_kyfnm.
ENDCASE.
ENDMETHOD. "if_ex_rsr_olap_badi~define
Compute Method
method IF_EX_RSR_OLAP_BADI~COMPUTE.
FIELD-SYMBOLS <fs_ZRTNS_PRC> TYPE ANY.
FIELD-SYMBOLS <fs_ZCPRC_FLG> TYPE ANY.
FIELD-SYMBOLS <fs_0customer> TYPE ANY.
DATA: l_zv_20dv TYPE curr09.
ASSIGN COMPONENT p_kyf_ZRTNS_PRC OF STRUCTURE c_s_data
TO <fs_ZCPRC_FLG>.
ASSIGN COMPONENT p_kyf_ZCPRC_FLG OF STRUCTURE c_s_data
TO <fs_ZCPRC_FLG>.
ASSIGN COMPONENT p_cha_0customer OF STRUCTURE c_s_data
TO <fs_0customer>.
DATA: l_zrtns_prc TYPE /bic/pzcust_prc-/BIC/ZRTNS_PRC.
DATA: lt_zcust_prc TYPE TABLE OF /bic/pzcust_prc.
DATA: ls_zcust_prc TYPE /bic/pzcust_prc.
IF NOT p_cha_0customer IS INITIAL.
<fs_0customer> =
ENDIF.
SELECT SINGLE *
INTO ls_zcust_prc
FROM /bic/pzcust_prc
WHERE /bic/zcust_prc = <fs_0customer>.
IF sy-subrc = 0.
<fs_ZCPRC_FLG> = 1.
<fs_ZRTNS_PRC> = ls_zcust_prc-/BIC/ZRTNS_PRC.
ELSE.
<fs_ZCPRC_FLG> = 0.
<fs_ZRTNS_PRC> = 0.
ENDIF.
endmethod.
I have commented out line in the Compute method because I was getting an error on my SELECT statement. I think the error is due to the fact that <fs_0customer> is not being populated.
In debug mode, p_kyf_ZRTNS_PRC, p_kyf_ZCPRC_FLG and p_cha_0customer all return 0. Shouldn't they have a different value. I have to admit that I don't really understand how ASSIGN COMPONENT works.
I have defined p_kyf_ZRTNS_PRC, p_kyf_ZCPRC_FLG and p_cha_0customer in the Attribute tab.
Any help would be appreciated. I have spent several hours trying to figure out how this works.
Thanks.
RyanCheck this if it helps:
https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/e051fda8-71a9-2a10-ac9e-8d17414a8c8c -
Hi all,
Before implementing a virtual key figure, I'd like to make sure this will answer my need. I work for a brewery, and I am looking at our customer taps activity.
Records in the cube:
Trading Region A, Brand X, Customer 001, Action "Install": 1 "Tap action"
Trading Region A, Brand X, Customer 002, Action "Install": 2 "Tap action" (<i>new taps</i>)
Trading Region A, Brand X, Customer 002, Action "Removal": 1 "Tap action" (<i>old tap</i>)
So what I want to have in my report is :
Trading Region A Brand X: 2 "customer activity"
I am thinking I could use a virtual key figure that will look in the cube and check if there was any activity for a customer on that brand and trading region, and then will allow me to aggregate the result in the query.
But I am not sure because it seems to me that Virtual Key Figure are calculated at record level...
Could any of you clarify this for me ?
Many thanks for your help,
NicolasThanks a lot !
I don't know why I tried such a complicated solution...
Tried to assign points and close the issue, let me know if it didn't work as this is my first post... -
Problems with creating badi implementation for virtual key figures
Hi,
I'm running BI 7.0 (unicode).
I have been trying to follow this blog to calculate the virtual keyfigure in my infoset - Using Virtual Key Figure and Characteris in an InfoSet
My infoset includes 1 infocube, and 3 master data infoobjects. I have created everything the blog was referring to, and activated fine. However, it seems that when the field symbols are assigned from the c_s_data structure, they do not get referenced correctly, so that no correct memory area is assigned and instead the whole c_s_data structure is assigned to the field symbol, which prevents me from referencing the right mem area correctly.
For example, in this statement
ASSIGN COMPONENT P_CHA_ZMYINFOSET___F120 OF STRUCTURE c_s_data
TO <fs_ZMYINFOSET___F120>.
the component p_cha_zmyinfoset___F120 of c_s_data supposed to be assigned to the field symbol (point to the correct place in structure c_s_data). In other words when this statement is executed, the program looks at structure c_s_data, finds the component zmyinfoset___F120 in it, and assignes the position of that component in the structure to the field symbol, so that it could be referenced in the code. However, the correct assignment does not happen.
When I debug the code and view the structure c_s_data, I can never find any component with any of the names I can find in my BEX query like ZMYINFOSET___F120. All I see are the components that are named like these: Z____5179 (C_S_DATA-Z____5179), C_S_DATA-S____5150, etc. I see the correct values, but components all have weired names like that. I thought in Infosets the components are named in the following fashion: INFOSETNAME___FXXX which you can see from your BEX query designer. Why is this happening? Why don't I see the correct names in the c_s_data structure? If instead I try to assign those components with their weired names directly, I still get incorrect assignment.
what am I doing wrong?
I was reading abap help on this statement: assign COMPONENT comp OF STRUCTURE struc
and the following I found:
With this expression for mem_area, the memory area of a component comp of a structure struc is assigned to the field symbol. While the structure struc is specified directly, a data object must be specified for comp. The evaluation depends on the data type of comp:
If the field comp has a non-text, elementary type, the content is converted to the type i and interpreted as a position of the component in the structure. if the value for comp is 0, the storage area of the entire structure is assigned to the field symbol.
From what it says above, my value for comp is always 0, so that the entire structure is always assigned to my field symbol instead of a specific position in that structure.
please let me know what is wrong here.
thanks.
Edited by: AG on Oct 11, 2008 10:41 AM
Edited by: AG on Oct 11, 2008 10:42 AMHi,
I am facing the similar issue. Can you please tell me how you solved this problem in more details?
which sample code and how u can find that in SE24 and where to copy that code.
Thanks in advance..
vamsi. -
Using Virtual Key Figures/ Characteristics is possible to use in InfoSets
Hi All,
Is it possible Using Virtual Key Figures/ Characteristics is possible to use in InfoSets?
I have tried all the possibilities using the BADI implementation RSR_OLAP_BADI without success.
The VKF / Characteristics works fine when it is being used with a query based on the ODS however it is not populated when i am using the infoset. Moreover i have used the code for InfoSet as well it is not working.
I would appreciate any help in this regard.
Regards
NoorHi PV,
r u sure about that, as i have tried all sort of permutation and combinations for using the same in RSR_OLAP_BADI without any luck.
I have the got felling about the same however if you look into the following SAP note it puts me into doubt.
Note 657690 - Virtual characteristics and key figures in InfoSets
Note 618738 - Virtual characteristics or key figures and InfoSets.
It describe about using the RSR00002.
Many thanks for the information.
Kind Regards
Noor -
Virtual Key Figure ( Currency Problem)
Hi All,
I am facing one problem in virtual key figure using BADI. Need your help...
Scenario: I have a DSO with all many fields. Requirement is to add one more VKF in DSO to get specific period balance of a GL from 0FIGL_O10 DSO and then display it as a column in Bex report. Added VKF is of type amount and unit/currency 0CURRENCY.
Required Report Format:
Material --- Col1 u2013 Col2 u2013 Col3(VKF)
M1--$4, 00-$140, 00u2014<Balance form 0FIGL_O10 for a period>
Work done so far:
I have added a virtual key figure ZVKF_BAL in my ZSD_O06 of type amount unit/currency as 0CURRENCY. In RSR_OLAP_BADI I have added a new implementation ZVAR_IMPL.
In class ZCL_IM_VAR_IMPL there are total three attributes.
P_KYF_ZVKF_GL u2013 Virtual key figure
P_CHA_0FISCPER u2013 Period is from ZSD_O06 for which we have to get the balance of a fixed GL account from 0FIGL_O10.
Given is the code added in define method:
DATA: l_s_chanm TYPE rrke_s_chanm,
l_kyfnm TYPE rsd_kyfnm.
FIELD-SYMBOLS:
<l_s_chanm> TYPE rrke_s_chanm.
CASE i_s_rkb1d-infocube.
WHEN 'ZSD_O06'.
l_s_chanm-chanm = '0FISCPER'.
l_s_chanm-mode = rrke_c_mode-read.
APPEND l_s_chanm TO c_t_chanm.
APPEND 'ZVKF_GL' TO c_t_kyfnm.
ENDCASE.
No code added in initialize method
Given is the code added in compute method:
FIELD-SYMBOLS <fs_ZVKF_GL> TYPE ANY.
FIELD-SYMBOLS <fs_0FISCPER> TYPE ANY.
DATA :LV_FS_ZVKF_GL TYPE /BI0/OIBALANCE,
p_cha_0FISCPER = 8. "ASSINGING POSITIONS TO THE FIELD AS THEY ARE NOT GETTING IT
p_kyf_ZVKF_GL = 16.
ASSIGN COMPONENT p_kyf_ZVKF_GL OF STRUCTURE c_s_data
TO <fs_ZVKF_GL> .
ASSIGN COMPONENT p_cha_0FISCPER OF STRUCTURE c_s_data
TO <fs_0FISCPER>.
Customized function module which will calculate the GL Balance.
CALL FUNCTION 'ZGLBALANCE'
EXPORTING
FISCPER_I = <fs_0FISCPER>
GL_ACCOUNT_I = '0000476000'
IMPORTING
BALANCE_O = LV_FS_ZVKF_GL.
<fs_ZVKF_GL> = LV_FS_ZVKF_GL.
Code of ZGLBALANCE:
DATA: lv0_fiscal type /BI0/OIFISCPER.
DATA : X TYPE I VALUE 0,
types: BEGIN OF ty_/BI0/AFIGL_O1000,
FISCPER type /BI0/OIFISCPER,
GL_ACCOUNT type /BI0/OIGL_ACCOUNT,
BALANCE type /BI0/OIBALANCE,
CURRENCY TYPE /BI0/OICURRENCY,
END OF ty_/BI0/AFIGL_O1000.
data: it_/BI0/AFIGL_O1000 type TABLE OF ty_/BI0/AFIGL_O1000, " Internal table
wa_/BI0/AFIGL_O1000 type ty_/BI0/AFIGL_O1000. " Work area
select single FISCPER GL_ACCOUNT BALANCE CURRENCY from /BI0/AFIGL_O1000 into CORRESPONDING FIELDS OF TABLE it_/BI0/AFIGL_O1000 where GL_ACCOUNT eq GL_ACCOUNT_I and FISCPER eq FISCPER_I and CURRENCY = 'USD'.
BALANCE_O = X .
Problem:
We are getting the balance values but it is coming with numeral with postfix ERROR.
M1--$4, 00-$140, 00u201412,00 ERROR
M2--$24, 00-$130, 00u201414,00 ERROR
Is it something to do with currency? Please let us know what is worng in code?
If yes please let me know how to get the currency along with the numeric values there in the report.
Thanks & Regards,
MayankHello mayankmishra135,
Were you able to find a solution for this? I am facing the same issue (with the ERROR in the currency field), wuold appreciate your help.
Best regards,
Aleksander Dyl -
Virtual Key Figures its not populated when execute query
Hi All
I did a BADI for populate a Virtual Key Figure, I follow the instructions of link
Link:[http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/60e34f63-f44c-2c10-488e-c89b04e0ca7c?quicklink=index&overridelayout=true]
In addition I add the code section of data declarated on example of: CL_EXM_IM_RSR_OLAP_BADI section define: IF_EX_RSR_OLAP_BADI~DEFINE, only information that said:
DATA: l_s_chanm TYPE rrke_s_chanm,
l_kyfnm TYPE rsd_kyfnm.
FIELD-SYMBOLS:
<l_s_chanm> TYPE rrke_s_chanm.
I test the query on RSRT and the virtual Key Figure is "0.00" this look like if the virtual key figure is not populated.
I did other things like:
Set a Break Point on COMPUTE section of my BADI, I saw that the value is assigned, but I don't know how I can continue reviewing the pass of this value to result of query.
I generate again the query on RSRT.
My code is:
IF_EX_RSR_OLAP_BADI~DEFINE
method IF_EX_RSR_OLAP_BADI~DEFINE.
data: L_S_CHANM type RRKE_S_CHANM,
L_KYFNM type RSD_KYFNM.
field-symbols:
<L_S_CHANM> type RRKE_S_CHANM.
case I_S_RKB1D-INFOCUBE.
when 'ZGTO_OB2'.
append 'ZVIRTKF' to C_T_KYFNM.
endcase.
endmethod.
IF_EX_RSR_OLAP_BADI~COMPUTE
method IF_EX_RSR_OLAP_BADI~COMPUTE.
field-symbols <FS_ZVIRTKF> type any.
P_KYF_ZVIRTKF = 16.
assign component P_KYF_ZVIRTKF of structure C_S_DATA
to <FS_ZVIRTKF>.
<FS_ZVIRTKF> = 10 .
endmethod.
I will appreciate your recommendations, Thanks in advanced.
AlThank you very much Sanganya
I saw this:
I put a break point on P_KYF_ZVIRTKF = 16., then I saw that P_KYF_ZVIRTKF obtain value 16.
Then on sentence: assign component P_KYF_ZVIRTKF of structure C_S_DATA
to <FS_ZVIRTKF> , when the system pass this line, I review the sy-subrc and is equal 4, as I understood the ASSIGN sentence did not be complete, the value shoul be 0.
Then when the system try to run the sentence: <FS_ZVIRTKF> = 10 the system send an Execution error that say: GETWA_NOT_ASSIGNED...
Error analysis
You attempted to access an unassigned field symbol
(data segment 32780).
This error may occur if
- You address a typed field symbol before it has been set with
ASSIGN
- You address a field symbol that pointed to the line of an
internal table that was deleted
- You address a field symbol that was previously reset using
UNASSIGN or that pointed to a local field that no
longer exists
- You address a global function interface, although the
respective function module is not active - that is, is
not in the list of active calls. The list of active calls
can be taken from this short dump.
Exactly the line selected with error is:
>>>> <fs_zvirtkf> = '10.0'.
I will appreciate your help
Thank you
Al -
Virtual Key figure not getting populated
Hi All,
I have included a virtual key figure in a multiprovider on which the query is created and its underlying ODS.
This issue is the virtual key figure is not getting populated . I am not sure what I am missing
I did the following :
1) Tried Debugging - Put a break point and execute the query in RSRT.It did not go to the Exit. I also tried generating the query from RSRT.
I am using the BADI (RSR_OLAP_BADI) to populate the Vir Key Fig.
Please guide me.
Thanks,
HMHi All,
Now that I am able to get the logic to come up in debug. I am faced with another issue.
I am implementing avery simple logic . I added a integer type key figure to the ODS and I am tryin to assign value 1 to the the key figure in the code (I am assigning 1 just ot check if the value is passed to query or not. I do have acomplex logic tha i need to implement).
Here I am able ot see the value in the debug but in the qury the value is not populated.
N ot sure what might be going wrong.
code is
l_z_avg = 1.
<fs_zavglate> = l_z_avg .
Appreciate help.
Thanks,
HM -
Virtual Key Figure on Multicube (RSR_OLAP_BADI)
I've created a virtual key figure (using RSR_OLAP_BADI) for number of days in month [zdays_month]. Everything works perfectly when it's used in a query on a cube cube. BUT, when I try to use it in aquery on a multi-cube, it doesn't. The multi-cube query returns a number = the number of days in the month * the number transactions in that month.
Anyone know how I can force the VKF to execute after the data is returned? I would prefer to not mess with exception aggregation, or key figure properties. I need to keep this VERY SIMPLE for my query developers.
Your assistance is greatly appreciated,
Kennethhi,
first try to check whether the query access virtual kf or not, use transaction rsrt, type in the query name, and click technical info or properties, there will some line 'virtual char/kf'.
i think the query may never access the code in BadI because in the code it's set with condition infoprovider technical name, it will cover only the infoprovider, when we access query from multiprovider, which join from one of the infoprovider, it's not automatically have the virtual kf/char, we have to specified the multiprovider name in the BadI, you may change the code as following :
hope this helps.
CASE i_s_rkb1d-infocube.
WHEN '[your infocube name]'.
ENDCASE.
to
IF i_s_rkb1d-infocube = [your infocube name] or
i_s_rkb1d-infocube = [your multiprovider name].
ENDIF.
for other infoproviders
CASE i_s_rkb1d-infocube.
WHEN '[other cube name]'
ENDCASE. -
Virtual Key Figures in RSR_OLAP_BADI COMPUTE Method not recalculated
Hi,
Please clarify why is the COMPUTE METHOD of RSR_OLAP_BADI not always
triggered or executed.
For instance, my query is drilled down by customer and
material by default. Upon opening the query and after entering
the appropriate selections, the virtual key figures that I have
used in the query are correct .
However, if i make any change to the query and run it in RSRT, the BADi method COMPUTE is not executed.
Is this really the normal behavior of the said BADI? Why is
it unstable?Hi Rohit,
I have a similar problem the compute method is not trigerring and i am trying to debug it but it is not breaking at all, although when i generate from rsrt it breaks at a breakpoint of define method however i have defined another break at compute method but not breaking.
I am using the infoobject inside the query but and tried to hard code it for testing in the compute method but doesnt seem to be getting executed.
Please help.
Cheers,
Jad -
What is Virtual Key Figure ?
Hello,
I would like to know about Virtual Key Figure. What is Virtual Key Figure ? How to we created ? what is use of Virtual Key Figure?
Thank you
Anup G shahHi,
As every one mentioned that Virtual key figure are those KF's whose values are filled at run time.
You can write customer exits to fill values of those Kf's in SAP Enhancement RSR00002.
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/59069d90-0201-0010-fd81-d5e11994d8b5#search=%22SAP%20Customer%20Exit%20virtual%20key%20figure%22
http://www.bwexpertonline.com/downloads/Nissen.doc
http://help.sap.com/saphelp_nw2004s/helpdata/en/ac/ef1f43daac9a448f0150a02e3a7aba/content.htm
Please rewad if it helps. -
Virtual Key Figures- RSRT says Key Figures are not valid
Hi,
Getting the following mssg when I try to generate a query in RSRT for the first time after I have coded Virtual Key Figures.
For the characteristic that I am pulling the user entered data from:
/BIC/ZNEWEST is not a valid characteristic for InfoProvider 0QM_C08
Message no. BRAIN122
Diagnosis
"Customer enhancement RSR00002 or the implementation of BAdI RSR_OLAB_BADI delivers /BIC/ZNEWEST as the characteristic to be calculated. 1. is however not a valid key figure for Infoprovider 0QM_C08.
System response
/BIC/ZNEWEST is ignored.
Procedure
Check the exit."
From the key figure I am using this info to populate value:
"/BIC/ZKF3 is not a valid key figures for InfoProvider 0QM_C08
Message no. BRAIN121
Diagnosis
Customer enhancement RSR00002 or the implementation of BAdI RSR_OLAB_BADI delivers /BIC/ZKF3 as the key figure to be calculated. 1. is however not a valid key figure for Infoprovider 0QM_C08 or /BIC/ZKF3 references the key figure . In this case, the basic key figure l is enough to calculate in the exit.
System response
/BIC/ZKF3 is ignored.
Procedure
Check the exit."
Any help would be appreciated.
This is my first time using Virtual KF's.
Thanks,
BrandonHi Ajay,
Here is my code:
FORM user_0QM_C08 *
--> L_S_RKB1D *
--> C_S_DATA *
FORM user_0QM_C08 USING l_s_rkb1d TYPE rsr_s_rkb1d
CHANGING c_s_data TYPE any.
*-- Local data
DATA: l_n TYPE n,
FIN1 like /bic/azqm_O5000-/BIC/ZPFINNT,
FIN2 like /bic/azqm_O5000-/BIC/ZPFINNT,
STAR1 like /bic/azqm_O5000-/BIC/ZPFINNT,
STAR2 like /bic/azqm_O5000-/BIC/ZPFINNT,
TASK type STRING.
*-- Field Symbols
FIELD-SYMBOLS <ZNEWEST>.
FIELD-SYMBOLS <ZOLDEST>.
FIELD-SYMBOLS <ZPSTARNT>.
FIELD-SYMBOLS <ZPFINNT>.
FIELD-SYMBOLS <ZKF3>.
FIELD-SYMBOLS <ZKF4>.
FIELD-SYMBOLS <0NOTIFICATN>.
*->>> Initial checks
SELECT SINGLE * FROM zvir_reports
WHERE infocube = l_s_rkb1d-infocube
AND compid = l_s_rkb1d-compid.
CHECK sy-subrc IS INITIAL.
*->>> Prepare the structure
ASSIGN COMPONENT g_pos_0QM_C08_ZNEWEST
OF STRUCTURE c_s_data TO <ZNEWEST>.
ASSIGN COMPONENT g_pos_0QM_C08_ZOLDEST
OF STRUCTURE c_s_data TO <ZOLDEST>.
ASSIGN COMPONENT g_pos_0QM_C08_ZPSTARNT
OF STRUCTURE c_s_data TO <ZPSTARNT>.
ASSIGN COMPONENT g_pos_0QM_C08_ZPFINNT
OF STRUCTURE c_s_data TO <ZPFINNT>.
ASSIGN COMPONENT g_pos_0QM_C08_0NOTIFICATN
OF STRUCTURE c_s_data TO <0NOTIFICATN>.
*~~~>Changeable
ASSIGN COMPONENT g_pos_0QM_C08_zKF3
OF STRUCTURE c_s_data TO <ZKF3>.
ASSIGN COMPONENT g_pos_0QM_C08_zKF4
OF STRUCTURE c_s_data TO <ZKF4>.
*do not go thru code if user fields are blank.
IF <znewest> IS INITIAL OR <zoldest> IS INITIAL.
Exit.
Endif.
*-->>> Read general data
CLEAR: /BIC/AZQM_O5000, FIN1, FIN2, STAR1, STAR2, TASK.
TASK = 'SCM'.
get Start1 time
SELECT /BIC/ZPSTARNT FROM /bic/azqm_O5000 INTO STAR1
WHERE notificatn EQ <0NOTIFICATN>
AND /bic/ZNEWEST EQ <ZNEWEST>.
ENDSELECT.
Get Finish1 time
SELECT /BIC/ZPFINNT FROM /bic/azqm_O5000 INTO FIN1
WHERE notificatn EQ <0NOTIFICATN>
AND /bic/ZNEWEST EQ TASK.
ENDSELECT.
Get Finish2 time & Start2 time
SELECT /BIC/ZPFINNT /BIC/ZPSTARNT FROM /bic/azqm_O5000 INTO (FIN2 ,
STAR2)
WHERE notificatn EQ <0NOTIFICATN>
AND /bic/ZOLDEST EQ <ZOLDEST>.
ENDSELECT.
*- Update key figures
<zKF3> = abs( FIN1 - STAR2 ).
<zKF4> = abs( STAR1 - FIN2 ).
ENDFORM. "user_0QM_C08
Thx -
BW : Virtual key figures
Hii experts ,
What are virtual key figures .
Plz explain .
Thanks & regards ,
Madhavi S BichakalDear Madhavi,
Virtual Key figure
virtual key figures are key figures within an InfoProvider that are not filled with data. Instead the key figure value is determined at runtime of the query using custom ABAP coding .
this keyfigure is not populated with the data by using update rules. but this virtual keyfigures will detemine the value only at the runtime of the query.
nomally when we store the key figure value in the cube as we do it for a normnal keyfigure it gives us the fact(Fixed truth ) information but by using virtual keyfigures we can show the present truth in the report.
for example :- let say we have a transaction on 01/01/2007 for material M100 @ price of 100 and on 02/01/2007 the price of material M100 has changed to 200.
when we store price as a normal keyfigure in the cube it will give fact i.e, 100
but if we design the price as a virtual keyfigure it will give out present truth as 200.
Virtual characteristics and Key figures are useful if you want to dynamically pouplate data from the fact table to the field which doesn't have any data in the fact table and also used to build an internal security model before the data gets passed to DATA_PROVIDER.
You can get more information if you review the documentation for enhancement RSR00002.Go to SMOD type in RSR00002 and select the documentation radiobutton..
Some ABAB coding samples:
Virtual Characterstics & Key Figures
Virtual Characteristic problem
how to read characteristic variable value into virtual characteristic
How to implement Virtual Characteristics or Virtual key figures
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/59069d90-0201-0010-fd81-d5e11994d8b5#search=%22SAP%20Customer%20Exit%20virtual%20key%20figure%22
For more info
You can go through the following links.
Virtual Key Figures
sampel code for virtual key figures
Virtual Key Figure - ZXRSRU02
Virtual Keyfigures and Characterisitics
How to implement Virtual Characteristics or Virtual key figures
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/biw/g-i/how%20to%20use%20variable%20time%20references%20in%20currency%20conversion
Search for the keyword virtual keyfigure in the following link :
https://www.sdn.sap.com/sdn/developerareas/bi.sdn?page=BW_How_To.htm
Creating Virtual keyfigures
you create virtual keyfigure just like create normal keyfigure (RSD2),
populate not via transformation/transfer/update rules, but when query execution via user exit, take a look
Virtual Characteristic problem
virtual key figure
http://www.bwexpertonline.com/downloads/Nissen.doc
Also
How to implement Virtual Characteristics or Virtual key figures
Check post by Sree Rama Tata
Hope it helps
Regards
Bala -
Calculating count of orders using virtual key figures
Hi All,
In my report, i need a counter for the number of distinct orders.
1ROWCOUNT didnt work for me as i want the count of distinct orders alone.
I am planning to use virtual key figure for this..
However, i donno how to code this in ZXRSRU02 and ZXRSRZZZ.
Any help on this would be great!!
Thanks!
- Arun KKShana,
I dont understand your question.
I'll give an eg.
this is how the cube is.
Order | Desc | Location
101 | 'X' | loc01
101 | 'X' | loc02
102 | 'Y' | loc01
103 | 'Z' | loc01
102 | 'Y' | loc02
in the report, i need the o/p to be.
Order | Desc | count
101 | 'X' | 1
102 | 'Y' | 1
103 | 'Z' | 1
i cant use 1rowcount as that counts each row and not the service orders.
Hope this answers your question.
Please let me know if there is a solution for this.
Thanks!
~ Arun KK -
Can someone explain me what are virtual key figures and how to populate data for them.
Regards
KunalAHP,
Thanks for the help, one last question, i posted same on sdn week back, there was no proper response. I have standard LO datasource and enhanced with around 25 fields, the major problem is none of these fields are delta capable and they are coming from 13 diff tables, with great difficulty i could tie the relation between them. Most of the fields change and none them are picked,
is there anyway i can write a program for all this fields for delta enabling. The last option which iam left is to load the data every week as full load though data volume is less, which is not practiced.
Regards
Kunal
Maybe you are looking for
-
HP LaserJet M2727 Multifunct​ion Printer series
When printing from the printer device stopped permanently عندما اقوم بالطباعه على الطابعه تطفى فجاءه نرجو دعمكم
-
EZDrummer Velocity Sweep Automation?
Anyone who has ezdrummer probably loves that velocity sweep knob. i haven't spent too much time on it yet, but in 15 minutes i couldn't figure out how to emulate that velocity sweep with automation after i put it's midi files into the arrange window.
-
Project resizing issues.
Hi there, hope someone can help. I recorded my project and converted it to .swf before realising that the majority of the users of the video will be viewing it in a lower resolution. I initially didn't think this would be a problem until I realised t
-
Blown out images in ACR 6.7
I previously shot with a Canon 5D and had no problem using ACR. Now, I purchased a Mark III. The histogram and flashing white highlights are perfectly exposed on camera. (And also in the Canon software). When I open in ACR 6.7 everything is totally b
-
A Problem With Sorting via Applescript
Hello everyone. I have always lurked these forums and learnt many things along the way, but this is my first question, and I hope that someone can help me out. I apologise for the huge post. I have created a spreadsheet in Numbers that I plan to use