Defining a customer method in start routine and using in char-routines

Hi,
can I define an own method in start routine and use this method in several routines for characteristics or key-figures?
If yes, can anybody give me a short description where to define the new method (e.g. in wich section of the start routine), where to implement the new method and how to use the new method in transformation of char or key-figures.
Thanks for your help
Thomas

Hi,
If you are looking for something like global method it is not possible. But you can create a function module in SE37 and you can use the same wherever you want.
Regards
Githen

Similar Messages

  • Unable to reset the variable value in the method value change event and use

    Hi ,
    int i=4;
    public changevalue(ValueChangeEvent ValueChangeEvent)
    //some code
    i=5;
    system.out.println("in changevalue method="+i)// this prints i value as 5
    public void submit(ActionEvnet actionEvent){
    //somecode
    system.out.println("in submit="+i) // this prints value 4;though its value is changed as 5 in above mehtod
    how can i get the value as i=5 in second method(i.e, in submit method)??

    Hi 980230,
    When I tried the same thing it gives me 5 in the submit method.
    Are you sure that ValueChange method is getting invoked before the actionEvent method?
    Its better to debug the application, you will get the exact flow and error if any....
    Thanks
    --NavinK                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • BEx Variable defined in BI 7.0 Query Designer and using in BW 3.5 Analyzer

    Hi,
      I have defined a variable in BI 7.0 Query designer for a characteristic which is present in characteristic restrictions area to restrict it . Ideally when that query is executed a pop up box should be opened to enter a value of the variable. But when that query is opened in BW 3.5 BEx Analyzer, instead of pop up box the error message " Error specify a value for the Variable ' Variable Name '  " has been displayed. Please help me to resolve this problem
    <i><b>Details of Variable:</b></i>
    Type: Characteristic Value
    Processed by: Manual Entry/Default Value
    Variable is : Mandatory
    and Ready for input
    No default values are defined for this variable.
    Thanks
    Hari Prasad.

    Hi,
    Once a query opened and changed in the BI7.0 query designer u can not use the same query in lower version.
    Thats the reason the error message coming.
    If u need the 3.5 query just keep as it is , and copy the same query in different name and open it in the BI7.0 and do the changes.
    Thanks,
    Debasish

  • Issue starting up and using OC Genie

    Hi everyone,
    I recently assembled my first computer, using the MSI P55-CD53 motherboard. But, I have a few problems...
    Whenever I start up, the computer sits at the MSI splash screen for one to two minutes... After that, Windows boots up like normal and the computer operates normally (I've played games, etc). Quick Boot is enabled in the BIOS. Is this normal? I also installed the chipset drivers from the disk that came with the motherboard.
    My other issue is with the OC Genie function (I was only going to use it if the OC provided by it gave adequate performance for the game I am trying to play). I power down the computer, press the OC Genie button in on the motherboard, and then turn the computer on. The MSI splash screen appears with the text, "OC Genie Activated!!", on it, but then the computer shuts down after the screen displays for a few seconds. It does this about 4 times, and then the fans and LED's come on, but there is no image and Windows doesn't boot. I've let it sit there for several minutes, but it never boots up and I have to end up turning it off and pressing the OC Genie button again on the motherboard...
    These are my system specs:
    Motherboard: MSI P55-CD53
    Processor: Intel i5 750 @ 2.66GHz
    RAM: G.Skill Ripjaws 4GB DDR3 1600MHz
    HD: Western Digital 320GB 7200RPM
    Graphics Card: Nvidia 8800 GTS 512
    PSU: OCz 600W Stealth Xtreme
    Operating System: Windows Vista Home Premium 32bit (to be replaced by Windows 7 64bit)
    I would be very grateful for any help.
    Thanks!

    Sorry for the late reply, guys!
    Quote from: hoiung on 01-October-09, 09:52:02
    I am having the same issue, it reboots itself 4 times from 3.2Ghz decreasing until reaches 2.2Ghz on the 4th reboot and then just halts... and nothing on screen no matter how long i wait. I had to turn off the OC genie and then do a load to optimized default to get it back to 2666hz or it stays as 2.2Ghz. Tried many times, reset the bios using the jumper. tried many things, still not once does it overclocks.
    Here is my build:
    Motherboard = MSI P55-CD53
    CPU = Intel Core i5 750 2.66G s1156
    RAM = TWIN3X2048-1333C9DHX G - 2GB (2x1GB) CorsairTwinX XMS3, DDR3 PC3-10666 (1333) 240 Pin, Non-ECC Unbuffered, CAS 9-9-9-24, DHX
    CPU Cooler = Noctua NH-U12P-E SE1366 (had to purchase s1156 bracket)
    GFX = MSI NX8800GTS-512-OC
    I can use the MSI Control centre and boost it to 2.9Ghz from 2.6Ghz, but the OC Genie just doesn't work at all.
    Buziel-411, can you explain the steps you did to get yours working? is it stable?
    Oh yeh, I've also upgrade the BIOS to v1.2 and it still doesn't work!
    Thanks..
    Hoi.
    That's exactly what happened to me! After I would disable OC Genie and boot normally, I needed to load optimal settings in the BIOS to get it back to 2.66GHz.
    Once I reset the settings and got it to 3.51GHz and then restarted a few times, the PC began the have issues booting and OC Genie had to be disabled once more. I eventually gave up on it and learned how to do a manual OC. For the past 4 or so days, I've been sitting at 3.71GHz (achieved with a manual OC) and received no errors after 8 hours of running OCCT for stability testing.
    Now I just need to upgrade my video card to take advantage of all this game has to offer.

  • Backup to Time Capsule too big for wifi - can I start again and use ethernet?

    Hi all,
    I've just bought a 2TB Time Capsule, and I was hoping (stupidly) to make my initial Time Machine backup from my MacBook Pro (OSX Mountain Lion) overnight using wifi. The backup is roughly 400GB, and obvously it only managed about 20GB of that. I've hunted down an ethernet cable today but I can't seem to figure out how to make this work - it won't seem to use ethernet when I try to continue the backup.
    If you know how to help with this, please do let me know - I absolutely have to get this computer backed up this weekend.
    Many thanks,
    Merlin

    Fantastic, thank you! So, it really is as simple as switching the network mode of the TC in Airport Utility to 'Off' when I want to use ethernet?
    Kappy - status in Airport utility has two amber lights for 'Internet Connection' and 'No DNS Servers' - I assume all this means is that it has no wireless internet connection?

  • Start Routine on Transformations

    Hi Friends
    I've Start routine on transfer rules with internal table and it was working fine.
    Now I'm trying to define the internal table with occurs 0 but it's throwing error saying occurs not support in new version.
    How can we define an internal table in start routine of transformations in BI7?
    The code as follows for internal table.
    data: begin of it_ord occurs 0,
    AUFNR(000012) TYPE C,
    ZZARBPL(000008) TYPE C,
    WERKS(000004) TYPE C,
    end of it_ord.
    Regards,
    Chandu.

    Hi
    I've defined as follows
        types: begin of it_ord ,
                AUFNR(000012) TYPE C,
                ARBPL(000008) TYPE C,
                WERKS(000004) TYPE C,
              end of it_ord.
        data: temp_tabix like sy-tabix,
              is_datapak type tys_SC_1.
        data it_ordt type table of it_ord .
    It's throwing error saying it_ort is a table with no header line and therefore has no component called aufnr.
    If I define with header line then header line not supported.
    What could be the problem?
    I've changed like you said but it's giving the following error.
    E:"IT_WA" is not a table with header line.
    Regards,
    Chandu.
    Edited by: Chandu on Feb 18, 2009 8:44 AM

  • Start Routine

    Hi Friends
    I've Start routine on transfer rules  with internal table and it was working fine.
    Now I'm trying to define the internal table with occurs 0 but it's throwing error saying occurs not support in new version.
    How can we define an internal table in start routine of transformations in BI7?
    The code as follows for internal table.
    data: begin of it_ord occurs 0,
            AUFNR(000012) TYPE C,
            ZZARBPL(000008) TYPE C,
            WERKS(000004) TYPE C,
          end of it_ord.
    Regards,
    Chandu.

    Change your code like the one below
    TYPES : begin of it_ord ,
    AUFNR(000012) TYPE C,
    ARBPL(000008) TYPE C,
    WERKS(000004) TYPE C,
    end of it_ord.
    DATA : temp_tabix TYPE sy-tabix,
    is_datapak TYPE tys_SC_1.
    DATA : it_ordt TYPE STANDARD TABLE of it_ord ,
    it_ordtt_wa TYPE it_ord.
    This should solve your problem.

  • Using a Custom Method to Set the Bind Parameters in a View Object

    Hi all:
    i tried to follow the tutorial in oracle jdeveloper 10.1.2 documentation about creating a simple search page but i'm receiving this error when i tried to test the application module after i added a where clause to my view object(i.e where dept_id= :1) and define a custom method to bind variables in the appmodule class
    i keep getting this error
    JBO-27122: SQL error during statement preparation. Statement: SELECT Employees.EMPLOYEE_ID, Employees.FIRST_NAME, Employees.LAST_NAME, Employees.SALARY, Employees.DEPARTMENT_ID Employees.DEPARTMENT_ID = :1
    ????? IN ?? OUT ????? ?? ??????:: 1
    when i used the setwhere metohd it works
    i'll apprciate ur answer
    regards

    I have the same problem:
    Just like in Toystore Demo I am calling the following method in my VO:
       * Find an account by username and password, leaving the account
       * as the current row in the rowset if found. BUT EVEN IF WE FIND ACCOUNT BY
       * USERNAME AND PASSWORD, IT WILL RETURN FALSE IF THE ACCOUNT IS DISABLED!!!!
       * @param username the username
       * @param password the user's password
       * @return whether the user account exists or not
      public boolean findAccountByUsernamePassword(String username, String password) {
         * We're expecting either zero or 1 row here, so indicate that
         * by setting the max fetch size to 1.
        setMaxFetchSize(1);
        setWhereClause("staff_id = :0 and passw = :1");
        setWhereClauseParam(0, username);
        setWhereClauseParam(1, password);
        executeQuery();
        RowSet rs = this.getRowSet();
        String userEnabled = new String("N");  // Default setting
        if (rs != null){
          int currentSlot = rs.getCurrentRowSlot();
          Row r = rs.getCurrentRow();
          if (r == null){
             r=rs.first();
             currentSlot = rs.getCurrentRowSlot();
          //check if we found the user
          if (currentSlot == SLOT_VALID){
            Object[] av = r.getAttributeValues();
            LoginUtils.userLoggedIn    = av[0].toString();  // '0' is username
            LoginUtils.userFirstName   = av[1].toString();  // '1' is user first name
            LoginUtils.userAccessLevel = av[6].toString();  // '6' is user level
            LoginUtils.userEnabled     = av[7].toString();  // '7' is user level
            userEnabled = av[7].toString();
        boolean found = (first() != null) & userEnabled.equals("Y");
        setWhereClause(null);
        setWhereClauseParams(null);
        setMaxFetchSize(0);
        return found;
      }It gives the same exception...
    JBO-27122: SQL error during statement preparation. Statement: SELECT Staff.STAFF_ID, Staff.FIRST_NAME, Staff.MIDDLE_NAME, Staff.LAST_NAME, Staff.POSITION, Staff.PASSW, Staff.USER_LEVEL, Staff.ENABLED, Staff.PHONE, Staff.EMAIL FROM STAFF Staff WHERE (Staff.STAFF_ID = :0 and Staff.PASSW = :1)
    This worked in 10.0.1.2 but now it does not work in 10.0.1.3!!!

  • How to use ApplicationModule custom methods in JSP?

    I have an ApplicationModule for which I have defined several custom methods (in the ApplicationModuleImpl class). I wish to invoke these methods from a JSP. I'm having trouble getting a scriptable reference to the application module object in the JSP. I can get data from the view objects using the jbo:xxx data tags, but I can't get any sort of reference to the application module object that would allow me to invoke the methods. I have tried editing the application module to expose the methods as client methods, but still can't get a reference to them.
    My main questions:
    1. Is there a way to invoke the custom methods somewhere between the jbo:ApplicationModule tag and the jbo:ReleasePageResources tag?
    2. Is there a way to declare and use the application module without using the jbo:ApplicationModule tag? Would I ever benefit from doing this?

    Alan, here's how to call a custom method String getSomeInfo() that I've created on my application module, MyModule in this example. Also, in this example the id parameter in the ApplicationModule tag is "am" (<jbo:ApplicationModule id="am"...):
    First, edit your application module. In the app module editor, go to the Client Methods tab and move getSomeInfo into the selected list.
    Next, edit your JSP to call your custom method.
    <% MyModule myAm = (MyModule)am.useApplicationModule(); String someInfo = myAm.getSomeInfo(); %>
    You also have to add the correct import statements to the page tag in your JSP:
    <%@ page contentType="text/html;charset=windows-1252" import="oracle.jbo.*, MyModule.common.*"%>
    Hope this helps
    Blaise

  • Start Routine Lookup!

    Hi
    How to write a lookup in Start Routine to calling customer table. we are maintains values in custom table.
    i am
    Regds,DS

    Hi,
    You simply need to create an internal table of type customer table in start routine global declaration part.
    After that you will have to populate that internal table using select query in start routine. e.g.
    SELECT *
    FROM  XYZ
    into table it_xyz
    where key1 = 'AB'. etc.
    In this case XYZ is customer table and it_xyz is internal table. Once values are available in internal table you can use them in field routine or start routine as per the need.
    Regards,
    Durgesh.

  • Internal table on Start Routine

    Hello
    I have 5 key figures. They have an standard routine with a select statement. Basically they have to read an external DSO and get some fields values.
    As all of them have the same SELECT statement I think it would be better to replace this with a select in the Start Routine, in order to improve performance. But unfortunatelly I'm not an abap programmer.
    How could this be replaced in the Start routine ?
    select single EXRATEXACC DOC_CURRCY NETVAL_INV
          into (h_rate, h_dcurr, h_inv)
          from /bic/azsdbiio100
           where BILL_NUM eq SOURCE_FIELDS-/BIC/ZREFDOC
           and BILL_ITEM eq SOURCE_FIELDS-/BIC/ZREFDOCLN
           and COMP_CODE eq SOURCE_FIELDS-COMP_CODE.
      if sy-subrc ne 0. " Not found
            select single EXRATEXACC DOC_CURRCY NETVAL_INV
            into (h_rate, h_dcurr, h_inv)
            from /bic/azsdbiio100
             where DOC_NUMBER eq SOURCE_FIELDS-DOC_NUMBER
             and S_ORD_ITEM eq SOURCE_FIELDS-S_ORD_ITEM
             and COMP_CODE eq SOURCE_FIELDS-COMP_CODE.
         if sy-subrc eq 0.
              h_flag = 'X'.  " Document found
         endif.
      else.
         h_flag = 'X'.  "Document found.
      endif.
    if h_flag = 'X'.
            if h_dcurr ne SOURCE_FIELDS-CURRENCY.
              if h_rate lt 0.
                h_rate = h_rate * ( -1 ).
                clear h_amount.
                if h_inv ne 0.
                  h_amount = h_inv.
                else.
                  h_amount = SOURCE_FIELDS-/BIC/ZG_AVV104 * h_rate.
                endif.
              elseif h_rate gt 0.
                if h_inv ne 0.
                  h_amount = h_inv.
                else.
                  h_amount = SOURCE_FIELDS-/BIC/ZG_AVV104 / h_rate.
                endif.
              else.
                h_amount = SOURCE_FIELDS-/BIC/ZG_AVV104.
              endif.
            else.
              h_amount = SOURCE_FIELDS-/BIC/ZG_AVV104.
            endif.
            RESULT = h_amount.
            CURRENCY = h_dcurr.
          endif.
        endif.

    Hi,
    what you need to do first is to define internal tables in the start routine for each individual routine with the key fields. So look at the different SELECT SINGLE statements and build up the internal table(s). So for the first one you need to define an internal table with fields BILL_NUM, BILL_ITEM, COMP_CODE  (your key) and EXRATEXACC, DOC_CURRCY and NETVAL_INV. I don't know if you can combine the two select single statements, that will depend on if BILL_NUM is the same type of field as DOC_NUMBER.
    After declaration of the internal tables you can fill the bales by doing a SELECT instead of select single INTO the internal table.
    In the individual update rules you can do a READ TABLE (internal table) WITH KEY yyyyyy
    In this way you only have to access the DB once per data package and read from the internal memory for each record, which will definitely improve performance.
    Hope this helps!

  • Idcs6[win/mac] problem naming custom methods inside scripting dom.

    Hi,
    I defined some custom methods for the scripting dom in my model plugin. They are working perfectly, but there's a little problem.
    Following is the declaration of my method:
    resource VersionedScriptElementInfo(0)
        // Contexts
            // Scripting support added at InDesign CS 2.0
            kFiredrakeScriptVersion, kCoreScriptManagerBoss, kInDesignAllLanguagesFS, k_Wild,
            kFiredrakeScriptVersion, kCoreScriptManagerBoss, kInCopyAllLanguagesFS, k_Wild,
    // Elements
            // Specifies an Method
    Method
                kXYZElement,
                e_xyz,
                "getStringoneStringtwoStringthree",
                "Does xyz operation",
                StringArrayType(2),
                "xyz",
                    p_Param1, "param1", "Param1", StringType, kRequired,
                    p_Param2, "param2", "Param2", StringType, kRequired,
            // Connects this plug-in's methods and properties to scripting.
            Provider
                kXYZScriptProviderBoss,    // provider boss ID
                    Object{ kApplicationObjectScriptElement },
                    Method{ kXYZElement},
    Now my problem is that I can access the getStringoneStringtwoStringthree method in the scripting dom but the method name gets converted to getstringonestringtwostringthree
    (the capital letters in the method name get small).
    So, am i missing something during the declaration ? 
    Regards
    maddy1907

    Hi,
    I found the error. You need to define "getStringoneStringtwoStringthree", like "get stringone stringtwo stringthree", 
    Then OMV will show your methods as getStringoneStringtwoStringthree.
    Similarly, you need to do this for parameters name too.
    Regards
    maddy1907

  • DVD Start/Stop and Subclips

    Question: In my browser I have double clicked a clip, it opens in the viewer, I then go to >View>DVD start/stop and the markers are inserted. Once I go back to the browser and highlight the markers and go to Modify>make subclips, FCP will only convert about 27 or 28 of the markers to subclips, when there is actually over 100 markers. Is there a maxium limit on the number of markers that can be converted or that will appear in the browser list? Hope I am clear.
    G5-1.8GHz-2GB DDR SDRAM- 250 ATA HD just upgraded to FCP 5.1
    Thanks,
    Mary
    Power Mac G5   Mac OS X (10.4.8)  

    I've done it both ways, not sure which is easier.
    HDV capture creates individual clips (individual media files) based on the detected start/stop and uses a name you specify at the initiation of the capture appending a sequence number to the end of the name for each new clip. S/S detect always uses the name "Segment". Like the Segment clips, HDV clips are in natural order, as you say. I'm guessing that the file system is smart enough to consider the entire number at the end of a name, but sorts character by charcter if the number is in the middle of the name.
    Just seems a little short sighted to use different naming conventions for essentially the same function, especially when it causes the files to be out of order.

  • I want to install Firefox on a USB thumbdrive and use it on multiple computers

    Is it possible to install Firefox on a USB storage device, (thumbdrive), and be able to start up and use Firefox on various machines, (such as at a public library), without having to perform an installation process on each individual machine?

    It was great to get an answer so fast. I knew there was a simple solution, but I didn't have it at the time! Basically, I tend to get really frustrated, really fast with anyone but Firefox.
    Thanks again, you guys are great!!!
    Kevin Wright

  • Can we use Perform statement in start routine ,Form and endform.

    Hi,
    Can we use Perform statement in start routine ? Then write the ABAP code between Form and Endform.
    Example : Can I use Perform ABC in start routine. Then define ABC at the end of start routine.
          Form ABC,
          ......<ABAP> code .....
          Endform.

    Hi,
    In BI 7.0 we have start routines defined using Class where you might be able to create your own performs, but in case of BW3.5 Start routines are defined using Form so there I don't think it will allow you to create one more form.
    But you can surely try both the approaches.
    Reards,
    Durgesh.

Maybe you are looking for