Passing two variables to BADI implementation for virtual chars

I have a BADI that fills a virtual characteristic. This BADI gets a date variable value from the query. Can I send another variable value to the BADI? I want to add another retriction based on the state. If I don't add this restriction to the BADI, it will go thru all the records in the cube and make it slow. How can I do this?

Hi there.. if that state field is available in the badi you can use that field.. check the attributes in the BADI if that field is a part of any table or is that an importing parameter..
if <table>-<state> = 'US'.
proceed ahead..
endif.

Similar Messages

  • 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 AM

    Hi,
    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.

  • Can we Pass two variable values in to one Varaible which is Cust Exit?

    Hi all,
    Can we pass two Variable values to a Variable which is Custexit?(For Example posting Period and the fiscalyear in to the FicalPeriod )
    Regards
    Kiran

    Hello,
    For that example you had to "convert" both post period and fiscalyear into fiscalperiod, and yes it is possible, but not throwing up the two values, you had to do it yourself in the user exit code.
    Diogo.

  • Error while passing ODI variable in JNDI Url for JMS Queue XML

    Hi,
    Facing a weird problem while passing ODI variable in JNDI Url for JMS Queue XML.
    Below is the JNDI Url configured under ODI Topology:
    JNDI Url: t3://<host_location>?d=#TEST.SCHEMA_FILE&s=<schema_name>&JMS_DESTINATION=jms/<queue_name>
    where,
    #TEST.SCHEMA_FILE --> ODI variable storing xsd name and location
    Issue Description:
    If we restart ODI server then for the first run of any ODI interface using JMS Queue XML, it is unable to get the value for ODI variable present in JNDI Url (d=#TEST.SCHEMA_FILE).
    It throws error message saying: No XSD found
    Temporary Resolution:
    As a temporary fix if we hard-code and pass the value in that ODI variable as shown below, it will successfully go through.
    eg: JNDI Url: t3://<host_location>?d=C:\XSD\test.xsd&s=<schema_name>&JMS_DESTINATION=jms/<queue_name>
    Reverting it back to variable later will have no issues and subsequent run will succeed.
    But again anytime later if server is restarted then first run will have this issue.
    Want to have permanent fix for it.
    Any one having idea on it please share. Appreciate your help!

    What ODI version are you using? It could be related to the bug in the older version as described in support note Doc ID 1290326.1

  • Passing two variables in the body of the URL using the go to detail page SB in ASP

    Hi all,
    Would appreciate your assistance with the following, I'm
    trying to set up a go to detail page sb that passes two variable in
    the body of the URL rather than the standard one.
    The code i've tried is -
    <td><A HREF="gggggggtest.asp?<%=
    Server.HTMLEncode(MM_keepNone) + ((MM_keepNone!="")?"&":"") +
    "PCL2ID=" + othermenutwo.Fields.Item("PCL2ID").Value
    %>&amp;"PCL1ID=" +
    othermenutwo.Fields.Item("PCL2PC1ID").Value
    %><%=(othermenutwo.Fields.Item("PCL2Description").Value)%></A></td>
    Where the PCL1ID and the PCL2ID are the variables
    The normal code generated by the go to detail page sb with
    one variable is -
    <td><a href="ggggggtest.asp?<%=
    Server.HTMLEncode(MM_keepNone) + ((MM_keepNone!="")?"&":"") +
    "PCL2ID=" + othermenutwo.Fields.Item("PCL2ID").Value
    %>"><%=(othermenutwo.Fields.Item("PCL2Description").Value)%></a></td>
    Unfortunatley my code tweaking isn't working as the second
    variable isn't being sent, any help would be gratefully appreciated
    Thanks

    Instead of using DW's 'go to detail page' option, simply set
    up the link the manual way in DW using the Link browser. Select the
    file you want to link to and then use the parameters button at the
    bottom of the 'Select File' dialogue to set the parameters to be
    passed with the link. You can then manually set the name of the
    parameter to be passed and then select its value from a recordset.
    The key thing is that you can set as many parameters as you like,
    so you can set both the parameters you want.
    On the detail page you then filter by the parameter name you
    chose (or both).
    Personally I always code links this way rather than using the
    go to detail page option as you get much better control of what is
    going on.

  • Child.swf to pass two variables to parent in global function

    Hi, I have a parent.swf and wish to load a varying child.swf as a sub-menu. How do I establish a global function that will allow the child.swf to pass back two variables (storyName & storyType) to the parent and kick off a task.
    The submenu (swf) items will change so I cannot explicitly add a listener to a child.button. The submenu is on a children’s library so will have numerous graphics and movieclips included so I don’t think it would be suitable to simply call xml data to build a menu at runtime (at my level of knowledge). There will be a number of child.swf depending on books available.
    I am not familiar with package { and public class { etc...
    In as2 I would have used a _global.function() and used that to pass the variables back to the parent and then start a parent.action.
    Totally new to AS3, suggestions appreciated. I have no problem loading the child.swf.

    Hi Ned, thank you for your response. I don’t know if it is relevant, but the container clip is run via AIR. That seems to affect some things as I’ve lost fullscreen functionality somewhere.
    I tried you suggestions, if I have translated it into place correctly I don’t know. Do I need to treat the parent.parent as a variable (yes this one is done via a loader) ?
    I get an error if I leave the function call open, I can tell I’m getting into the call as the trace on each side is happening.
    In the External Movie:
    blob_b.addEventListener(MouseEvent.CLICK, ms_bF);
    function MbRemEL(nameof:String):void {
                blob_b.removeEventListener(MouseEvent.CLICK, ms_bF);
    function ms_bF(event:MouseEvent):void {
                var m_ar:Array = new Array();
                m_ar=event.target.name.split("_");
                MbRemEL("r");
                trace("StoryMenu: "+event.target.name);
                if (this.parent.parent != null){
                            MovieClip(parent.parent).story = event.target.name;
                            //MovieClip(parent.parent).gcr(event.target.name);
                             // = TypeError: Error #1006: gcr is not a function.
                            MovieClip(parent.parent).gotoAndStop("g_home");                   
    In Container Movie:
    function gcr(stry:String):void{
                trace("gcr: "+stry);

  • !!URGENT!! BADI Implementation for creation of G/L accounts

    Please can you urgently help. I am trying to implement a user exit or badi to check the uniqueness of the description while creating a G/L account.
    I tried to create a BADI implementation to the definition FI_LIMIT_ACCOUNT but it gives error messages that this is for SAP internal use.
    The user exit ZXF03U01 used in enhancement SAPMF02H cannot be used as this exit passes only SKA1 and SKB1.I would like to check on SKAT. The fields affected in SKAT-TXT20 and SKAT-TXT50.
    Do you see a solution to this?
    I have the same to be implemented for KS01/KS02 - Create/Change Costcenter.
    A prompt response would be appreciated.

    Also try :
    CL_IM_QISR1_GL_ACCOUNT_CRE  Class
    Or FM`s
    GL_ACCOUNT_INSERT            
    GL_ACCOUNT_IN_COA_INSERT     
    GL_ACCOUNT_IN_COMPANY_INSERT 
    GL_ACCOUNT_SAMPLE_INSERT     
    GL_ACCT_CH_REQ_CREATE_ACCOUNT
    Thanks

  • BADI implementation for NOTIF_EVENT_POST not getting triggered

    Hi All,
            We have created an implementaion for the NOTIF_EVENT_POST. And it was working fine previously. Now it is not working for some reason. In fact issue is that the implemetation is not getting triggerd at all. I have put a BREAK-POINT statement in the code, but does not even goes into the code.
    I have checked all the properties. It is active. The table V_EXT_IMP has a entry corresponding to the BADI definition and implementation.
    I tried to debug the standard transaction IW52 (which uses this). The program runs till the FM call for CL_EXITHANDLER=>GET_INSTANCE. It created a instance also. But it does not get inside the call for the method of the BADI LR_BADI_INST->CHECK_DATA_AT_POST.
    I am at a fix now. Can somebody answer this issue? It would be very helpful.
    Regards
    Barada.
    Edited by: Baradakanta Swain on Aug 5, 2008 4:06 PM

    I did not get the issue with the BADI implementation. But as our time line was very tight, we moved the code to BTE event for Updating Notifications.
    This required a little tweaking of the code and now it is working.
    I am marking it ANSWERED so as to remove it from the list of unanswered questions.
    Regards
    Barada

  • Help required with badi implementation for IBASE

    Hi,
    I have implemented and activated a BADI (Defination name: BADI_IBASE_SAVE_CHCK). This BADI is for additional checks before changes to an IBASE is saved. However, this BADI is not getting triggered.
    I tried debugging the transaction IB52 during the SAVE operation, but couldnt get the reason.
    Can anyone help me out with this...
    I implemeted the BADI from the SPRO transaction in the following path.
    SPRO>Customer Relationship Management>Master Data>Installed Base> Enhancements-->BADI:Additional check when saving Installed Base.

    Hi Dharmendra,
      Check if this is your case..
    Note
    This Business Add-In is not suitable for checking individual field content in an installed base, or installed base component: To do this, see Business Add-In: Additional Checks When Modifying Installed Base Headers and Business Add-In: Additional Checks When Modifying Components.
    Regards.
    Manuel

  • To find out BADI implementation for a standard transaction

    Like for User Exit is there any standard code to find the BADI implemetation for a Transaction Code.
    If so please paste the code.

    Hi pagal,
    The following is the code for the report program which lists Userexits and BAdi's for a given Tcode...
    Regards
    Karthik D
    <b>P.S.: Reward Points if this is Helpful</b>
    *& Report  ZDK_FIND_BADI
    REPORT  ZDK_FIND_BADI.
    TABLES : TSTC,
    TADIR,
    MODSAPT,
    MODACT,
    TRDIR,
    TFDIR,
    ENLFDIR,
    SXS_ATTRT ,
    TSTCT.
    DATA : JTAB LIKE TADIR OCCURS 0 WITH HEADER LINE.
    DATA : FIELD1(30).
    DATA : V_DEVCLASS LIKE TADIR-DEVCLASS.
    PARAMETERS : P_TCODE LIKE TSTC-TCODE,
    P_PGMNA LIKE TSTC-PGMNA .
    DATA wa_tadir type tadir.
    START-OF-SELECTION.
    IF NOT P_TCODE IS INITIAL.
    SELECT SINGLE * FROM TSTC WHERE TCODE EQ P_TCODE.
    ELSEIF NOT P_PGMNA IS INITIAL.
    TSTC-PGMNA = P_PGMNA.
    ENDIF.
    IF SY-SUBRC EQ 0.
    SELECT SINGLE * FROM TADIR
    WHERE PGMID = 'R3TR'
    AND OBJECT = 'PROG'
    AND OBJ_NAME = TSTC-PGMNA.
    MOVE : TADIR-DEVCLASS TO V_DEVCLASS.
    IF SY-SUBRC NE 0.
    SELECT SINGLE * FROM TRDIR
    WHERE NAME = TSTC-PGMNA.
    IF TRDIR-SUBC EQ 'F'.
    SELECT SINGLE * FROM TFDIR
    WHERE PNAME = TSTC-PGMNA.
    SELECT SINGLE * FROM ENLFDIR
    WHERE FUNCNAME = TFDIR-FUNCNAME.
    SELECT SINGLE * FROM TADIR
    WHERE PGMID = 'R3TR'
    AND OBJECT = 'FUGR'
    AND OBJ_NAME EQ ENLFDIR-AREA.
    MOVE : TADIR-DEVCLASS TO V_DEVCLASS.
    ENDIF.
    ENDIF.
    SELECT * FROM TADIR INTO TABLE JTAB
    WHERE PGMID = 'R3TR'
    AND OBJECT in ('SMOD', 'SXSD')
    AND DEVCLASS = V_DEVCLASS.
    SELECT SINGLE * FROM TSTCT
    WHERE SPRSL EQ SY-LANGU
    AND TCODE EQ P_TCODE.
    FORMAT COLOR COL_POSITIVE INTENSIFIED OFF.
    WRITE:/(19) 'Transaction Code - ',
    20(20) P_TCODE,
    45(50) TSTCT-TTEXT.
    SKIP.
    IF NOT JTAB[] IS INITIAL.
    WRITE:/(105) SY-ULINE.
    FORMAT COLOR COL_HEADING INTENSIFIED ON.
    * Sorting the internal Table
    sort jtab by OBJECT.
    data : wf_txt(60) type c,
    wf_smod type i ,
    wf_badi type i ,
    wf_object2(30) type C.
    clear : wf_smod, wf_badi , wf_object2.
    * Get the total SMOD.
    LOOP AT JTAB into wa_tadir.
    at first.
    FORMAT COLOR COL_HEADING INTENSIFIED ON.
    WRITE:/1 SY-VLINE,
    2 'Enhancement/ Business Add-in',
    41 SY-VLINE ,
    42 'Description',
    105 SY-VLINE.
    WRITE:/(105) SY-ULINE.
    endat.
    clear wf_txt.
    at new object.
    if wa_tadir-object = 'SMOD'.
    wf_object2 = 'Enhancement' .
    elseif wa_tadir-object = 'SXSD'.
    wf_object2 = ' Business Add-in'.
    endif.
    FORMAT COLOR COL_GROUP INTENSIFIED ON.
    WRITE:/1 SY-VLINE,
    2 wf_object2,
    105 SY-VLINE.
    endat.
    case wa_tadir-object.
    when 'SMOD'.
    wf_smod = wf_smod + 1.
    SELECT SINGLE MODTEXT into wf_txt
    FROM MODSAPT
    WHERE SPRSL = SY-LANGU
    AND NAME = wa_tadir-OBJ_NAME.
    FORMAT COLOR COL_NORMAL INTENSIFIED OFF.
    when 'SXSD'.
    * For BADis
    wf_badi = wf_badi + 1 .
    select single TEXT into wf_txt
    from SXS_ATTRT
    where sprsl = sy-langu
    and EXIT_NAME = wa_tadir-OBJ_NAME.
    FORMAT COLOR COL_NORMAL INTENSIFIED ON.
    endcase.
    WRITE:/1 SY-VLINE,
    2 wa_tadir-OBJ_NAME hotspot on,
    41 SY-VLINE ,
    42 wf_txt,
    105 SY-VLINE.
    AT END OF object.
    write : /(105) sy-ULINE.
    ENDAT.
    ENDLOOP.
    WRITE:/(105) SY-ULINE.
    SKIP.
    FORMAT COLOR COL_TOTAL INTENSIFIED ON.
    WRITE:/ 'No.of Exits:' , wf_smod.
    WRITE:/ 'No.of BADis:' , wf_badi.
    ELSE.
    FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.
    WRITE:/(105) 'No userexits or BADis exist'.
    ENDIF.
    ELSE.
    FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.
    WRITE:/(105) 'Transaction does not exist'.
    ENDIF.
    AT LINE-SELECTION.
    data : wf_object type tadir-object.
    clear wf_object.
    GET CURSOR FIELD FIELD1.
    CHECK FIELD1(8) EQ 'WA_TADIR'.
    read table jtab with key obj_name = sy-lisel+1(20).
    move jtab-object to wf_object.
    case wf_object.
    when 'SMOD'.
    SET PARAMETER ID 'MON' FIELD SY-LISEL+1(10).
    CALL TRANSACTION 'SMOD' AND SKIP FIRST SCREEN.
    when 'SXSD'.
    SET PARAMETER ID 'EXN' FIELD SY-LISEL+1(20).
    CALL TRANSACTION 'SE18' AND SKIP FIRST SCREEN.
    endcase.

  • QISR1 BADI implementation for HCM Processes & Forms

    Hello All,
       I am working on HCM Processes and Forms. I have created a process for Promotion/Position changes. For which I have to provide the drop down values for position, job, EE group, and Bonus Plan information. These value helps need to be restricted based on certain conditions.
    In order to achieve this, I have created a new implementation for QISR1 and added the logic in the method "IF_EX_QISR1~INT_SERVICE_REQUEST_INIT". When I test my process, it is not considering the new implementation and always pointing to the reference implementation with the scenario "SASR".
    Is there any customization settings for getting the new implementation while testing the process.
    Please tell me what was the mistake in my process.
    Thanks,
    Bindu

    Hi,
    Do you have a Z scenario created to handle the requirement ? I believe you need to perform a bunch of customizing activities in QISRSCENARIO transaction.
    Phani.

  • Badi implementation for T-code: QE71

    Hi Experts,
    I am implementing a badi in transcation QE71 my requirement is to automatically generate quality data. In this t-code we enter the value for the MIC of the material for each inspection lot.
    But in the screen only one entry can be done at a time our requirement is to enter 10 data at a time. Badi which hits when we press save button is QE_RESULT_VALUATION but the data entered in screen is column wise that is if it has 5 MIC for the material (thickness, socket length,....) then first it take thickness then in another loop it take socket length and so on. Please give me suggestion that how would I implement this badi. Please help
    Thanks and regards,
    Suruchi

    HI,
    Based on you requirement to enter the multiple entries at a time of inspection result data.
    you can perform the same scenario with the one more transaction called qa32. Over here you need to enter inspection lot no. and serial no. later on the another screen appears with different parameters to enter its respective values.
    using Badi QE_SAVE with two methods 1.) IS_ACTIVE 2.) TABLES_IN_OPERATION
    IS_ACTIVE-RV_ACTIVE = 'X'.
    in  TABLES_IN_OPERATION method, you will find the structure : IS_QALS
                                                                                    EV_SAVING_ALLOWED
                                                                                    CS_QAPO
                                                                                    CS_QAPP
                                                                                    CT_QAMK
                                                                                    CT_QASP
                                                                                    CT_QASE
                                                                                    CT_QAKL
    IS_QALS, CS_QAPP &  CT_QAMK , you will get the all the basic inform.
    and using function modules 1.) QAPB_QAPP_POST 2.) QEBU_QASR_POSTING
    we can update/ insert multiple entries of data in to the qapp, qasr, qals tables.
    At last by running the T-Code : qe71 you will find the all the entries you have inserted in the tables.
    regards,
    balu.

  • BADI implementation for Copying control in CRM

    HI,
      Can anybody help me for my requirment, i want to implement BADI for copying control in CRM how to implement, and i want to filed in qutation screen how .
    Regards,
    Sivakumar.

    Check the BADI "ME_PROCESS_PO_CUST".
    Regards
    Vinod

  • How to pass a variable in current class for access in next class.

    Hi Everyone,
    I'm new in this iphone development.so please anyone help me .
    My question is How can we declare a variable for, select a row in current class which read as input string in next class Soap Message.
    Means in my 1st class i am getting web response in array as a name like john, now if i m clicking on john so its call another web service for john details.so how can i select ( john ) cell to call in next class Soap Message.
    Please anyone help me..
    Sorry for bad english.
    Regards:
    Maddy

    You need to ask in the iPhone Developer forums:
    http://devforums.apple.com

  • BADI implementation for importing values from excel

    Hi All,
    This is my first ever post in this forum and I am a newbie in ABAP. I have this doubt rather I would say I am stuck while implementing a BADI for importing Excel values.
    We have a BADI for 'Upload flow rate' button which is built on PLM frame work on webdynpro.
    The requirement is that after clicking the ' 'Upload flow rate'  button it should prompt for selecting the excel file and after selecting that file, the values should get loaded to the internal table.
    what I have tried till now is that
    CALL FUNCTION 'TEXT_CONVERT_XLS_TO_SAP'
       EXPORTING
        I_FIELD_SEPERATOR    =
         I_LINE_HEADER        = 'X'
         I_TAB_RAW_DATA       = IT_RAW       " WORK TABLE
         I_FILENAME           = 'C:\abcdl\book1.xlsx'
       TABLES
         I_TAB_CONVERTED_DATA = lt_result
       EXCEPTIONS
         CONVERSION_FAILED    = 1
         OTHERS               = 2.
    IF SY-SUBRC <> 0.
       MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
               WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    endmethod.   
    I tried hard coding the xls file but it gives error as 'CNTL_error' which I guess is a known issue when we use this function module in webdynpro.
    So how can I get the values from excel without using datasource and just by hard coding the file name?
    Regards,
    Anand
    Anand

    There is no solution to this - SAP have said they will re-introduce this functionality, but they havent said when (as far as I am aware).
    However, we have developed a workaround (for Web reports anyway), let me know if you are interested.
    Patrick

Maybe you are looking for

  • Best practice for Auditing

    Hello, I use APEX 4.2.2.... Oracle 11.2.0.3. I need to log all changes on many tables. e.g : for a given column : old_value , new_value, updated_on , updated_by. I noticed in Check list Manager Packaged application there is a trigger EBA_CM_CHECKLIST

  • Why does the iTunes mac logo keep appearing when my iPad is out of battery and I charge it?

    My iPad 3rd generation with iOS 7.1 ran out of battery, so then I plugged it in the socket. After a couple of minutes, it showed me a 30-pin charger icon pointing to the iTunes logo with an arrow! I tryed connecting it to my computer but it gave me t

  • Cloud Update Failure: Error Code A12E1

    I tried to update the Cloud app. I get this error. "We've encountered the following issues: Sorry, there seems to be a problem with the installation process (Error Code: A12E1). For troubleshooting tips, please visit our support page." So here I am.

  • One external hard, drive two macs. Library wont update????

    Hello, Sorry if this has been asked before, I could not find anything to answer this, so here i am. I Have a G5 PPC tower (10.4.11) and an Intel MacBook Pro (10.5.6) and a Lacie 500GB for my iTunes library. I mostly use my PPC while at home, which is

  • Port channnel with Blades

    Re: Unable to bond Etherchannel on ESXi 5.5 In continuation of the previous link.. I have a request to activate trunk on IBM blade servers. We have 14 ESXi servers in that Blade. I have similar set up with ESXi5.5 with route based on originating port