Concert level instruments problem...

Hello all,
I'm trying to have my Piano sound be used global (i.e. Concert level) while layering it with different splits, on a set level.
I can't get the global "piano" to recieve controller info (e.g., sustain) if the set level instrument is also getting it.
Other than using two different controllers on 2 different MIDI channels (which obvioulsly works) is there a workaround for this?
I've tried creating multiple keyboard objects; different MIDI channels etc. ANd I'm overriding the Concert level setings within the Set level...
Is there something I'm missing - or do you need to do this with 2 separate controllers (or one controller that sends multiple MID channels?)
Thanks in advance!
Tom

This is similar to the 'Don't Laugh' post.. and the fix is the same. Go into Layout mode, select the on-screen sustain pedal and set the 'MIDI Thru' popup in the inspector to your keyboard. It defaults to Automatic.
I tried and channel strips at all levels (concert, set and patch) sustain when the pedal is held.

Similar Messages

  • How to send patch level program changes from concert level instruments?

    Heya,
    Here's the gist of my setup:
    I have two concert level external instrument channel strips (Nord Electro 3 and Prophet 8 module). I am attempting to change the bank on the Electro 3 on a per patch basis. It seems as if the concert level nature of the channel strip is overriding my ability to change on a per patch basis. I am sending out a program change on a certain patch, and it is being reflected in all of the other patches across the concert (this is expected behaviour from reading the manual).
    I've been looking for a way to manually send the program changes on a per patch basis (for these concert level strips), using some sort variation of the override parent setting, but I've been unsuccessful at finding a method for doing this. Is it even possible?
    The behaviour I'm looking to replicate is easily accomplished by manually creating the external instrument channel strip in each of the patches, and then sending out the appropriate program change message. This isn't a problem to do. It is, however, a tad bit cumbersome and sort of defeates the purpose (in my opinion) of having concert level channel strips.
    Any wisdom would be appreciated.
    Cheers,
    Nick

    As far as I know the only way to send program changes is to create channel strips in every patch. I don't use concert level channel strips for that reason.
    One of the advancements is that you can level your external instrument on patch level.
    Tip: create one patch with the channel strips you need and duplicate that one (CMD-D) to create new patches. Works faster for me.

  • Stop adding concert level aux tracks every time I choose a track send

    Howdy all,
    Is anyone else having this annoying problem?
    I am working in a patch, and I want to add an effect, let's say a delay. So I create a new patch level aux input channel strip with a delay insert and set the input to bus 1.
    On my audio channel (that I want delay on) I use send slot 1 to send to bus 1. As soon as I do this, Mainstage creates another aux channel strip with input of bus 1 at the Concert level!
    Then I have to switch to the concert level and delete it. I would like a way to turn off this behavior, but I haven't been able to find it.
    Any suggestions out there?
    thanks!
    Brian

    Well, I've tried both of those and that's where the problems arise.
    If I do "Track -> Create Multiple..." I get the error message "No more tracks available".
    If I create an Audio Object in the Environment, double-click on its icon to transform it into a channel strip, and then try to assign the desired channel, only the channels that are already taken appear in the pull-down menu. If I go back to the Arrange Window and choose "Track -> Create" a new track is created given the same name and linked to the same Audio object and channel as the previously last Audio track. Going back to The Environment I still only have the same channels as before to choose from.
    In GB2, in Cubase and in Sonar all you have to do is create a new track and choose whether you want it to be an Audio track or a Midi track. I just don't get why it has to be so complicated in Logic?
    What am I doing wrong?
    ...tt

  • Row level security problem.

    Hy all, I'm new to Oracle and though i've google it a lot I didn't manage to find a solution to this problem:
    I'm using sql developer and Oracle 10g.
    I have this two tables :
    CREATE TABLE HR_employees
    (codHR NUMBER(3) CONSTRAINT pk_hr PRIMARY KEY,
    coddep NUMBER(4) not null,
    DB_user VARCHAR2(10),
    and
    CREATE TABLE Candid
    (codcan NUMBER(2) CONSTRAINT PK_candidat PRIMARY KEY,
    codHr NUMBER(3) NOT NULL,
    CONSTRAINT FK_CODHR FOREIGN KEY (codHR) REFERENCES HR_employees (codHR) );
    I tried to implement row level security on them by using two views:
    CREATE OR REPLACE VIEW employees_v AS
    SELECT * FROM hr_employees
    WHERE DB_user = user
    UNION
    SELECT * FROM hr_employees
    WHERE codhr=(SELECT codhr FROM hr_employees WHERE db_user=user );
    AND coddep IN (4000,5000);
    CREATE OR REPLACE VIEW candid_v AS
    SELECT cand.*
    FROM candid cand , hr_employees hr
    WHERE cand.codhr= hr.codhr
    AND hr.db_user=user
    UNION
    SELECT cand.* FROM candid cand, hr_employees hr
    WHERE hr.coddep=(SELECT H.coddep FROM hr_employees H
    WHERE H.db_user=user
    AND H.coddep IN (4000,5000) );
    What I want to do is to disconnect and connect with another user from SQL Developer and see different fields based on the user and the department, Sql developer doesn't seem to recognize the user connected to the database..everytime I receive a no row selected statement, only when I connect with SYS and put the actual username WHERE H.db_user='SYS' they seem to work. I have created the tables with SYS and granted Select on the views to the users, the users don't have privilegies on the actual tables.
    Sorry for the bad english,it's a foreign language to me ,
    I hope you can help me

    Hi,
    Damorgan is right: "Row level security has nothing to do with views" in the sense that the two are independent. You can have row-level security with or without views, and you can have views with or without row-level security. dbms_rls is a very useful and powerful way to implement row-level security, and you should check it out, but it's not necessarily the answer to all row-level security problems.
    I'm not sure I understand your problem beyond the need to restrict user A's access to two tables.
    If which rows user A is allowed to see depends on the results of queries from those same tables, including rows that user A is not allowed to see (that is, you need to do sub-queries with some other user's (let's call this user B's) privileges), then you can do those sub-queries in stored procedures.
    Stored procuderes can run with the privileges of the procedure owner, regardless of who is calling them. Using a function called user_codhr owned by user B, you could define a view like this:
    CREATE OR REPLACE VIEW employees_v AS
    SELECT * FROM hr_employees
    WHERE DB_user = user
    OR    (   codhr = user_codhr
          AND coddep IN (4000,5000)
          );If the results of the function will be the same throughout the session, you can call it once, at the beginning of your session, and save the results in a SYS_CONTEXT varaible or a global temporary table.
    If you need more help, post a more detailed example of the problem, such as "With this data in the table, B should see all rows but A should see only ...".

  • Concert level mapping not working

    I've tried  to make my playback controls work on a concert level so I don't have to reset them to each patch. For instance, I tried setting a button to play but it doesn't work. Any ideas?

    Hi
    Where you put the Playback Channel Strips all depends on how you want to work. The basic concept is that at Patch level they will only work in that particular Patch. At Set level they will work throughout that set (with or without additional patches in the same set). At Concert level they are Global.
    You may find it useful to make one Set or Patch with the right number of Playback channels, map the Screen controls, then make copies of the Set/Patch and simply swap out the Playback audio files. That way you only have to do the Control mapping once.
    You could also save the Set/Patch, for future use.
    HTH
    CCT

  • Setup Ivory standalone w/Soundflower or patch at concert level

    I'm playing around with using Ivory's standalone program, and using Soundflower to route the audio back to MainStage. This works as a proof of concept.
    Here's what I trying to get my arms around on this:
    1. Memory. Am I saving anything doing this? Seems that Ivory Standalone is using about 384 MB of RAM (according to Activity Monitor). The MBP has 4 gig in it.
    2. Flexibility. I lose MS' ability to control parameters per MS patch, as Ivory is not acting as an AU here. But okay, per patch, I could EQ, process, mute as needed. Limitation is also that it's always one of Ivory's piano sample sets that's loaded, but then just one.
    I know I could put Ivory at the concert or set level within MS, but I've not figured out how to mute it when not needed or effect/EQ it differently for different songs. Anyone know to do this? I could instantiate Ivory at the concert level, route it to a BUS, then add that bus per patch and EQ/effect ad nauseum. Is that the right routing? if so, then it's essentially functionally equivalent to hosting Ivory outside of MS without the complexity of SoundFlower and routing the audio around at a system level.
    3. Stability. Anyone using Soundflower "for real"? prone to crash??? etc etc etc.

    I've found out most of this on my own.

  • Setting Real Instruments Problem

    I have a problem setting the task info dialog box for real instruments. Although I select Real Instruments on the setup, the task info box shos only choices for software instruments and , I think, master task. Therefore, the box where the input settings are made, is blank. Nothing I do aleviates this problem. If anyone can help me, you can reach me at [email protected]

    I think I know what your going through. I had a similar issue with setting up my guitar. If this info is not related to your particular problem simply disregard it as I am no expert on GarageBand and am learning like you. The problem I came across was that I could not get my Instrument to be recognized as the source of sound for the new track I added. To fix this I simply added a new "basic" track rather then simply a new track. GB then recognized my guitar and allowed me to record my instrument, only I couldnt hear what I was playing until after I had turned "monitoring" on found in the information window on the right hand side of the screen. Then by setting the input to channel 1 I avoided making sound come from only one speaker. Maybe you already know this but I just feel like being helpful in my n00b sorta way. GL

  • Gary level gradient problems !!!

    Hi,guys!
    I have a problems with gary level gradient effect! Like the image below. It have stripes. Not smooth transition. And is it a technical problems? Can't be solved? If it can't be solved,is any ways to change it better,like encoder format,some parameters. If it is my false and it can be solved,what should I do?
    Hope someone help me,THKS!!!

    If you are going to have very slight color differences in a gradient then your best option is to tint the dark toward something like blue and the brighter toward orange just slightly so that the bands break up between the r g and b channels. Then you add some noise. It doesn't matter what kind of display you have if you compress your video for delivery using an mpeg format like h.264 because that is an 8 bit codec so color artifacts will show up. Noise is your friend and unequal rgb values for each channel are also your friend so you can break up the differences between the channels in more steps. The biggest problem with digital displays is that all color values are quantified so you have to learn to work with your design to minimize problems.
    I hope you understand what I am saying. A gradient with RGB values of 2, 4, and 9 at one end blending to 22, 35 and 19 at the other end are going to have a lot more bands in the image than a gradient that moves all values up 10 or 15 points equally because the banding in red is going to be in a different position than the banding in blue and so on. This helps hide the banding and also improves the chances that compressing to mp4 for delivery will build up fewer blocky color artifacts.
    Another trick is to use a feathered mask on a solid color as an overlay on an image that has a texture. Something simple like rice paper or even a fractal with a blended (multiply blend mode) dark overlay with a feathered mask will work much better than a simple gradient background.

  • Aggregation level activation problem

    Hello experts.
    I have a problem with activation of aggregation level with abap program. When I debug the program i saw error like 'BWTK907074 BEX report is unavailable.' . Its a request code. Now i dont know how to pass this step and activate aggregation level.
    Best Regards
    Bilal
    "If it is Nescessary my code is:
    REPORT  z_activate_obj.
    DATA stat TYPE rsobjstat.
    DATA cube TYPE rsinfocube.
    TYPE-POOLS rsds.
    DATA  :  rspar_tab  TYPE TABLE OF rsparams ,
             rspar_line LIKE LINE OF rspar_tab.
    DATA zaglevel LIKE STANDARD TABLE OF rspls_alvl.
    DATA wa1 LIKE LINE OF  zaglevel .
    ZFI_M01
    SELECT SINGLE infocube objstat
    INTO (cube,stat)
    FROM rsdcube
    WHERE objvers  EQ 'A'.
    IF stat NE 'ACT'.
      PERFORM act_mpro USING cube.
    ENDIF.
    SELECT *
    INTO TABLE zaglevel
    FROM rspls_alvl
    WHERE objvers  EQ 'A'
      AND objstat  EQ 'INA'.
    LOOP AT zaglevel INTO wa1.
      PERFORM act_agglevel USING wa1-aggrlevel.
    ENDLOOP.
    *&      Form  ACT_mpro
    FORM act_mpro  USING    p_cube.
      rspar_line-selname = 'P_AREA'.
      rspar_line-kind    = 'P'.
      rspar_line-sign    = 'I'.
      rspar_line-option  = 'EQ'.
      rspar_line-low     = 'X'.
      APPEND rspar_line TO rspar_tab.
      rspar_line-selname = 'SO_MPRO'.
      rspar_line-kind    = 'S'.
      rspar_line-sign    = 'I'.
      rspar_line-option  = 'EQ'.
      rspar_line-low     = p_cube.
      APPEND rspar_line TO rspar_tab.
      DATA: number           TYPE tbtcjob-jobcount,
            name             TYPE tbtcjob-jobname ,
            print_parameters TYPE pri_params.
      CONCATENATE 'Activate' p_cube INTO name SEPARATED BY space.
      CALL FUNCTION 'JOB_OPEN'
        EXPORTING
          jobname          = name
        IMPORTING
          jobcount         = number
        EXCEPTIONS
          cant_create_job  = 1
          invalid_job_data = 2
          jobname_missing  = 3
          OTHERS           = 4.
      SUBMIT rsdg_mpro_activate WITH SELECTION-TABLE rspar_tab
                                VIA JOB name NUMBER number
                                AND RETURN.
      IF sy-subrc = 0.
        CALL FUNCTION 'JOB_CLOSE'
          EXPORTING
            jobcount             = number
            jobname              = name
            strtimmed            = 'X'
          EXCEPTIONS
            cant_start_immediate = 1
            invalid_startdate    = 2
            jobname_missing      = 3
            job_close_failed     = 4
            job_nosteps          = 5
            job_notex            = 6
            lock_failed          = 7
            OTHERS               = 8.
      ENDIF.
    ENDFORM.                    " ACT
    *&      Form  ACT_AGGLEVEL
    FORM act_agglevel  USING    p_agglevel.
      DATA: l_t_return TYPE STANDARD TABLE OF bapiret2,
            l_s_return TYPE bapiret2,
            l_subrc TYPE sysubrc,
    l_t_alvl TYPE STANDARD TABLE OF rspls_alvl,
    l_s_alvl TYPE rspls_alvl,
      l_t_alvl_iobj TYPE STANDARD TABLE OF rspls_s_rfc_alvl_iobj.
      data zreturn like LINE OF l_t_return.
      CALL FUNCTION 'RSPLS_ALVL_CHANGE'
        EXPORTING
          i_aggrlevel    = p_agglevel
        IMPORTING
          e_subrc        = l_subrc
        TABLES
          i_tk_alvl_iobj = l_t_alvl_iobj
          e_tk_return    = l_t_return.
      CHECK l_subrc = 0.
      CALL FUNCTION 'RSPLS_ALVL_CHECK'
        EXPORTING
          i_aggrlevel = p_agglevel
          i_objvers   = 'A'
        IMPORTING
          e_subrc     = l_subrc
        TABLES
          e_tk_return = l_t_return.
      CHECK l_subrc = 0.
      CALL FUNCTION 'RSPLS_ALVL_ACTIVATE'
        EXPORTING
          i_aggrlevel = p_agglevel
        IMPORTING
          e_subrc     = l_subrc
        TABLES
          e_tk_return = l_t_return.
    loop at l_t_return into zreturn.
      WRITE zreturn-message.
    ENDLOOP.
    ENDFORM.                    " ACT_AGGLEVEL

    Hi,
    Check the link and manupulate your code accordingly..
    [Activate all the Aggregation level of underlying multi provider;
    Thanks
    Pratyush

  • Same condition type on header and item level = printing problem

    Hi
    I have a customer using some condition types on both item level and header level in quotations, orders, invoices ...
    In the pricing procedures it is customized (V_T683S-DRUKZ) that the conditions must be printed on header level (that is at the bottom of the documents).
    My job is to make the Smartform to print the documents, and I want it of course to be as close to SAP standard as possible.
    SAP standard will print these conditions on header level even if the conditions are at item level, but my customer wants the conditions created on header level to be printed on header level and conditions created on item level to be printed on item level.
    I'm no pricing expert, so my question is:
    Will it be fair if I tell the customer that using the same condition types on header and item level is bad practices - or at least bad karma?
    Best regards
    Thomas Madsen Nielsen

    Hi Shiva Ram and Madhu
    I have no problem understanding header vs. item conditions, so I really don't see anything in oss note 876617, that is relevant in this case.
    Madhu - I do not agree that everything is fine. My issue is that I want to stick as closely to SAP standard customizing as possible. In SAP standard customizing of a condition type you can use the flag V_T683S-DRUKZ to determine if the condition should be printed on header OR item level - you can not choose both header AND item level.
    I have a SAP standard smartform using two functions modules for reading header and item conditions. RV_PRICE_PRINT_ITEM and RV_PRICE_PRINT_HEAD. These function modules are based on the DRUKZ customizing flag and a condition marked for printing on header level will be supplied by RV_PRICE_PRINT_HEAD even when the condition is on item level.
    My point is: SAP standard customizing does not support printing of same condition on both header and item level. I can of course write tons of code to work around this problem, but that would be bad practices

  • Merged projects - topic-level tag problems in sub-projects

    I am working on an extensive help file in RoboHelp HTML. It
    consists of a master project and 15 sub-projects. Each of the sub
    projects have topic-level conditional tagging, and when each
    sub-project is compiled, the topic-level tagging works and the CHM
    is correct in regards to what topics are included and excluded.
    However, when I compile the master project, it seems that RoboHelp
    disregards ALL topic-level tagging in the sub-projects. So, the CHM
    for configuration A includes all sub-project topics for
    configurations A, B, C, and D. The topics are in the TOC and they
    appear as search results. We are not using an index, but binary
    index is checked in the project settings.
    The same four configurations in the sub-projects are also in
    the master project, but the conditional tag expressions aren't
    word-for-word identical. Should they be?
    Note that the content-level tagging within the sub-projects
    DOES work when the master project is compiled. For some reason, the
    problem is isolated to the topic-level tagging.

    I think I'm the one causing the problem - I don't think I
    read your initial post carefully enough. Sorry...
    I can't figure out how this is happening. When you merge
    .chms, you have already compiled the 'slave' projects. The link
    from the master TOC points to a slave .chm - which you say is
    working correctly when opened on its own.
    Since the slaves and masters are compiled independently,
    there shouldn't be any interaction between the master and slave
    build expressions - and if there is one, it should be excluding
    more topics, not including more topics!
    The typical problems people have with merged .chms seem to be
    TOC issues (does the master TOC show up, or just the slave
    project's TOC?) and path issues (the master can't find the slaves).
    However, I did see one or two posts on this forum where the master
    was pointing to old copies of the slave .chm - could you have a
    "complete" .chm lurking about?
    BTW, according to RH help, binary indexes are fine in merged
    HTMLhelp. Binary TOCs are not. I don't think you have this problem,
    because the symptoms are different, but you could take a look - the
    setting is in the HTMLHelp Generate wizard. Click the [Advanced]
    button on the first wizard page and look on the TOC tab to make
    sure Binary TOC is not checked.
    You might also do a quick search on the General
    Info/HTMLHelp/RH for HTML forums for "merged .chm" - you might
    recognize a symptom in someone's post that I didn't catch.
    Good luck,
    Elisa

  • ML single-level determination problems

    Hi,
    we have some problems about single-level determination:
    category                        quantity                  prelimval                   price diff             price
    Beginning Inventory      55,821,791.824      4,326,188.88            0.00                     77.50
    Receipts                        84,472,000             7,301,759.68            3,116,204.28      123.33
       Cumulative Inventory 140,293,791.824    12,126,995.37          3,116,204.28      108.65
    Consumption                 93,890,170             8,115,866.30            2,085,487.50       108.65
         Not Allocated           0                             0.00                          *592,153.96*
         Production               48,880,000              4,225,187.20            *493,568.10*
             6.1111004 LG01 387,000                   33,452.28                 8,596.04              108.65
             6.1111009 LG01 693,000                   59,902.92                 15,392.91            108.65
             6.4510111 LG01 39,939,000              3,452,327.16            *298,671.23          93.92*
             6.1111005 LG01 387,000                   33,452.28                 8,596.04              108.65
             7.5710050200 LG01 94,000               8,125.36                   2,087.93               108.65
    Ending Inventory          46,403,621.824       4,011,129.07            1,030,716.78        108.65
    material 6.4510111 was allocated 298,671.23, but 887,124.66 (2,085,487.50 * 39,939,000 / 93,890,170) is the correct amount, who can tell me y ? tks..

    Hi
    Single level price determination is to calculate the unit price of material for a period. It takes into account the price differneces arising out of Price Differences like GR/IR Differences, Exchange Rate Differences, and revaluation differences to calculate the actual price of  a material.
    You can have more information of Single Level Price Determination at the following link:
    http://help.sap.com/saphelp_47x200/helpdata/en/d2/cb4f37455611d189710000e8322d00/frameset.htm
    Regards,
    Suraj

  • Row-level security problem using VPD

    Hi all,
    I've implemented row-level security for my application using the following procedure:
    1) Created a procedure for setting the context for the application:
    PROCEDURE set_empno
    IS
    emp_id NUMBER;
    BEGIN
    BEGIN
    SELECT empno
    INTO emp_id
    FROM SCOTT.EMP
    WHERE upper(ename) = SYS_CONTEXT('USERENV', 'SESSION_USER');
    DBMS_SESSION.SET_CONTEXT('emp_sel_context', 'empno', emp_id);
    EXCEPTION
    WHEN OTHERS THEN emp_id := 0;
    END;
    END;
    2) Created the application context:
    CREATE CONTEXT emp_sel_context USING secman.app_security_context;
    In which secman is my security schema and app_security_context is the name of above procedure package.
    3) Created a function to access the application context:
    FUNCTION emp_sec(E1 VARCHAR2, E2 VARCHAR2) RETURN VARCHAR2
    IS
    e_predicate VARCHAR2(2000);
    BEGIN
    e_predicate := 'empno = SYS_CONTEXT(''emp_sel_context'', ''empno'')';
    RETURN e_predicate;
    END;
    END;
    4) Created a logon trigger:
    CREATE OR REPLACE
    TRIGGER INIT_CONTEXT AFTER
    LOGON ON DATABASE
    BEGIN
    SECMAN.APP_SECURITY_CONTEXT.SET_EMPNO;
    END;
    5) Added a policy on scott.emp like this:
    begin
    dbms_rls.add_policy (
    object_schema => 'SCOTT',
    object_name => 'EMP',
    policy_name => 'EMP_SEL_POLICY',
    function_schema => 'SECMAN',
    policy_function => 'EMP_SECURITY.EMP_SEC',
    statement_types => 'SELECT',
    update_check => TRUE
    end;
    My problem is that when a user queries the EMP table the above procedure does not work and 'no rows selected' is returned for each user that queries the table. Does anybody know which part of my procedure is wrong?
    Any helps is really appreciated.
    S/\EE|)

    i,
    I suggest:
    create another table emp1(logon with scott),this table only include empno,ename,then insert a few record,then modify
    procedure set_empno as
    PROCEDURE set_empno
    IS
    emp_id NUMBER;
    BEGIN
    BEGIN
    SELECT empno
    INTO emp_id
    FROM SCOTT.EMP1
    WHERE upper(ename) = SYS_CONTEXT('USERENV', 'SESSION_USER');
    DBMS_SESSION.SET_CONTEXT('emp_sel_context', 'empno', emp_id);
    EXCEPTION
    WHEN OTHERS THEN emp_id := 0;
    END;
    END;
    certainly ,you should grant select on emp1 to the user who will be test.
    lixinzhu
    2007/09/17

  • Isolation level SERIALIZABLE problem

    Hi there,
    I have a problem with my stored procedures when the isolation level of the connection is serializable. I need to set this isolation level because of data consistency reasons.
    When in this isolation level and a transaction tries to update or delete data modified by a transaction that commits after the serializable transaction began, I get this error:
    ORA-08177: Cannot serialize access for this transaction
    This is normal. The thing to do in this case is catch the error in the exception handler, rollback to a certain savepoint and try to do the update again.
    The stored procedure that I use to test this is:
    CREATE OR REPLACE PROCEDURE nm_test IS
    tmpVar NUMBER;
    err_num NUMBER;
    err_msg VARCHAR2(200);
    teller number;
    BEGIN
    teller := 0;
    savepoint sp1;
    <<try_every_thing_again>>
    begin
    tmpVar := 0;
    update stock_prices set price = price + 1
    where ric = 1;
    DBMS_OUTPUT.Put_Line('teller = ' || teller);
    EXCEPTION
    WHEN others THEN
    err_num := SQLCODE;
    --err_msg := SUBSTR(SQLERRM, 1, 200);
         if (err_num = -8177) then
              rollback to savepoint sp1;
              --DBMS_LOCK.SLEEP(1);
              teller := teller + 1;
              if (teller < 10) then
                   goto try_every_thing_again;
              end if;
              DBMS_OUTPUT.Put_Line('exception: teller = ' || teller);
         end if;
    end;
    END nm_test;
    I test this using 2 connections to the database. In the first connection I run the stored proc (without committing). Then I run the same stored proc in the second connection. This will block on the update (the is an implicit lock), which is ok. Then I commit the first connection. The second catches the error, rolls back and tries the update again....but then it catches the exception again, and again???
    When I replace the "rollback to savepoint" by just "rollback", everything works fine (the exception is then caught only once) and the update succeeds on the second try.
    But I can not work with just a "rollback" because my stored procedures might be called by others for which I don't want to undo all the work.
    Do any of you know why I keep getting this error (the program ends up in an infinite loop if I didn't keep a counter and exit after 10 times)?
    Marcel van Vuure

    Marcel,
    First of all, I'd be interested in hearing why you think you need serializable transactions (why 'read committed' doesn't work for your application). In the 8 years I've been building Oracle apps, I've never deemed it necessary to use serializable transactions. Maybe an optimistic locking strategy will solve your problem.
    Secondly, if I were designing the interface, I wouldn't have a procedure in charge of both executing business logic AND retrying the logic in case of failure. I'd build a helper procedure that calls the procedure that does the work, looks for certain exceptions, and retries the procedure when necessary.
    Lastly, if your interface doesn't have transactional control (the caller is in charge of commits and rollbacks), maybe you should simply attempt the update statement and throw an exception to the caller and let them handle it.
    I'm sorry if I haven't directly solved your problem, but sometimes the best way to solve a problem is to question the decisions that got you there in the first place.
    Hi there,
    I have a problem with my stored procedures when the isolation level of the connection is serializable. I need to set this isolation level because of data consistency reasons.
    When in this isolation level and a transaction tries to update or delete data modified by a transaction that commits after the serializable transaction began, I get this error:
    ORA-08177: Cannot serialize access for this transaction
    This is normal. The thing to do in this case is catch the error in the exception handler, rollback to a certain savepoint and try to do the update again.
    The stored procedure that I use to test this is:
    CREATE OR REPLACE PROCEDURE nm_test IS
    tmpVar NUMBER;
    err_num NUMBER;
    err_msg VARCHAR2(200);
    teller number;
    BEGIN
    teller := 0;
    savepoint sp1;
    <<try_every_thing_again>>
    begin
    tmpVar := 0;
    update stock_prices set price = price + 1
    where ric = 1;
    DBMS_OUTPUT.Put_Line('teller = ' || teller);
    EXCEPTION
    WHEN others THEN
    err_num := SQLCODE;
    --err_msg := SUBSTR(SQLERRM, 1, 200);
         if (err_num = -8177) then
              rollback to savepoint sp1;
              --DBMS_LOCK.SLEEP(1);
              teller := teller + 1;
              if (teller < 10) then
                   goto try_every_thing_again;
              end if;
              DBMS_OUTPUT.Put_Line('exception: teller = ' || teller);
         end if;
    end;
    END nm_test;
    I test this using 2 connections to the database. In the first connection I run the stored proc (without committing). Then I run the same stored proc in the second connection. This will block on the update (the is an implicit lock), which is ok. Then I commit the first connection. The second catches the error, rolls back and tries the update again....but then it catches the exception again, and again???
    When I replace the "rollback to savepoint" by just "rollback", everything works fine (the exception is then caught only once) and the update succeeds on the second try.
    But I can not work with just a "rollback" because my stored procedures might be called by others for which I don't want to undo all the work.
    Do any of you know why I keep getting this error (the program ends up in an infinite loop if I didn't keep a counter and exit after 10 times)?
    Marcel van Vuure

  • Top Level Navigation Problem

    Hi guys,
    recently, I ran into something really strange. The Top Level Navigation (TLN) became faulty. If the user clicks on certain entries in First Level Navigation or Second Level Navigation the content area is not loaded properly. The content area stays empty as well as the detailed navigation iView (no navigation entries listed). Furthermore, the TLN does not get updated.
    The weird thing is it only affects a few users and the set of affected navigation tabs is different for every user. The problem affects standard tabs (System Administration, Content Administration, etc.) as well as custom tabs. The set of affected users and the set of affected tabs seems to be arbitrary chosen.
    A new log entry is written every time the problem occurs. Find an example below: 
    <i>
    [PortalNode.fireEventOnNode.toEventListener] event=onNodeReadyEvent, target=com.sap.netweaver.coll.CollaborationDetailedNavigation, operation failed
    [EXCEPTION]
    java.lang.NullPointerException
         at com.sapportals.portal.navigation.CollaborationNavTree.isCollaborationNode(CollaborationNavTree.java:490)
         at com.sapportals.portal.navigation.CollaborationNavTree.doOnNodeReady(CollaborationNavTree.java:227)
         at com.sapportals.portal.prt.component.AbstractPortalComponent.handleEvent(AbstractPortalComponent.java:388)
         at com.sapportals.portal.prt.pom.ComponentNode.handleEvent(ComponentNode.java:252)
         at com.sapportals.portal.prt.pom.PortalNode.fireEventOnNode(PortalNode.java:369)
         at com.sapportals.portal.prt.pom.AbstractNode.addChildNode(AbstractNode.java:340)
         at com.sapportals.portal.pb.PageBuilder.createAndAddEmbeddediView(PageBuilder.java:174)
         at com.sapportals.portal.pb.PageBuilder.createiView(PageBuilder.java:387)
         at com.sapportals.portal.pb.PageBuilder.createAndAddiViews(PageBuilder.java:230)
         at com.sapportals.portal.pb.PageBuilder.doOnNodeReady(PageBuilder.java:572)
         at com.sapportals.portal.prt.component.AbstractPortalComponent.handleEvent(AbstractPortalComponent.java:388)
         at com.sapportals.portal.pb.PageBuilder.handleEvent(PageBuilder.java:741)
         at com.sapportals.portal.prt.component.CachablePortalComponent.handleEvent(CachablePortalComponent.java:703)
         at com.sapportals.portal.prt.pom.ComponentNode.handleEvent(ComponentNode.java:252)
         at com.sapportals.portal.prt.pom.PortalNode.fireEventOnNode(PortalNode.java:369)
         at com.sapportals.portal.prt.pom.AbstractNode.addChildNode(AbstractNode.java:340)
         at com.sapportals.portal.prt.core.PortalRequestManager.runRequestCycle(PortalRequestManager.java:642)
         at com.sapportals.portal.prt.connection.ServletConnection.handleRequest(ServletConnection.java:240)
         at com.sapportals.portal.prt.dispatcher.Dispatcher$doService.run(Dispatcher.java:522)
         at java.security.AccessController.doPrivileged(AccessController.java:242)
         at com.sapportals.portal.prt.dispatcher.Dispatcher.service(Dispatcher.java:405)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.servlet.InvokerServlet.service(InvokerServlet.java:156)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:390)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:264)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:347)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:325)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:887)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:241)
         at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)
         at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:148)
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
         at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
         at java.security.AccessController.doPrivileged(AccessController.java:215)
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)
    </i>
    While searching SDN I found a SAP Note that might be interesting. SAP Note 982496 contains the description of a similar problem with almost the same error message. However, this SAP Note describes a problem of NW 2004 SPS 17. A problem that should be solved in newer releases. We patched our system last time (NW2004s SPS 09) a few month ago. We never had any similar problems until last week when the above described problems started.
    Unfortunately, the problem starts to escalate. More and more users and more and more navigation tabs are affected.
    Does anyone of you have any experience with this kind of problems? Please suggest how to troubleshoot and solve this very annoying problem. Of course, I am going to reward helpful answers.
    Best regards,
    Martin

    Hi Harini,
    thanks for your suggestions.
    1) Clearing the browser cache did not help at all.
    2) We disabled the navigation cache a long time ago. That means navigation is not cached.
    3) We are going to restart the portal server today. I keep you updated.
    Best regards,
    Martin

Maybe you are looking for

  • List View WebPart custom XSL link disabled Ribbon Buttons

    Hi, I have added and external XSLT file for my List View web part. I followed these options in browser -> Edit page -> Edit web part -> Under Miscellaneous updated XSL Link. I am using this xslt file to add background colors to one of my column. The

  • ERROR 1002 WHILE ROCOVERY DISK HP G60-441 US WINDOWS VISTA 32BIT

    I HAVE HP G60-441US MODEL WITH WINDOWS VISTA 32BITS, PRODUCT NUMBER NW142UA. I TRY TO MAKE ROCOVERY DVD DISK WITH RECOVERY MANAGER BUT IT IS FIALED ON 2ND DVD. THEN I TRY TO RECOVERY WITH RECOVERY MANAGER IT SHOWS ME ERROR 1002 WHILE I PRESS OK ; COM

  • Problem In F110  with status message " Payment run has been released "

    Dear Friends, We have an Strange issue in payment program... While executing the payment program they got below Status Messages Parameters have been entered Payment proposal has been created Payment proposal has been edited *Payment run has been rele

  • Move percent in pie chart?

    I'd like to be able to shift the percentage number in a pie chart slightly to add text below it with a text block. Is there any way to do this? It seems I can just have the percentage amount appear either inside or outside the pie piece, but can't po

  • Migrate data for few infotypes

    hello Experts, I have a requirement. I am joining a client and client wants to transfer data for infotypes 0000, 0001,0002 and 1000 and 1001. I want to knw how do i go about it.correct and also please specify if i m technically wrong. 1. create a dis