The execution time of init() and start().

Hi everybody,
I am reading The Complete Reference Java 2 (1999).
It says "Whereas init() is called once -- the first time an applet is loaded -- start() is called each time an applet's HTML document is displayed onscreen. So, if a user leaves a web page and comes back, the applet resumes execution at start()"
According to the above words, I think an applet is initialized at the point of starting the HTML file containing the applet for the first time, i.e., init() is called. At the same time, start() is called following init(). Then if input a URL to start another HTML file and press "Back" button of the browser, start() should be called once more. Implicitly, only one instance of that applet is created and it exists until the user closes the browser.
I tried to test it using the code as bellow. In init(), String msg is initialized using current time. Instance variable i is defined with default value 1 and increased by 1 in start(). I supposed the time contained in msg remained constant and variable i increased one by one while going to a different URL and coming back repeatly.
Unfortunately, the time changed each time when coming back from another URL and i did not increase. It seems that a new instance (object) is created at that point. If so, differenciating init() and start() makes no sense. I am confused with it . Can anybody give me some further information? Thank you very much.
Source Code:
<code>
import java.awt.*;
import java.applet.*;
import java.util.*;
<applet code="TestApplet" width=500 height=50>
</applet>
public class TestApplet extends Applet {
String msg;
int i = 1;
// Set colors and initialize thread.
public void init() {
setBackground(Color.cyan);
setForeground(Color.red);
msg = " A Simple Moving Banner." + Calendar.getInstance().getTime();
// Start thread
public void start() {
     msg = msg + " [" + i + "]";
     i ++;
repaint();
// Display the banner.
public void paint(Graphics g) {
g.drawString(msg, 50, 30);
</code>
HTML Sample:
<code>
<html>
<body>
<applet code="TestApplet" width=500 height=50>
</applet>
</body>
</html>
</code>

try this :
public class TestApplet extends Applet {
String msg;
static int i = 1;

Similar Messages

  • Can you clear the old time machine backups and start fresh?

    Is there a way to delete all of the backup sets at once, and start fresh with a new set of backups?

    Do you really need Time Machine? It installed itself using my 300GB ext. drive. I never used it but watched it working-hard ever hour. And slowly it started filling-up my ext. drive until it warned me to remove some back-ups.
    So I backed-up (manually) all the files I needed on the Ext. drive, cleaned the ext. drive completely with Disk Utility, disabled Time machine and haven't re-started it.
    Now I see how great Leopard really is. Stable and fast. And now I back-up manually what I need when I need it.

  • My MacBook is almost two years old and has started running really slow. It gets bogged down when it is running different programs at the same time, like Safari and Pages. It didn't react this way until recently. Any advice would be very welcome.

    My MacBook is almost two years old and has started running really slow. It gets bogged down when it is running different programs at the same time, like Safari and Pages. It didn't react this way until recently. Any advice would be very welcome.

    Launch Disk Utility and select the icon of the internal drive (the drive itself, not the volume icons below it.) Is the SMART status "Verified?" If not, replace the drive immediately. If the status is "Verified," the drive may still be failing. Back up all data, if you haven't already done so. Reinstall Mac OS X, then run Software Update. Test with all wired peripherals disconnected. If it's still slow, you have a hardware problem.
    Mac OS X 10.6 Help: Reinstalling Mac OS X

  • OSB: how to figure out the execution time of OSB proxy

    Trying to figure out how to determine the execution time taken for any given OSB proxy. Seems like the OSB built-in alerting facilities can display the average response time of all calls to a proxy but not individually. Is there a way to dig this out from the monitoring data being collected?

    Service monitoring which comes OOTB is supposed to be aggregated because in usual scenarios you dont need to see the processing time of a specific request. From a performance monitoring perspective the useful data usually is average processing time and minimum or maximum processing time for any request within the aggregation interval which is provided by OSB OOTB.
    Now, in some cases the business might want to track each request individually. So, for example they can track how long did it take to process a specific order. OSB does not provide this feature OOTB. There are multiple ways to get this implemented. Two of the most common ways are:
    1. Add a start and end time capturing in Proxy Services. You can use logging/reporting/publish to a DB etc to achieve this. But this is indeed intrusive and you will need to do this for every Proxy which needs to be monitored at every instance level. This is also a slight overhead in processing in itself.
    2. Use monitoring products which can monitor the WS invocations externally. This will mean more investment but definitely a much better solution. You can consider using different products from Oracle and other vendors based on your requirements, features of products and costs. A few examples are OWSM, Oracle EM, CA Wily etc.

  • The execution of PREPARE/INIT/PREPARE_JSPM_QUEUE ended in error.

    Hello,
    We are updating our system Netweaver 7.0 to enhancement package 1. Our system is an ABAP + JAVA system. We are on phase PREPARE and we cannot continue because the following error appears:
    "Trouble Ticket Report
    Installation of enhancement package 1 for SAP NetWeaver 7.0
    SID................: BWD
    Hostname...........: gesbfs10
    Install directory..: /usr/sap/BWD
    Upgrade directory..: /EHP_BWD/EHPI/java
    Database...........: Oracle
    Operating System...: UNIX
    JDK version........: 1.5.0_12 SAP AG
    SAPJup version.....: 3.2.2
    Source release.....: 700
    Target release.....: 700
    Start release SP...: $(/J2EE/StandardSystem/SPLevel)
    Target release SP..: $(/J2EE/ShadowSystem/SPLevel)
    Current usages.....:
    ABAP stack present.: true
    The execution of PREPARE/INIT/PREPARE_JSPM_QUEUE ended in error.
    JSPM could not log in to the Java server with user j2ee_admin. Probably the server is not running or the provided credentials are not correct.
    Forcemode enabled
    JSPM version is 7.01.5.0.20. Current JSPM log directory is /usr/sap/BWD/DVEBMGS06/j2ee/JSPM/log/log_2009_11_06_13_24_06.
    Could not get NWDI system role from CVERS.
    com.sap.sl.util.cvers.api.CVersAccessException: CMSRTS, getModifiedComponents: unknown DB schema, can not write data
    More information can be found in the log file /EHP_BWD/EHPI/java/log/PREPARE_JSPM_QUEUE_CSZ_01.LOG.
    Use the information provided to trouble-shoot the problem. There might be an OSS note providing a solution to this problem. Search for OSS notes with the fol
    lowing search terms:
    com.sap.sdt.j2ee.phases.PhaseTypePrepareJSPMQueue
    com.sap.sdt.sapjup.tools.sapjupjspm.JSPMRapiException
    JSPM could not log in to the Java server with user j2ee_admin. Probably the server is not running or the provided credentials are not correct.
    PREPARE_JSPM_QUEUE
    INIT
    NetWeaver Enhancement Package Installation
    SAPJup
    Java Enhancement Package Installation"
    How could we fix this error?
    Thanks.

    Hi,
    > SID................: BWD
    > Hostname...........: gesbfs10
    > Install directory..: /usr/sap/BWD
    > Upgrade directory..: /EHP_BWD/EHPI/java
    > Database...........: Oracle
    > Operating System...: UNIX
    > JDK version........: 1.5.0_12 SAP AG
    Java 1.5 is not supported by SAP. Check SAP note 723909. Change it to Java 1.4.
    > JSPM could not log in to the Java server with user j2ee_admin. Probably the server is not running or the provided credentials are not correct.
    > Forcemode enabled
    > JSPM version is 7.01.5.0.20. Current JSPM log directory is /usr/sap/BWD/DVEBMGS06/j2ee/JSPM/log/log_2009_11_06_13_24_06.
    > Could not get NWDI system role from CVERS.
    > com.sap.sl.util.cvers.api.CVersAccessException: CMSRTS, getModifiedComponents: unknown DB schema, can not write >data
    Is this  a NWDI system ?
    Thanks
    Sunny

  • My Iphone 4 just updated to the iOS6.  I've connected it to my computer for the first time since then, and wanted to back up my photos in iPhoto.  However, although Iphoto recognized my phone, it shows no photos to upload or backup. ??

    My Iphone 4 just updated to the iOS6.  I've connected it to my computer for the first time since then, and wanted to back up my photos in iPhoto.  However, although Iphoto recognized my phone, it shows no photos to upload or backup.  It lists my phone in the "devices" category on the left bar, but no longer shows any of my photos.
    Does anyone have any suggestions?

    I've reread your question several times and am not sure I understand it.
    Are you trying to basically start over, as if you just took your iPhone out of the box?  If so, do:
    Settings > General > Reset > Erase all content and settings

  • How to get the execution time of a Discoverer Report from qpp_stats table

    Hello
    by reading some threads on this forum I became aware of the information stored in eul5_qpp_stats table. I would like to know if I can use this table to determine the execution time of a worksheet. In particular it looks like the field qs_act_elap_time stores the actual elapsed time of each execution of specific worksheet: am I correct? If so, how is this value computed? What's the unit of measure? I assume it's seconds, but then I've seen that sometimes I get numbers with decimals.
    For example I ran a worksheet and it took more than an hour to run, and the value I get in the qs_act_elap_time column is 2218.313.
    Assuming the unit of measure was seconds than it would mean approx 37 mins. Is that the actual execution time of the query on the database? I guess the actual execution time on my Discoverer client was longer since some calculations were performed at the client level and not on the database.
    I would really appreciate if you could shed some light on this topic.
    Thanks and regards
    Giovanni

    Thanks a lot Rod for your prompt reply.
    I agree with you about the accuracy of the data. Are you aware of any other way to track the execution times of Discoverer reports?
    Thanks
    Giovanni

  • How to find out the execution time of a sql inside a function

    Hi All,
    I am writing one function. There is only one IN parameter. In that parameter, i will pass one SQL select statement. And I want the function to return the exact execution time of that SQL statement.
    CREATE OR REPLACE FUNCTION function_name (p_sql IN VARCHAR2)
    RETURN NUMBER
    IS
    exec_time NUMBER;
    BEGIN
    --Calculate the execution time for the incoming sql statement.
    RETURN exec_time;
    END function_name;
    /

    Please note that wrapping query in a "SELECT COUNT(*) FROM (<query>)" doesn't necessarily reflect the execution time of the stand-alone query because the optimizer is smart and might choose a completely different execution plan for that query.
    A simple test case shows the potential difference of work performed by the database:
    Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production
    Session altered.
    SQL>
    SQL> drop table count_test purge;
    Table dropped.
    Elapsed: 00:00:00.17
    SQL>
    SQL> create table count_test as select * from all_objects;
    Table created.
    Elapsed: 00:00:02.56
    SQL>
    SQL> alter table count_test add constraint pk_count_test primary key (object_id)
    Table altered.
    Elapsed: 00:00:00.04
    SQL>
    SQL> exec dbms_stats.gather_table_stats(ownname=>null, tabname=>'COUNT_TEST')
    PL/SQL procedure successfully completed.
    Elapsed: 00:00:00.29
    SQL>
    SQL> set autotrace traceonly
    SQL>
    SQL> select * from count_test;
    5326 rows selected.
    Elapsed: 00:00:00.10
    Execution Plan
    Plan hash value: 3690877688
    | Id  | Operation         | Name       | Rows  | Bytes | Cost (%CPU)| Time     |
    |   0 | SELECT STATEMENT  |            |  5326 |   431K|    23   (5)| 00:00:01 |
    |   1 |  TABLE ACCESS FULL| COUNT_TEST |  5326 |   431K|    23   (5)| 00:00:01 |
    Statistics
              1  recursive calls
              0  db block gets
            419  consistent gets
              0  physical reads
              0  redo size
         242637  bytes sent via SQL*Net to client
           4285  bytes received via SQL*Net from client
            357  SQL*Net roundtrips to/from client
              0  sorts (memory)
              0  sorts (disk)
           5326  rows processed
    SQL>
    SQL> select count(*) from (select * from count_test);
    Elapsed: 00:00:00.00
    Execution Plan
    Plan hash value: 572193338
    | Id  | Operation             | Name          | Rows  | Cost (%CPU)| Time     |
    |   0 | SELECT STATEMENT      |               |     1 |     5   (0)| 00:00:01 |
    |   1 |  SORT AGGREGATE       |               |     1 |            |          |
    |   2 |   INDEX FAST FULL SCAN| PK_COUNT_TEST |  5326 |     5   (0)| 00:00:01 |
    Statistics
              1  recursive calls
              0  db block gets
             16  consistent gets
              0  physical reads
              0  redo size
            412  bytes sent via SQL*Net to client
            380  bytes received via SQL*Net from client
              2  SQL*Net roundtrips to/from client
              0  sorts (memory)
              0  sorts (disk)
              1  rows processed
    SQL>As you can see the number of blocks processed (consistent gets) is quite different. You need to actually fetch all records, e.g. using a PL/SQL block on the server to find out how long it takes to process the query, but that's not that easy if you want to have an arbitrary query string as input.
    Regards,
    Randolf
    Oracle related stuff blog:
    http://oracle-randolf.blogspot.com/
    SQLTools++ for Oracle:
    http://www.sqltools-plusplus.org:7676/
    http://sourceforge.net/projects/sqlt-pp/

  • Get error message that skype has problem loading when computer is turned on the first time every day. this started when the latest firefox v6.0 was downloaded.

    get error message that skype has problem loading when computer is turned on the first time every day. this started when the latest firefox v6.0 was downloaded.

    ''mbratlie [[#question-1055011|said]]''
    <blockquote>
    It was working fine and I had no problems, and then one day I tried opening a window and it froze. When I tried quiting the program my whole window went black. The x to the close the window doesn't work. The only option I have in my tool bar is Firefox and nothing happens when I try to quit firefox. Every time I try to shut down my computer Firefox prevents it. I haven't updated Firefox yet, so it's an older program, but only by a month or two. What's going on and how do I fix it?
    </blockquote>
    This is the first time it's ever happened. I downloaded the new operating system for Firefox but I can't install it until the Firefox currently running on my laptop quits, which it won't.

  • How to extend the execution time of an ABAP Program using the Process chain

    Hello Sapians,
    Our Environment has got 600seconds = 10 mintues as the execution time.
    My ABAP Program is taking more than this 600 seconds, to show the result, I found this when I tried to execute in debug mode, it shows the result.
    If I execute in background also it shows the results succesfully.
    Only issue is when I execute this report in foreground it has been taking ages and goes on Time OUT Error.
    It has been decided that we can extend the execution time only for this report, and it will reset the time back to 10mintues once the report has been executed successfully or failed in between for any other reasons.
    And we can achieve this by using the process chains.
    Can any body help me please in this regard
    Thanks,

    Hi,,,,,,,,,,
    Besides Process Chain There is another way out for this........
    Resetting time counter of dialog process so that time-out does not
    happen. Use this fm within your program at appropriate locations to
    reset time counter.
    "CALL FUNCTION 'TH_REDISPATCH'."
    Thanks
    Saurabh

  • Why the execution time increases with a while loop, but not with "Run continuously" ?

    Hi all,
    I have a serious time problem that I don't know how to solve because I don't know exactly where it comes from.
    I command two RF switches via a DAQ card (NI USB-6008). Only one position at the same time can be selected on each switch. Basically, the VI created for this functionnality (by a co-worker) resets all the DAQ outputs, and then activates the desired ones. It has three inputs, two simp0le string controls, and an array of cluster, which contains the list of all the outputs and some informations to know what is connected (specific to my application).
    I use this VI in a complex application, and I get some problems with the execution time, which increased each time I callled the VI, so I made a test VI (TimeTesting.vi) to figure out where the problem came from. In this special VI I record the execution time in a csv file to analyse then with excel.
    After several tests, I found that if I run this test VI with the while loop, the execution time increases at each cycle, but if I remove the while loop and use the "Run continuously" funtionnality, the execution time remains the same. In my top level application I have while loops and events, and so the execution time increases too.
    Could someone explain me why the execution time increases, and how can I avoid that? I attached my test VI and the necessary subVIs, as well as a picture of a graph which shows the execution time with a while loop and with the "run continuously".
    Thanks a lot for your help!
    Solved!
    Go to Solution.
    Attachments:
    TimeTesting.zip ‏70 KB
    Graph.PNG ‏20 KB

    jul7290 wrote:
    Thank you very much for your help! I added the "Clear task" vi and now it works properly.
    If you are still using the RUn Continuously you should stop. That is meant strictly for debugging. In fact, I can't even tell you the last time I ever used it. If you want your code to repeat you should use loops and control the behavior of the code.
    Mark Yedinak
    "Does anyone know where the love of God goes when the waves turn the minutes to hours?"
    Wreck of the Edmund Fitzgerald - Gordon Lightfoot

  • Reduce the execution time for the below query

    Hi,
    Please help me to reduce the execution time on the following query .. if any tuning is possible.
    I have a table A with the columns :
    ID , ORG_LINEAGE , INCLUDE_IND ( -- the org lineage is a string of ID's. If ID 5 reports to 4 and 4 to 1 .. the lineage for 5 will be stored as the string -1-4-5)
    Below is the query ..
    select ID
    from A a
    where INCLUDE_IND = '1' and
    exists (
    select 1
    from A b
    where b.ID = '5'
    and b.ORG_LINEAGE like '%-'||a.ID||'-%'
    order by ORG_LINEAGE;
    The only constraint on the table A is the primary key on the ID column.
    Following will be the execution plan :
    Execution Plan
    0 SELECT STATEMENT Optimizer=CHOOSE (Cost=406 Card=379 Bytes=2
    653)
    1 0 SORT (ORDER BY) (Cost=27 Card=379 Bytes=2653)
    2 1 FILTER
    3 2 TABLE ACCESS (FULL) OF 'A' (Cost=24 Card
    =379 Bytes=2653)
    4 2 TABLE ACCESS (BY INDEX ROWID) OF 'A' (Co
    st=1 Card=1 Bytes=6)
    5 4 INDEX (RANGE SCAN) OF 'ORG_LINEAGE'
    (NON-UNIQUE)

    I order it by the org_lineage to get the first person. So it is a result problem? The order by doesn't give you the first person, it gives you a sorted result set (of which there may be zero, one, or thousands).
    If you only want one row from that, then you're spending a lot of time tuning the wrong query.
    How do you know which ORG_LINEAGE row you want?
    Maybe it would help if you posted some sample data.

  • Execution time in minutes and seconds

    In the UUT Report, the Execution Time displays in seconds.  How can I get that to display in minutes and seconds.

    I'm just now getting to this, and I've decided to address this in the reportgen_html.seq.  In the step labelled "Add Execution Time", the expression reads,
    Locals.Header += "<TR><TD NOWRAP='NOWRAP'><B><LI>" + ResStr("MODEL", "RPT_HEADER_EXEC_TIME") + "</B><TD><B>" + (PropertyExists("Parameters.MainSequenceResults.TS.TotalTime") ? Str(Parameters.MainSequenceResults.TS.TotalTime, Parameters.ReportOptions.NumericFormat , 1, True) + ResStr("MODEL", "RPT_HEADER_SECONDS") : ResStr("MODEL", "RPT_NOT_APPLICABLE")) + "</B>\n"
    I found the RPT_HEADER_SECONDS constant and changed it to _MINUTES and changed the string.   I divided the Parameters.MainSequenceResults.TS.TotalTime by 60, and this all seems to work.  The only thing that's not working is that I'm updating the Parameters.ReportOptions.NumericFormat, and no matter what I do it keeps showing me 13 decimal points. 
    The Parameters.ReportOptions.NumericFormat is set to  %$.13f  (but I've tried several variations). 
    I just want it to display something like   21.63 minutes.  Also, what is the $ doing in that expression

  • TO REDUCE THE EXECUTION TIME OF REPORT

    HI,
         CAN ANYONE TELL ME THAT, HOW CAN I REDUCE THE EXECUTION TIME OF THE REPORT. IS THERE ANY IDEA TO IMPROVE THE PERFORMANCE OF THE REPORT.

    Hi Santosh,
    Good check out the following documentation
    <b>Performance tuning</b>
    For all entries
    Nested selects
    Select using JOINS
    Use the selection criteria
    Use the aggregated functions
    Select with view
    Select with index support
    Select … Into table
    Select with selection list
    Key access to multiple lines
    Copying internal tables
    Modifying a set of lines
    Deleting a sequence of lines
    Linear search vs. binary
    Comparison of internal tables
    Modify selected components
    Appending two internal tables
    Deleting a set of lines
    Tools available in SAP to pin-point a performance problem
    <b>Optimizing the load of the database</b>
    For all entries
    The for all entries creates a where clause, where all the entries in the driver table are combined with OR. If the number of entries in the driver table is larger than rsdb/max_blocking_factor, several similar SQL statements are executed to limit the length of the WHERE clause.
    The plus
    Large amount of data
    Mixing processing and reading of data
    Fast internal reprocessing of data
    Fast
    The Minus
    Difficult to program/understand
    Memory could be critical (use FREE or PACKAGE size)
    Some steps that might make FOR ALL ENTRIES more efficient:
    Removing duplicates from the the driver table
    Sorting the driver table
    If possible, convert the data in the driver table to ranges so a BETWEEN statement is used instead of and OR statement:
    FOR ALL ENTRIES IN i_tab
      WHERE mykey >= i_tab-low and
            mykey <= i_tab-high.
    Nested selects
    The plus:
    Small amount of data
    Mixing processing and reading of data
    Easy to code - and understand
    The minus:
    Large amount of data
    when mixed processing isn’t needed
    Performance killer no. 1
    Select using JOINS
    The plus
    Very large amount of data
    Similar to Nested selects - when the accesses are planned by the programmer
    In some cases the fastest
    Not so memory critical
    The minus
    Very difficult to program/understand
    Mixing processing and reading of data not possible
    Use the selection criteria
    SELECT * FROM SBOOK.                   
      CHECK: SBOOK-CARRID = 'LH' AND       
                      SBOOK-CONNID = '0400'.        
    ENDSELECT.                             
    SELECT * FROM SBOOK                     
      WHERE CARRID = 'LH' AND               
            CONNID = '0400'.                
    ENDSELECT.                              
    Use the aggregated functions
    C4A = '000'.              
    SELECT * FROM T100        
      WHERE SPRSL = 'D' AND   
            ARBGB = '00'.     
      CHECK: T100-MSGNR > C4A.
      C4A = T100-MSGNR.       
    ENDSELECT.                
    SELECT MAX( MSGNR ) FROM T100 INTO C4A 
    WHERE SPRSL = 'D' AND                
           ARBGB = '00'.                  
    Select with view
    SELECT * FROM DD01L                    
      WHERE DOMNAME LIKE 'CHAR%'           
            AND AS4LOCAL = 'A'.            
      SELECT SINGLE * FROM DD01T           
        WHERE   DOMNAME    = DD01L-DOMNAME 
            AND AS4LOCAL   = 'A'           
            AND AS4VERS    = DD01L-AS4VERS 
            AND DDLANGUAGE = SY-LANGU.     
    ENDSELECT.                             
    SELECT * FROM DD01V                    
    WHERE DOMNAME LIKE 'CHAR%'           
           AND DDLANGUAGE = SY-LANGU.     
    ENDSELECT.                             
    Select with index support
    SELECT * FROM T100            
    WHERE     ARBGB = '00'      
           AND MSGNR = '999'.    
    ENDSELECT.                    
    SELECT * FROM T002.             
      SELECT * FROM T100            
        WHERE     SPRSL = T002-SPRAS
              AND ARBGB = '00'      
              AND MSGNR = '999'.    
      ENDSELECT.                    
    ENDSELECT.                      
    Select … Into table
    REFRESH X006.                 
    SELECT * FROM T006 INTO X006. 
      APPEND X006.                
    ENDSELECT
    SELECT * FROM T006 INTO TABLE X006.
    Select with selection list
    SELECT * FROM DD01L              
      WHERE DOMNAME LIKE 'CHAR%'     
            AND AS4LOCAL = 'A'.      
    ENDSELECT
    SELECT DOMNAME FROM DD01L    
    INTO DD01L-DOMNAME         
    WHERE DOMNAME LIKE 'CHAR%' 
           AND AS4LOCAL = 'A'.  
    ENDSELECT
    Key access to multiple lines
    LOOP AT TAB.          
    CHECK TAB-K = KVAL. 
    ENDLOOP.              
    LOOP AT TAB WHERE K = KVAL.     
    ENDLOOP.                        
    Copying internal tables
    REFRESH TAB_DEST.              
    LOOP AT TAB_SRC INTO TAB_DEST. 
      APPEND TAB_DEST.             
    ENDLOOP.                       
    TAB_DEST[] = TAB_SRC[].
    Modifying a set of lines
    LOOP AT TAB.             
      IF TAB-FLAG IS INITIAL.
        TAB-FLAG = 'X'.      
      ENDIF.                 
      MODIFY TAB.            
    ENDLOOP.                 
    TAB-FLAG = 'X'.                  
    MODIFY TAB TRANSPORTING FLAG     
               WHERE FLAG IS INITIAL.
    Deleting a sequence of lines
    DO 101 TIMES.               
      DELETE TAB_DEST INDEX 450.
    ENDDO.                      
    DELETE TAB_DEST FROM 450 TO 550.
    Linear search vs. binary
    READ TABLE TAB WITH KEY K = 'X'.
    READ TABLE TAB WITH KEY K = 'X' BINARY SEARCH.
    Comparison of internal tables
    DESCRIBE TABLE: TAB1 LINES L1,      
                    TAB2 LINES L2.      
    IF L1 <> L2.                        
      TAB_DIFFERENT = 'X'.              
    ELSE.                               
      TAB_DIFFERENT = SPACE.            
      LOOP AT TAB1.                     
        READ TABLE TAB2 INDEX SY-TABIX. 
        IF TAB1 <> TAB2.                
          TAB_DIFFERENT = 'X'. EXIT.    
        ENDIF.                          
      ENDLOOP.                          
    ENDIF.                              
    IF TAB_DIFFERENT = SPACE.           
    ENDIF.                              
    IF TAB1[] = TAB2[].  
    ENDIF.               
    Modify selected components
    LOOP AT TAB.           
    TAB-DATE = SY-DATUM. 
    MODIFY TAB.          
    ENDLOOP.               
    WA-DATE = SY-DATUM.                    
    LOOP AT TAB.                           
    MODIFY TAB FROM WA TRANSPORTING DATE.
    ENDLOOP.                               
    Appending two internal tables
    LOOP AT TAB_SRC.              
      APPEND TAB_SRC TO TAB_DEST. 
    ENDLOOP
    APPEND LINES OF TAB_SRC TO TAB_DEST.
    Deleting a set of lines
    LOOP AT TAB_DEST WHERE K = KVAL. 
      DELETE TAB_DEST.               
    ENDLOOP
    DELETE TAB_DEST WHERE K = KVAL.
    Tools available in SAP to pin-point a performance problem
    The runtime analysis (SE30)
    SQL Trace (ST05)
    Tips and Tricks tool
    The performance database
    Optimizing the load of the database
    Using table buffering
    Using buffered tables improves the performance considerably. Note that in some cases a stament can not be used with a buffered table, so when using these staments the buffer will be bypassed. These staments are:
    Select DISTINCT
    ORDER BY / GROUP BY / HAVING clause
    Any WHERE clasuse that contains a subquery or IS NULL expression
    JOIN s
    A SELECT... FOR UPDATE
    If you wnat to explicitly bypass the bufer, use the BYPASS BUFFER addition to the SELECR clause.
    Use the ABAP SORT Clause Instead of ORDER BY
    The ORDER BY clause is executed on the database server while the ABAP SORT statement is executed on the application server. The datbase server will usually be the bottleneck, so sometimes it is better to move thje sort from the datsbase server to the application server.
    If you are not sorting by the primary key ( E.g. using the ORDER BY PRIMARY key statement) but are sorting by another key, it could be better to use the ABAP SORT stament to sort the data in an internal table. Note however that for very large result sets it might not be a feasible solution and you would want to let the datbase server sort it.
    Avoid ther SELECT DISTINCT Statement
    As with the ORDER BY clause it could be better to avoid using SELECT DISTINCT, if some of the fields are not part of an index. Instead use ABAP SORT + DELETE ADJACENT DUPLICATES on an internal table, to delete duplciate rows.
    Good Luck and thanks
    AK

  • Do the execution time of the insert command depend upon the no the indexes

    hi,
    Do the execution time of the insert,update and delete command depend upon the no the indexes created for a table......
    Edited by: [email protected] on Mar 4, 2009 3:02 AM

    sure,..
    An index is a structure which contains entries pointing to the actual data in the table.
    When you insert a record into a table, the data which should also be indexed is inserted in the index structure. This index data needs to be in a specific place, not just anywhere (as opposed to e.g. a heap table).
    So this might lead to an update and insert in the index structure.
    This is just to give you an idea. More on the subject in Tom Kyte's Expert Oracle Database Architecture and of course Oracle's documentation.

Maybe you are looking for

  • Itunes absolutely will not work

    i upgraded itunes, which caused it to stop working...i have uninstalled, reinstalled, system restored, tried everything. i just want my itunes back working. please help me in resolving this issue. i am running norton antivirus 2006 if this makes any

  • Tax And pricing not calculating automatically on Purchase Order

    Hi All, While creating a Purchase order the Taxes are not calculating automatically .We need to manually enter the Tax on the Purchase order .The quantity conversion is not flowing properly so it is effecting the invoice receipt (not distributing the

  • PSA Deletion variant in Process chain

    When I add more than one PSA tables in one process step of Process chain would the deletion happen sequentially or parallelly? In other words, if I have some 20 PSA tables to be deleted, can I put all of them in one step or should I put them in diffe

  • Summing up numbers to a whole number

    Hello everyone, I have this really weird requirement for a payroll implementation I am working on. The client doesn't want any decimal places in payroll results. But the problem comes when you have proration. Oracle hrms has certain events with trigg

  • Resource filter is not working on 'Timesheet Adjustment' page. in project server 2013

    Environment : Project Server 2013 In Time-sheet approval page, Time sheet manager unable to filter the resource time-sheet. In time-sheet adjustment page time-sheet manager unable to filter the data as per resource. Please help to resolve the issue.