'Un-nest' function in PP CS4?

Hey guys,I have been working on a video and I nested some clips together, I havent been able to find an 'un-nest' command, and a quick google search didn't provide me with any help. Is there either a function to un-nest or easy work-around?
Cheers

I guess there's still some confusion over this workflow.  It is more efficient to watch a series of clips, then to watch one clip at a time.  I don't want to watch clips INDIVIDUALLY, I want to watch a SERIES of them, back to back to back to back.  I want to scroll through 10 clips without ever touching the mouse.  The way to do that is to put those 10 clips into a sequence, and cut from that sequence.  I swear to you guys this is normal, particularly for anybody that comes from the world of Media Composer.  Once you've edited this way, the idea of loading an individual clip one at a time seems wasteful and ludicrous.  Every time I'm worrying about what's in the browser, I'm not editing.  Every time my hand leaves the keyboard to go to the mouse to double-click a clip to load it, I'm not editing.  These are time sinks. 
Let's say I've got three takes of the same shot, and they're all roughly similar.  If I'm editing from clips, or subclips, then this is the workflow:
I load scene 12b take 1 into the source.  I watch it.  It's okay.  Next, I take my right hand away from JKL to reach for the mouse/trackball/track pad, mouse over to the browser, double-click on take 2, load it into the source monitor.  Hand moves back to JKL.  I watch the clip.  Okay, it's a'ight.  So now I have to watch take 3.  Again, hand leaves keyboard, clip is double-clicked, hand comes back to JKL.  Now I've watched all three.  Hmm.  Let's take a look at that first one again.  You know where I'm going.  This time I use the mouse to go to the clip select in the source monitor pulldown.  Okay, then I watch the clip again.  Hmm.  Maybe this one.  Let's look at the third one again, because something was weird with the way talent said the word "species."  Okay, up to the source monitor.  Okay, definitely take 1.  Hands off the keyboard again, back to the source monitor.  Okay.  Now I'm ready to mark my ins and outs. 
That's one way to go.  Let's take a look at using sequences. 
I load the scene 12b sequence into the source monitor.  I hit L and start playing.  I've now watched all three takes.  I want to return to the first take, so I hit the "previous edit" key twice.  Now I'm back to take 1.  L button and I'm watching, okay, I've seen all I need, let's hit "next edit" twice and jump to take 3.  Hit L twice to fast forward to the word "species."  Sounds kinda wack.  Let's hit that previous edit key again (I've got it mapped to "A" so my hand never leaves the homekeys) and go back to take 1.  Mark in, mark out, and now it's time to insert this shot into the sequence.
In MC and FCP (using the insert sequence content command instead of the plain insert command), this cuts the clip into the sequence.  In PP, this cuts a nested sequence into my sequence.  For starters, now I am unable to export this sequence as an OMF to get to ProTools.  That's a deal-breaker in a professional environment.  Then, I've got this nested sequence that has no real reason to be nested.  For starters, a quick glance at the timeline reveals not which take I actually used or the name of the master clip, but rather the name of the entire sequence.  Matching back goes back to the sequence, as opposed to the master clip. 
If you already know exactly which take you're going to use, without looking at other takes, then a subclip straight from the bin is a fine edit strategy.  But I've found that circled takes don't always cut well with each other for continuity reasons or technical reasons.  Therefore, being able to watch a series of clips, quickly, without incessant mousing around (which indisputably is slower than tapping a key once or twice) from timelines to monitors to browsers and back is of great importance.  It's a usability issue.  When doing realities or doc stuff, the same is true.  I'd way rather scrub through a whole sequence of shots of "heat energy" than have to load each clip which demonstrates heat energy individually.  That's a real life example from a series of fairly hoaky educational videos I worked on.  We had 100s of tapes worth of footage, and if we had to load individual clips, that would mean scrolling through thousands of clips.  I'd spend more time looking for the actual clip I wanted than watching shots.  As Walter Murch suggests, scanning through footage is also a more helpful process than scanning through folders or bins of clip names.  If I'm scrubbing through a sequence called "HEAT" looking for just the right shot, I'm being exposed to all of my footage, even at high speeds.  I might find something I hadn't thought of using, or see a shot that I might want to use later.  If I'm scanning through a bin looking for a subclip named "boiling water" then I might not see some of that other stuff.  That lessens the chances of happy accidents, and I'm less familiar with the actual visual content of the footage than if I had scrubbed through a sequence.    
This isn't some crack-pot editing method I dreamed up in a vacuum.  It's a pretty common method that has been around as long as NLEs (as far as I know, or at least since I began using professional NLEs in 1999).  Avid editors aren't just salty old-timers who think all this new-fangled stuff is crap.  As any of us, we've all gotten used to FCP, but we're still annoyed by some of the inelegant, time-wasting design flaws.  And as we explore Premiere Pro, the same is true.  Something that requires five keystrokes and click wastes more time than something that requires two keystrokes.  That stuff adds up at the end of the day. 
As for FCPX, the magnetic timeline scares the heck out of me.  Collapsible tracks sound interesting, like a way of opening up a nested sequence, but FCPX most certainly doesn't offer the functionality I'm looking for (about that OMF export... oh yeah, and it doesn't even HAVE a source window, nor can I easily keep things on the tracks I want them on -- nightmare for keeping all of one's music on these two channels, and all of one's VO on that channel... like every broadcaster or client wants their masters tracked out).  Oh, and since I'm talking about tracks... this whole stereo track/mono track thing is a little clunky.  To most editors, we think that a stereo track is just two tracks.  Channel 1 and Channel 2, and those can be panned left and right.  If I have four tracks, I should be able to put L and R in any one of those tracks, and mono clips into any one of those tracks, because there's no difference between a mono clip and a stereo clip's channel 1, except panning.  To have tracks that can only accept one or the other is just plain clunky.  So -- additional feature request.  Let me cut a stereo clip into two mono tracks.  Without having to break-out to mono and perform 3 edits, instead of one. 
I know I've been really verbose.  But, honestly, Premiere Pro is really close to actually being Pro, and I'd love to use an affordable, and feature-full 64-bit NLE that integrates with the other software I use.  On a PC?  Great!  That saves me a grand on hardware.  Premiere Pro can be this software, IF Adobe listens to long-time professional editors and incorporate standard usability.  Not listening to editors is what made FCPX such a lemon. 

Similar Messages

  • Syntax for nested function/procedure?

    Hi,
    What's the syntax to create a sub function/procedure in another function/procedure? Is this available in 9i?
    Thanks.

    Nested functions and procedures have been available since at least 7.3. However, any nested functions or procedures need to be the last things in your declare section.
    This works:
    SQL> CREATE OR REPLACE PROCEDURE test_proc is
      2     l_v VARCHAR2(100);
      3     FUNCTION nested_function RETURN VARCHAR2 IS
      4     BEGIN
      5        RETURN('nested function call') ;
      6     END;
      7  BEGIN
      8     l_v := nested_function;
      9     DBMS_OUTPUT.Put_Line(l_v);
    10  END;
    11  /
    Procedure created.But this does not:
    SQL> CREATE OR REPLACE PROCEDURE test_proc is
      2
      3     FUNCTION nested_function RETURN VARCHAR2 IS
      4     BEGIN
      5        RETURN('nested function call') ;
      6     END;
      7     l_v VARCHAR2(100);
      8  BEGIN
      9     l_v := nested_function;
    10     DBMS_OUTPUT.Put_Line(l_v);
    11  END;
    12  /
    Warning: Procedure created with compilation errors.
    SQL> show err
    Errors for PROCEDURE TEST_PROC:
    LINE/COL ERROR
    7/4      PLS-00103: Encountered the symbol "L_V" when expecting one of the
             following:
    12/0     PLS-00103: Encountered the symbol "end-of-file" when expecting
             one of the following:
             begin function package pragma procedure formTTFN
    John

  • Enabling Nested Functions in Terminal?

    I downloaded, and compiled FUSE, but when I try to "make" it i get this error
    Macintosh-5:fuse-2.7.4 alexcaballero$ make
    Making all in include
    make all-am
    Making all in lib
    if /bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVECONFIGH -I. -I. -I../include -I../include -DFUSERMOUNT_DIR=\"/usr/local/bin\" -DFILE_OFFSETBITS=64 -D_REENTRANT -DFUSEUSEVERSION=26 -Wall -W -Wno-sign-compare -Wstrict-prototypes -Wmissing-declarations -Wwrite-strings -g -O2 -fno-strict-aliasing -MT fuse.lo -MD -MP -MF ".deps/fuse.Tpo" -c -o fuse.lo fuse.c; \
    then mv -f ".deps/fuse.Tpo" ".deps/fuse.Plo"; else rm -f ".deps/fuse.Tpo"; exit 1; fi
    libtool: compile: gcc -DHAVECONFIGH -I. -I. -I../include -I../include -DFUSERMOUNT_DIR=\"/usr/local/bin\" -DFILE_OFFSETBITS=64 -D_REENTRANT -DFUSEUSEVERSION=26 -Wall -W -Wno-sign-compare -Wstrict-prototypes -Wmissing-declarations -Wwrite-strings -g -O2 -fno-strict-aliasing -MT fuse.lo -MD -MP -MF .deps/fuse.Tpo -c fuse.c -fno-common -DPIC -o .libs/fuse.o
    In file included from fuse.c:18:
    ../include/fuse_compat.h:69:24: error: sys/statfs.h: No such file or directory
    In file included from fuse.c:18:
    ../include/fuse_compat.h:91: warning: 'struct statfs' declared inside parameter list
    ../include/fuse_compat.h:91: warning: its scope is only this definition or declaration, which is probably not what you want
    ../include/fuse_compat.h:140: warning: 'struct statfs' declared inside parameter list
    fuse.c:689: warning: 'struct statfs' declared inside parameter list
    fuse.c: In function 'convertstatfsold':
    fuse.c:691: error: dereferencing pointer to incomplete type
    fuse.c:692: error: dereferencing pointer to incomplete type
    fuse.c:693: error: dereferencing pointer to incomplete type
    fuse.c:694: error: dereferencing pointer to incomplete type
    fuse.c:695: error: dereferencing pointer to incomplete type
    fuse.c:696: error: dereferencing pointer to incomplete type
    fuse.c:697: error: dereferencing pointer to incomplete type
    fuse.c: In function 'fusecompatstatfs':
    fuse.c:708: error: storage size of 'oldbuf' isn't known
    fuse.c:708: warning: unused variable 'oldbuf'
    fuse.c: In function 'curr_time':
    fuse.c:1183: error: nested functions are disabled, use -fnested-functions to re-enable
    fuse.c:1183: error: syntax error before 'clockid'
    fuse.c:1184: warning: implicit declaration of function 'clock_gettime'
    fuse.c:1184: error: 'clockid' undeclared (first use in this function)
    fuse.c:1184: error: (Each undeclared identifier is reported only once
    fuse.c:1184: error: for each function it appears in.)
    fuse.c:1186: error: 'CLOCK_REALTIME' undeclared (first use in this function)
    make[1]: * [fuse.lo] Error 1
    make: * [all-recursive] Error 1
    when I try -fnested-functions in the terminal to enable the functions, this error comes up
    Macintosh-5:~ alexcaballero$ -fnested-functions
    -bash: -fnested-functions: command not found
    so how do i enable them?

    Well the thing is that I did install MacFuse, yet the directions I got told me I had to download FUSE as well. I'm trying to mount my Gmail account on my desktop.
    So were these instructions Mac specific? Or where they for Unix/Linux systems running Fuse? Is there a web URL you can give?
    Oh yea, where did you download your Fuse sources from? Just in case someone whats to look at a copy.
    As to your -fnested-functions error:
    fuse.c:1183: error: nested functions are disabled, use -fnested-functions to re-enable
    This is NOT a shell option, but a compiler option. If you wish to pursue this, you would need to change the Makefile so that the compiler using the -fnested-functions option.

  • Nested functions?

    If I insert an IF function in a cell, I expect to be able to insert another function for the condition, but the functions are greyed out.
    Tutorials and the help system don't list nested functions. Anyone point me in the right direction, please?

    Martin Inchley wrote:
    Thanks for this. Seems to work so far. I suppose the reason the other functions button is greyed out is because it is intended primarily for the major summary functions it lists, which would not normally fit within a formula.
    Perhaps it would have been more apt to name this "Formulas" rather than "Function" since the bulk of the items in the pop up menu generate entire formulas (complete with equal sign and "smart" range parameter values) rather than just a function piece of a formula.

  • Enabling nested function?

    I'm trying to "make" FUSE, and i keep getting this error
    fuse.c: In function 'curr_time':
    fuse.c:1183: error: nested functions are disabled, use -fnested-functions to re-enable
    fuse.c:1183: error: syntax error before 'clockid'
    fuse.c:1184: warning: implicit declaration of function 'clock_gettime'
    fuse.c:1184: error: 'clockid' undeclared (first use in this function)
    fuse.c:1184: error: (Each undeclared identifier is reported only once
    fuse.c:1184: error: for each function it appears in.)
    fuse.c:1186: error: 'CLOCK_REALTIME' undeclared (first use in this function)
    make[1]: * [fuse.lo] Error 1
    make: * [all-recursive] Error 1
    i tried -fnested-function but i get
    Macintosh-5:~ alexcaballero$ -fnested-functions
    -bash: -fnested-functions: command not found

    Cross posted in the Mac OS X Technologies -> Unix forum
    <http://discussions.apple.com/thread.jspa?messageID=9073766&tstart=0#9073766>

  • Nested function

    (1)
    i want to add a listener that it will direct to a nested function if it triggered,
    but later i found that i cant name the target event directly as "dragStart", so what should i type?
    (2)
    also, are there some ways that able to do the same tweening effect as the code below but without nesting them?
    i made the tweenings play as one by one.
    thz for any help
    function changeImg() {
        mask1.removeEventListener(Event.ENTER_FRAME, mask1Drag);
        stage.addEventListener(MouseEvent.CLICK, dragStart);
         var maskTween1:Tween = new Tween(mask1,"width",Strong.easeInOut,1,750,1,true);     maskTween1.addEventListener(TweenEvent.MOTION_FINISH, playMaskTween2);
        function playMaskTween2(e) {         var maskTween2:Tween = new Tween(mask1,"width",Strong.easeInOut,750,1,1,true);         maskTween2.addEventListener(TweenEvent.MOTION_FINISH, playMaskTween3);
            function playMaskTween3(e) {             var maskTween3:Tween = new Tween(mask1,"width",Strong.easeInOut,1,750 - mouseX,1,true);             maskTween3.addEventListener(TweenEvent.MOTION_FINISH, dragStart);
               function dragStart(e) {                 maskTween1.stop();
                    maskTween2.stop();
                    maskTween3.stop();
                    mask1.addEventListener(Event.ENTER_FRAME, mask1Drag);

    variable declaration (eg, var maskTween1:Tween) doesn't define the variable.  it triggers memory allocation for that variable but nothing is assigned to that variable.  ie, that variable's value is null.  (the trace() function is single most important tool (by far) to understand actionscript.  use trace(maskTween1) to see its value after declaration and after assign a new Tween() to it.)
    if(maskTween1==true) will always resolve to false.  ie, maskTween1 is never true.
    for listeners that you want to remove, you usually remove them in the listener function as shown below.
      var   maskTween1:Tween
    var maskTween2:Tween
    var maskTween3:Tween
    function changeImg() {
        mask1.removeEventListener(Event.ENTER_FRAME, mask1Drag);
        stage.addEventListener(MouseEvent.CLICK, dragStart);
          maskTween1 = new Tween(mask1,"width",Strong.easeInOut,1,750,1,true);     maskTween1.addEventListener(TweenEvent.MOTION_FINISH, playMaskTween2);
      function playMaskTween2(e) {
      maskTween1.removeEventListener(TweenEvent.MOTION_FINISH, playMaskTween2);
            maskTween2 = new Tween(mask1,"width",Strong.easeInOut,750,1,1,true);
            maskTween2.addEventListener(TweenEvent.MOTION_FINISH, playMaskTween3);    
       function playMaskTween3(e) {
        maskTween2.removeEventListener(TweenEvent.MOTION_FINISH, playMaskTween3);    
               maskTween3 = new Tween(mask1,"width",Strong.easeInOut,1,750 - mouseX,1,true);
                maskTween3.addEventListener(TweenEvent.MOTION_FINISH, dragStart);
    function dragStart(e) {
       stage.removeEventListener(MouseEvent.CLICK, dragStart);
      maskTween3.removeEventListener(TweenEvent.MOTION_FINISH, dragStart);
                    maskTween1.stop();
                     maskTween2.stop();
                     maskTween3.stop();
                     mask1.addEventListener(Event.ENTER_FRAME, mask1Drag);

  • How do I properly use the HDR function in Photoshop CS4?

    It appears that I must be doing something wrong when attempting to use the HDR capability in Photoshop CS4.  I follow the tutorials.  I go to File>Automate>Merge to HDR.  Then I select the bracketed photos to merge.  I have used RAW file combinations of "normal" with +1 and -1 exposures, and "normal" with +2 and -2 exposures.  Inevitably the result comes out looking like the most overexposed shot...or even more washed out.  Since CS4 normally works for me as intended, I feel that I must be doing something wrong with the HDR function.  Can anyone offer any helpful suggestions?  Thanks!

    Don't feel bad.  While I haven't seen just what you're describing, the Merge to HDR function seems, in my opinion, kind of a bust.  I can't say I've seen any "magic" at all in the way it combines the exposures.
    I've tried to use it several times and I just don't see results that make me feel it's worth using.  I have in every case been able to make better images out of a single well-exposed raw file than with the Merge to HDR function and several bracketed exposures (even with CS5's Merge to HDR Pro).
    If people offer suggestions here, I'll be trying them too.
    -Noel

  • Case and decode - nested functions

    Can i use a case statement inside a decode or nvl2 function?
    eg.
    decode(col_a,'ABC',
    case when col_b in (1,2) then 'CCC' else when col_b in (3,4,5) then 'XXX' end
    , 'NA')
    Can i use a function like this basically, can i nest a case statement within a decode or nvl2 function?
    I have used nested decodes and nvls and nested case statements but not combined both so far.... so need an opinion...
    Thanks.
    Edited by: user254668 on Apr 30, 2010 1:35 PM

    user254668 wrote:
    Can i use a case statement inside a decode or nvl2 function? Absolutely. Just get rid of that else:
    decode(col_a,'ABC',
    case when col_b in (1,2) then 'CCC' when col_b in (3,4,5) then 'XXX' end
    , 'NA') SY.

  • Problem with a function of Dreamweaver Cs4

    Hi. Excuse me for my bad Inglish, but i am italian. I have a
    problem with Dreamweaver CS4. Before I have used the last version,
    CS3 and there were a function call image viewer (Insert >
    Multimedia objetcts > Image Viewer). In this new version, this
    function there is not. It's possible create the same effect with
    another function?
    Thank's

    The size of one line is 1024.
    if(bArray.length == 1023){
      out.write(bArray);       
      byte[] temp = new byte[1];       
      temp[0] = 100;       
      out.write(temp);     
    }else{       
      out.write(bArray);     
    In the 27 row the JCO trim the length of the line to 1023 bytes. The last byte is 100.
    And for this Problem I add the byte.
    Regards
    Thomas

  • Question about nested functions

    This can't be done
    for example
    select min(count(*))
    from...
    I need to calculate the minimun of a cuantity I obtain from count(*)
    Any ideas?
    Thanks

    You can nest aggregate functions. Here is what it says in the [SQL Reference|http://download.oracle.com/docs/cd/B19306_01/server.102/b14200/functions001.htm#i89203] .
    You can nest aggregate functions. For example, the following example calculates the average of the maximum salaries of all the departments in the sample schema hr:SELECT AVG(MAX(salary)) FROM employees GROUP BY department_id;
    AVG(MAX(SALARY))
    10925
    This calculation evaluates the inner aggregate (MAX(salary)) for each group defined by the GROUP BY clause (department_id), and aggregates the results again.

  • Nested Smart Objects in CS4 Win

    I made a text layer and converted it to a smart object.
    I copied the smart object.
    When I changed the original smart object, the copy also changed.  So far so good.
    Then I created a second copy of the original smart object and again changed the original.  The change was reflected in both the children.  Still as expected.
    I then combined the two offspring into another smart object.  From then on, updates to the original were not replicated to the children.
    By combining the children into a group instead of a smart object, changes rippled down as expected.
    Is there a limit on nesting depth of smart objects to just one level?  If so, where is it documented, since I have found no mention in the help file?
    Otherwise, what am I doing wrong?
    Thanks.
    PhotoShop CS4 Win XP SP3 fully up to date.

    When nesting a second time, you break the hierarchy. PS has no concept of true instancing, it merely manages hierarchies. It is utterly agnostic of what you do on the lower levels. What you do could probably be done by replacing the content of your smart objects with pre-existiing other SOed files, but depending on how many levels you plan on using, this could become pretty hairy...
    Mylenium

  • Nested functions in XML Publisher

    Hello Everyone,
    I am building a template in MS Word, using the Oracle XML Publisher Template Builder.
    I have data from an Accounts Receivable report that is coming out at 1234,99. I would like it to come out as 1,234.99. So I would want
    1) The comma as a thousands separator.
    2) Instead of the comma as a decimal separator, I want the period as a decimal separator.
    I can use this for the comma thousands separator:
    <?format-number:VAL;'999G999D99'?>
    And I can use this to replace the decimal separator from a comma to a period (thanks to the forums):
    <?xdofx:replace(VAL,',','.')?>
    Can I combine both of these functions together? I am not sure of the syntax.
    Thanks...colin

    <?format-number(xdoxslt:replace(VAL,’,’,’.’),'##,##0.00')?> for
    1234,99
    4444444444,55gives
    1,234.99
    4,444,444,444.55

  • Implements php function in dreamweaver cs4 / cs5

    Hi,
    I made a framwork for my company that develops using php.
    It would be nice to not always having to explain the use of functions, implement dreamweaver, possibly through an extension, the intellisense for these functions.
    for example when using the shell function require me indicates that the function accepts a string. in the case of mysql_connect are advised to enter the host name etc..
    It would be very important to implement something like this for my functions
    is it possible?

    thanks for the reply.
    I analyzed the file codeHints on php but I can not get what I want. I am doing tests on cs5 version.
    I inserted the following code in the file
    [Code]
    <Function pattern = "today (string $eng)" doctypes = "PHP_MySQL" displayrestriction = "PHP_Script" icon = "shared / mm / images / hintFunction.png" casesensitive = "true" MMString: source = "php / CORE" description = "@ # php_CORE3.xml mysql_connect" />
    [/ Code]
    in new php file i put
    function today($a).......
    when i type today(...
    the intellisense show me $a not 'string $eng'....
    the problem may be caused by
    MMString: source = "php / CORE" description = "@ # php_CORE3.xml mysql_connect"
    I do not think because from what I understand this is the explanation of function and not the intellisense
    thanks a lot in anycase
    Ciro Marotta

  • Calling nested function to perform DML and wait for commit

    Hi everybody,
    I would like to do some DML -- an insert statement, to be specific -- in a function and have the function then return the numeric key of the newly added row. I call this function from another context and woud then be able to use the newly added data to do some stuff.
    More specifically, what I am going to do is this: I have a graph consisting of source, destination and distance triplets in a table. A user should now be able to
    1.) add a node 'A' to the graph,
    2.) add a node 'B' to the graph
    3.) get the shortest path from A to B through the graph.
    I have an inner function function INSERT_NEW_NODE(node_in in sdo_geometry, graph_in in integer) return integer
    is 
    pragma autonomous_transaction;
    cursor node_cur is 
      select
          source,
          source_geom
      from graph 
    cursor edge_cur is
        select
            source,
            destination,
            distance,
            edge_geom
        from
          graph
        where
          sdo_geom.relate(edge_geom, 'anyinteract', node_in, .005) = 'TRUE';
    begin
      -- check if identical with any existing node
      for node_rec in node_cur loop 
        if sdo_geom.relate(node_rec.source_geom, 'EQUAL', node_in, .005) = 'EQUAL' then
          return node_rec.source;
        end if;
      end loop;   
      -- get edges
      for edge_rec in edge_cur loop
         -- new_node-->edge.destination and vice versa
        insert into
          graph
            ID,
            GRAPH,
            SOURCE,
            DESTINATION,
            DISTANCE,
            SOURCE_GEOM,
            DESTINATION_GEOM,
            EDGE_GEOM
        values
          graph_id_seq.nextval, --id
          graph_in, --graph
          morton(node_in.sdo_point.x, node_in.sdo_point.y),  -- source morton key
          edge_rec.source, -- destination morton key
          sdo_geom.sdo_distance(edge_rec.source_geom_marl2000, node_in, .005, 'unit=M'), -- distance
          node_in, -- source geom
          edge_rec.source_geom,  -- dest geom
          split_line(edge_rec.edge_geom_marl2000, node_in).segment1 -- edge geom
        commit;
        --new_node-->edge.source and vice versa
        insert into
          gl_graph
            ID,
            GRAPH,
            SOURCE,
            DESTINATION,
            DISTANCE,
            SOURCE_GEOM,
            DESTINATION_GEOM,
            EDGE_GEOM
        values
          graph_id_seq.nextval, --id
          graph_in, --graph
          edge_rec.source, -- source morton key
          morton(node_in.sdo_point.x, node_in.sdo_point.y), -- destination morton key
          sdo_geom.sdo_distance(edge_rec.source_geom, node_in, .005, 'unit=M'), -- distance
          edge_rec.source_geom,  -- source geom
          node_in, -- dest geom
          split_line(edge_rec.edge_geom, node_in).segment2 -- edge geom
        commit;
      end loop
      return(morton(node_in.sdo_point.x, node_in.sdo_point.y));
    end insert_new_node;, which adds the new nodes to the graph, connects, calculates distances etc. and returns a handle to the newly added node. I call this function twice from another, outer function function get_path (line_in in sdo_geometry, graph_in in integer) return sdo_geometry
    is 
    source number;
    destination number;
    source_geom mdsys.sdo_geometry;
    destination_geom mdsys.sdo_geometry;
    begin
      source := insert_new_node(get_firstvertex(line_in), graph_in);
      destination := insert_new_node(get_lastvertex(line_in), graph_in);
      -- source := insert_new_node(get_firstvertex(line_in), graph_in);
      -- destination := insert_new_node(get_lastvertex(line_in), graph_in);
      return(get_path_geom(source, destination)); --returns a geometry which is the shortest path between source and destination
    end get_path;; and I think, I have to use automous transaction in the inner function, so that the outer function can see any change performed by the inner one. However, this only works, when I call the inner function twice (i.e. remove the comment signs in front of the last two lines of code right before the return statement in the outer function.
    So here's my questions: 1.) Why do I have to call the function twice to see the transaction complete? and 2.) How can I avoid that? Is there a way to wait with the execution of the return statement in the inner function until the insert is committed and can be seen by the outer function?
    Cheers!

    Tanks, everybody, for your replies! Let me go through them one by one
    smon asked: if you remove the pragma statement, does it work then?No, it does not, at least not, if I call the function from the outer function. In this case the insert statements in the inner function are not committed.
    If I call the inner function like thisDECLARE
      NODE_IN SDO_GEOMETRY;
      GRAPH_IN NUMBER;
      v_Return NUMBER;
    BEGIN
      NODE_IN := MDSYS.SDO_GEOMETRY(2001,<srid>,MDSYS.SDO_POINT_TYPE(<x>,<y>,<z>),NULL,NULL);
      GRAPH_IN := 3;
      v_Return := INSERT_NEW_NODE(
        NODE_IN => NODE_IN,
        GRAPH_IN => GRAPH_IN
    DBMS_OUTPUT.PUT_LINE('v_Return = ' || v_Return);
      :v_Return := v_Return;
    END;, it works without autonomous transaction, but then again like this I do not use the handle to access the newly inserted data immediately to perform some other task with it.
    sb92075 said:COMMIT inside LOOP is sub-optimal implementation (increases elapsed time) & can result in ORA-01555 error.Thanks, that was very helpful; I changed my code to commit outside of the loop, just before the return statement and it performs a lot faster now.
    user1983440, regarding my statement I think, I have to use automous transaction in the inner function, so that the outer function can see any change performed by the inner one. asked: Are you certain that this is true? No, anything but certain. I should have said "It +seems+, I have to use autonomous transaction". I wish it would work without autonomous transaction, I think it actually should and I wonder why it does not. However, if I do not use autonomous transaction, the outer function seems to try to access the data that I have inserted in the inner function before it is committed, throws a no-data-found-exception, hence a rollback is performed.
    davidp 2 said:The outer function will see whatever the inner function has done, without commit or autonomous transaction [...] In PL/SQL, the default commit is COMMIT WRITE NOWAIT, which I think does mean the transaction might not be instantly visible to the outside transaction, because the call returns before the commit really finishes. Yes, that is my notion, too. However, without autonomous transaction the inner function completes without error, then the outer uses the handles returned by the inner function to call the function <font face="courier">get_path_geom()</font> which cannot find the handles in the graph-table which raises an exception and causes a rollback.
    Let me summarize: The inner function completes fine, without and with autonomous transaction and returns the handle. The inner function commits, if called directly, without and (of course) with autonomous transaction. The outer function does not see the data inserted by the inner function immediately, whether without or with autonomous transaction. If I let the outer function call the inner function twice (4 times, to be specific, but twice for each newly inserted row) from the outer function and do not use autonomous transaction, I get a no-data-found exception. If I let the outer function call the inner function twice and do use autonomous transaction, it works.
    I agree with everything that was said about not using autonomous transaction in this case and I still want to solve this the right way. Any ideas are welcome!

  • Nested functions in javascript!!!

    Hi!
    I'm facing a prob with javascript .
    Can I calla javascript function from another javascript function .
    My code is as follows:
    <html>
    <head>
    <script language="JavaScript">
    function check()
         var a=1;
         alert("In check()");
         check1(a);
         return true;
    function check1(var a)
         alert("in check1 "+a);
         return true;
    </script>
    <title>
    Validation
    </title>
    </head>
    <body>
    <form name="myform" method="post" onSubmit="return false;">
    IP Address :<input type="text" name="ip" maxlength=15 ></input>
    <input type="submit" name="submit" value="Submit" onClick="return check();"></input>
    </form>
    </body>
    </html>
    Any help will be appreciated.
    Thanks

    Sure you can: you just don't declare their types :-)
    ie you don't need "var" in the parameter list for the function.
    You can call the function with more parameters than you specify (access them via the "arguments" keyword in a function)
    You can call the function with less parameters than you specify (surplus parameters will be null).
    function check1(a)
    alert("in check1 "+a);
    return true;
    }

Maybe you are looking for

  • VENDOR CODE -210015

    WHEN I TREY REFRESH REPORT  THEN SHOWING ME ERROR  VENDOR CODE 210015 PLEASE HELP ME

  • Web Server 6.1 and ClassNotFoundException: oracle.jdbc.driver.OracleDriver

    I am trying to set up the Oracle jdbc on Sun ONE Web Server Enterprise Edition 6.1 but do not seem to be having any luck. It seems that OCI and thin fails. I have installed the Oracle client in the folder c:\oracle\ora92. I have selected the followin

  • BBP_CCM_TRANSFER_CATALOG  (product catalog)

    Hi All, We are implementing CCM 2.0 SRM 5.0 TREX 7.0 I could run BBP_CCM_TRANSFER_CATALOG, and I could see the status in green. But in SRM Master Data not show as SRM Server Product Data Catalog type. Could anyone help me? Regards Angie.

  • Inserting media in wiki

    Just set up my first server. I have the wiki running well and can access it with permissions set for different users, etc. I'm having trouble adding content. I cannot find out how to add images / movies to a page. Also , is there a way to create a pa

  • Any way to fix a corrupt disk without a SL disc?

    Ran Disc Utility today and got this: The volume X452 was found corrupt and needs to be repaired. Error: This disk needs to be repaired. Start up your computer with another disk (such as your Mac OS X installation disc), and then use Disk Utility to r