Execution time of a report as a column

Hi Gurus,
Normally if you want to know the report execution time we will go to the Administrator-->manage sessions there we will find the time of execution of the respective reports.
Is it possible to add column(Execution Time) in the report and it as to show the time of that respective report what exactly showing in the manage sessions. Can we achieve this in OBIEE...?
Thanks,
Rafi

Hi Rafi,
If you have enabled usage tracking, make use if Total_time_sec column,
http://gerardnico.com/wiki/dat/obiee/usage_tracking_time_column
Regards,
Dpka

Similar Messages

  • Execution time for the report.

    Dear All,
    How do i determine the execution time of the report?
    If i need to run some program then please do tell me how can i run the program too?
    Thanks..

    Hi,
    The thread below is telling you how to see query statistics in ST03N.
    Re: BEx Query is executed how many times???
    Regards.

  • Execution time for web reports

    Hello every one,
    How to calculate execution time for web reports, for query execution we will go through RSRT, by giving query name and press execute + Debug button then select statistical data & Do not Cache buttons then press enter, after getting output press on back button, we will get duration of the query.....
    But my question is , can we calculate execution time for webreport, if so can you please guide me.
    and can you also tell me , if there is any RRI for one report, how to calculate execution time for these queries.
    Ex : Query ABC have XYZ as its drilldown report , i need to calculate execution time for XYZ report via ABC report.
    Thanks in advance,
    Best Regards.
    NP.

    Hi,
    For reports executed in java web you can add the parameter &PROFILING=X
    to the URL in order to record the execution time. Please have a look at SAP note 1048691 for further information.
    Best regards,
    Janine

  • BO 3.1 SP3 - "Execution Time" query for reports has been changed?

    Hi,
    We can see BO XI 3.1 SP3, the execution time for a report is faster. is it using BOXI Enterprise APIs to determine the start and end? How is calculated?
    thx
    aurora

    Hi,
    this forum is for the SAP BusinessObjects BI Solution Architecture. I would suggest you post your question into the forum for the corresponding product that you are using - in your case BusinessObjects Enterprise.
    regards
    Ingo Hilgefort

  • How to find overall execution time for a report

    Hi,
    I want to know the total time duration which is taken by my Report. (To fetch(read) the data from database and to print them after filtering.
    Can you please tell me a way to do so.
    Thakns
    Deepak Sisodia

    Hi Deepak,
    Open the report and refresh the report after successful retrival of data go in Report--Performance Information.
    You will get all information related to report and execution time.
    Thanks,
    Sastry

  • 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

  • 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

  • Reduce execution time with selects

    Hi,
    I have to reduce the execution time in a report, most of the consumed time is in the select query.
    I have a table, gt_result:
    DATA: BEGIN OF gwa_result,
          tknum            LIKE vttk-tknum,
          stabf            LIKE vttk-stabf,
          shtyp            LIKE vttk-shtyp,
          route            LIKE vttk-route,
          vsart            LIKE vttk-vsart,
          signi            LIKE vttk-signi,
          dtabf            LIKE vttk-dtabf,
          vbeln            LIKE likp-vbeln,
          /bshm/le_nr_cust LIKE likp-/bshm/le_nr_cust,
          vkorg            LIKE likp-vkorg,
          werks            LIKE likp-werks,
          regio            LIKE kna1-regio,
          land1            LIKE kna1-land1,
          xegld            LIKE t005-xegld,
          intca            LIKE t005-intca,
          bezei            LIKE tvrot-bezei,
          bezei1           LIKE t173t-bezei,
          fecha(10) type c.
    DATA: END OF gwa_result.
    DATA: gt_result LIKE STANDARD TABLE OF gwa_result.
    And the select query is this:
      SELECT ktknum kstabf kshtyp kroute kvsart ksigni
    k~dtabf
             lvbeln l/bshm/le_nr_cust lvkorg lwerks   nregio nland1 oxegld ointca
                 tbezei   ttbezei
      FROM vttk AS k
      INNER JOIN vttp  AS p ON ktknum = ptknum
      INNER JOIN likp  AS l ON pvbeln = lvbeln
      INNER JOIN kna1  AS n ON lkunnr = nkunnr
      INNER JOIN t005  AS o ON nland1 = oland1
      INNER JOIN tvrot AS t ON troute = kroute AND t~spras = sy-langu
      INNER JOIN t173t AS tt ON ttvsart = kvsart AND tt~spras = sy-langu
      INTO TABLE gt_result
      WHERE ktknum IN s_tknum AND ktplst IN s_tplst AND k~route IN s_route AND
         k~erdat BETWEEN s_erdat-low AND s_erdat-high AND
         l~/bshm/le_nr_cust <> ' '    "IS NOT NULL
         AND k~stabf = 'X'
         AND ktknum NOT IN ( SELECT tktknum  FROM vttk AS tk
                             INNER JOIN vttp AS tp ON tktknum = tptknum
                             INNER JOIN likp AS tl ON tpvbeln = tlvbeln
                             WHERE l~/bshm/le_nr_cust IS NULL )
         AND k~tknum NOT IN ( SELECT tknum FROM /bshs/ssm_eship )
         AND ( o~xegld = ' '
               OR ( o~xegld = 'X' AND
                    ( ( n~land1 = 'ES'
                        AND ( nregio = '51' OR nregio = '52'
                              OR nregio =  '35' OR nregio =  '38' ) )
                               OR n~land1 = 'ESC' ) )
                      OR ointca = 'AD' OR ointca = 'GI' ).
    Does somebody know how to reduce the execution time ?.
    Thanks.

    Hi,
    Try to remove the join. Use seperate selects as shown in example below and for the sake of selection, keep some key fields in your internal table.
    Then once your final table is created, you can copy the table into GT_FINAL which will contain only fields you need.
    EX
    data : begin of it_likp occurs 0,
             vbeln like likp-vbeln,
             /bshm/le_nr_cust like likp-/bshm/le_nr_cust,
             vkorg like likp-vkorg,
             werks like likp-werks,
             kunnr likr likp-kunnr,
           end of it_likp.
    data : begin of it_kna1 occurs 0,
           kunnr like...
           regio....
           land1...
          end  of it_kna1 occurs 0,
    Select tknum stabf shtyp route vsart signi dtabf
    from VTTP
    into table gt_result
    WHERE tknum IN s_tknum AND
          tplst IN s_tplst AND
          route IN s_route AND
          erdat BETWEEN s_erdat-low AND s_erdat-high.
    select vbeln /bshm/le_nr_cust
           vkorg werks kunnr
           from likp
           into table it_likp
           for all entries in gt_result
           where vbeln = gt_result-vbeln.
    select kunnr
           regio
           land1
           from kna1
           into it_kna1
           for all entries in it_likp.
    similarly for other tables.
    Then loop at gt result and read corresponding table and populate entire record :
    loop at gt_result.
    read table it_likp where vbeln = gt_result-vbeln.
    if sy-subrc eq 0.
      move corresponding fields of it_likp into gt_result.
      gt_result-kunnr = it_likp-kunnr.
      modify gt_result.
    endif.
    read table it_kna1 where kunnr = gt_result-vbeln.
    if sy-subrc eq 0.
      gt_result-regio = it-kna1-regio.
      gt_result-land1 = it-kna1-land1.
      modify gt_result.
    endif.
    endloop.

  • Long execution times for TestStand conditional statements

    I have two test stations – one here, one at the factory in China that has been operating for about a year. The test program uses TestStand 3.1 and calls primarily dll's developed using CVI. Up until a couple months ago, both test stations performed in a similar manner, then the computer at the factory died and was replaced with a new, faster computer. Now the same test sequence at the factory take three times as long to execute (30 min at the facotry, 10min here).
    I have recoded the execution time at various point during the execution, and have found that the extra times seems to be occurring during the evaluation of conditional statements in TestStand (i.e. for loops, if statements, case statements). For example, one particular ‘for’ evaluation takes 30 ms on the test station here, but takes 400 ms at the test station at the factory (note: this is just the evaluation of the for condition, not the execution of the steps contained within the for loop).
    The actual dll calls seem to be slightly faster with the new computer.
    Also the ‘Module Times’ reported don’t seem to match the actual time for the module for the computer at the factory. For example, for the following piece of TestStand code:
    Label1
    Subsequence Call
    Label2
    I record the execution time to the report text in both Label1 and Label2. Subtracting one from the other gives me about 18 seconds. However the ‘Module Time’ recorded for ‘Subsequence Call’ is only 3.43 seconds.
    Any body have any ideas why the long execution time with the new computer? I always setup the computers in exactly the same way, but maybe there is a TestStand setting somewhere that I have missed? Keep in mind, both test stations are running exactly the same revision of code.

    Got some more results from the factory this morning:
    1) Task Manager shows that the TestExec.exe is the only thing using CPU to any significant degree. Also CPU Usage History show that the CPU Usage never reaches 100%.
    2) I sent a new test program that will log test execution time in more places. Longer execution times are seen in nearly every area of the program, but one area where this is very dramatic is the time taken to return from one particular subsequence call. In this subsequence I log the time just before the <End Group> at then end of Main. There is nothing in Cleanup. I then log the time immediately after returning from this sequence. On the test system I have here this takes approximately 160 ms. On the test system at the factory this takes approximately 14.5 seconds! The program seems to be hanging here for some reason. Every time this function is called the same thing happens and for the same amount of time (and this function is called about 40 times in the test program, so this is kill me).

  • WAD execution time

    Hi experts,
    How to find out the execution time for WAD reports - I have been given the link for the WAD report.
    and also how to find the execution time for the same report in PORTAL.
    please help

    Hi,
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/6dd54713-0c01-0010-8691-a3576b9a95d9

  • Report execution time should displayed in Local Time

    Hi,
    I have a query related to the Report execution time.
    Our SAP Servers are available in US.  The Servers are configured in US Time.
    We have developed a Z report and used SY-UZEIT to display the Report Run Time.
    we also have a plant in India.
    When we execute this report for India Plant we are getting the execution run time for US.
    But we need to get the run time in India Time.
    Please help ASAP.
    Regards,
    Shankar

    Hi Shankaran,
    In your Z report, give a condition to check if the Plant is in India. If it is in india, then get SY-UZEIT and add the time difference to get IST.
    Display this time on your report.
    For implementing this, you will have to convert the Date and Time into Timestamp (use FM "LXHME_TIMESTAMP_CONVERT_INTO"), add the Time to this Time stamp (use FM "TIMESTAMP_DURATION_ADD" and convert it back to Date and Time (use FM "LXHME_TIMESTAMP_CONVERT_FROM"). 
    Reward points if useful.
    regards,
    Raj
    Message was edited by: Rajagopal G

  • Report Execution time in NQQuery.log should be display in Milliseconds

    Report Execution time in NQQuery.log should be display in Milliseconds.
    For Example :
    --- Logical Query Summary Stats: Elapsed time 0, Response time 0, Compilation time 0 (seconds)
    Can we see the logical Query Summary Stats in milliseconds?
    If so Where should i cofigure to populate this.

    No. If you query comes in less that 1 second then you got nothing to worry about. I haven't seen a single DWH where users would worry about queries returning in milliseconds.

  • Execution takes time for the report in Application

    I have developed a report for payroll runresult.Its execution time is 3 minutes,but when i run in application it takes half an hour
    The query i use is...
    SELECT round((sum(nvl(DECODE(PET.element_name,'Basic Salary',ROUND(prrv.result_value,3),0),0))+
    sum(nvl(DECODE(PET.element_name,'House Rent Allowance',ROUND(prrv.result_value,3),0),0))+
    sum(nvl(DECODE(PET.element_name,'Transport Allowance',ROUND(prrv.result_value,3),0),0))+
    sum(nvl(DECODE(PET.element_name,'Petrol Allowance',ROUND(prrv.result_value,3),0),0))+
    sum(nvl(DECODE(PET.element_name,'Vehicle Allowance',ROUND(prrv.result_value,3),0),0)) +
    sum(nvl(DECODE(PET.element_name,'Additional HRA',ROUND(prrv.result_value,3),0),0)) +
    sum(nvl(DECODE(PET.element_name,'Other Allowance',ROUND(prrv.result_value,3),0),0))+
    sum(nvl(DECODE(PET.element_name,'Carried Balance',ROUND(prrv.result_value,3),0),0))+
    sum(nvl(DECODE(PET.element_name,'Mobile Allowance',ROUND(prrv.result_value,3),0),0)) +
    sum(nvl(DECODE(PET.element_name,'Fixed Over Time',ROUND(prrv.result_value,3),0),0)) +
    sum(nvl(DECODE(PET.element_name,'Rent Deduction',ROUND(prrv.result_value,3),0),0)) -
    sum(nvl(DECODE(PET.element_name,'Vehicle Allowance Deducted',ROUND(prrv.result_value,3),0),0)) -
    sum(nvl(DECODE(PET.element_name,'HRA Deducted',ROUND(prrv.result_value,3),0),0)) -
    sum(nvl(DECODE(PET.element_name,'Rent Deduction',ROUND(prrv.result_value,3),0),0)) -
    sum(nvl(DECODE(PET.element_name,'Insurance Deduction',ROUND(prrv.result_value,3),0),0)) +
    sum(nvl(DECODE(PET.element_name,'Medical Insurance',ROUND(prrv.result_value,3),0),0)) +
    sum(nvl(DECODE(PET.element_name,'Family Passage Allowance',ROUND(prrv.result_value,3),0),0)) +
    sum(nvl(DECODE(PET.element_name,'Salik Allowance',ROUND(prrv.result_value,3),0),0)) -
    sum(nvl(DECODE(PET.element_name,'Family Insurance Deduction',ROUND(prrv.result_value,3),0),0)) +
    sum(nvl(DECODE(PET.element_name,'Fixed Incentive',ROUND(prrv.result_value,3),0),0)) +
    sum(nvl(DECODE(PET.element_name,'Company Accomodation Provided',ROUND(prrv.result_value,3),0),0))-
    sum(nvl(DECODE(PET.element_name,'Mess Deduction',ROUND(prrv.result_value,3),0),0))+
    sum(nvl(DECODE(PET.element_name,'Normal Overtime',ROUND(prrv.result_value,3),0),0))+
    sum(nvl(DECODE(PET.element_name,'Special Overtime',ROUND(prrv.result_value,3),0),0))+
    sum(nvl(DECODE(PET.element_name,'Telephone Allowance',ROUND(prrv.result_value,3),0),0))+
    sum(nvl(DECODE(PET.element_name,'Other Allowance',ROUND(prrv.result_value,3),0),0))+
    sum(nvl(DECODE(PET.element_name,'Other Earnings',ROUND(prrv.result_value,3),0),0))-
    sum(nvl(DECODE(PET.element_name,'Other Deductions',ROUND(prrv.result_value,3),0),0)) -
    sum(nvl(DECODE(PET.element_name,'Salary Advance Recovery',ROUND(prrv.result_value,3),0),0))-
    sum(nvl(DECODE(PET.element_name,'Air Ticket Refund',ROUND(prrv.result_value,3),0),0))-
    sum(nvl(DECODE(PET.element_name,'Vehicle Fines and Charges',ROUND(prrv.result_value,3),0),0))-
    sum(nvl(DECODE(PET.element_name,'Abroad Emergency Leave',ROUND(prrv.result_value,3),0),0))-
    sum(nvl(DECODE(PET.element_name,'Abscond Leave',ROUND(prrv.result_value,3),0),0))-
    sum(nvl(DECODE(PET.element_name,'Air Fare Paid',ROUND(prrv.result_value,3),0),0))-
    sum(nvl(DECODE(PET.element_name,'Recovery Carried Balance',ROUND(prrv.result_value,3),0),0))-
    sum(nvl(DECODE(PET.element_name,'Hajj Leave',ROUND(prrv.result_value,3),0),0))-
    sum(nvl(DECODE(PET.element_name,'Local Leave',ROUND(prrv.result_value,3),0),0))-
    sum(nvl(DECODE(PET.element_name,'Sick Leave Deduction',ROUND(prrv.result_value,3),0),0))-
    sum(nvl(DECODE(PET.element_name,'Sick Leave Without certificate',ROUND(prrv.result_value,3),0),0))-
    sum(nvl(DECODE(PET.element_name,'Round Off Deduction',ROUND(prrv.result_value,3),0),0))+
    sum(nvl(DECODE(PET.element_name,'Round Off Earnings',ROUND(prrv.result_value,3),0),0))),0)Net_Salary,papf.national_identifier groupcode,papf.FULL_NAME,paav.effective_date,
    haout.name costcentre,pg.name grade, pj.name designation ,paaf.ASSIGNMENT_NUMBER employee_number,decode(pop.org_payment_method_name,'RI_CASH','C','B')Payment
    FROM pay_run_results_v prrv,pay_run_results prr,pay_assignment_actions paa,per_all_assignments_f paaf,per_all_people_f papf,hr_all_organization_units_tl haout,
    per_grades pg, per_jobs pj,pay_assignment_actions_v paav,pay_personal_payment_methods_f ppp,pay_all_payrolls_f pap,pay_payroll_actions ppa,
    pay_org_payment_methods_f_tl pop,pay_element_types_f PET
    WHERE --prrv.assignment_action_id = 49449 and
    ppp.assignment_id(+) = paa.assignment_id
    AND pop.org_payment_method_id(+) = ppp.org_payment_method_id AND
    paa.ASSIGNMENT_ACTION_ID=prrv.ASSIGNMENT_ACTION_ID and paaf.ASSIGNMENT_ID=paa.ASSIGNMENT_ID
    and haout.organization_id=paaf.ORGANIZATION_ID
    and papf.EMPLOYEE_NUMBER=paaf.ASSIGNMENT_NUMBER
    AND prrv.run_result_id = prr.run_result_id
    AND ppa.effective_date BETWEEN pet.effective_start_date
    AND pet.effective_end_date
    AND prr.element_type_id = pet.element_type_id
    and prrv.CLASSIFICATION_NAME not like 'Info%'
    -- and prrv.element_name not like 'Gross Salary%'
    -- and prrv.element_name not like 'Annual%'
    and pj.job_id(+)=paaf.job_id
    and haout.name=nvl(:P_Dept,haout.name)
    and ppa.PAYROLL_ACTION_ID=paa.PAYROLL_ACTION_ID
    and pap.PAYROLL_ID=ppa.PAYROLL_ID
    and paav.ASSIGNMENT_ID=paaf.ASSIGNMENT_ID
    and paav.ASSIGNMENT_ACTION_ID=paa.ASSIGNMENT_ACTION_ID
    and pap.PAYROLL_NAME=NVL(:P_PAYROLL_NAME,pap.PAYROLL_NAME)
    --and papf.national_identifier = 03917
    and paav.effective_date >= TO_DATE ('01-' || :p_start_date, 'DD-MON-YYYY')
    AND paav.effective_date <= LAST_DAY (TO_DATE ('01-' || :p_start_date, 'DD-MON-YYYY'))
    -- and paav.DATE_EARNED=to_char(:p_date,'DD-MON-YYYY')
    and pg.grade_id(+)=paaf.grade_id group by papf.national_identifier,papf.FULL_NAME,paav.effective_date,
    haout.name ,pg.name , pj.name,paaf.ASSIGNMENT_NUMBER,pop.org_payment_method_name,papf.employee_number
    Cant analyse where it takes time...
    Regards,
    Mera

    I don't think that the "SUM" structure in the SELECT makes a difference in performance (And DO NOT use PL/SQL for this!) And as long as you SUM most PET.element_name values you do not need to filter by them.
    But, of course, the solution of "Sven W." would make the code MUCH nicer (took me a while to get it) and the "format" of the join conditions would take anyone ages to maintain that code!
    But your problem is that the execution differs massively right?
    Do you do the same thing? E.g. bind variables in the interactive part? Do the variables have the same value?
    Do you filter on the other variables like "P_DEPT" etc. ?
    "and haout.name=nvl(:P_Dept,haout.name)"
    The good thing is that you have an execution which makes you happy so you need to compare the SQL and the execution for both. Somewhere must be a difference. (Is the result the same by the way (just in case your parameters differ)?)
    If the results and parameters are the same, then do you not work with parameters in the "interactive" test and ORACLE is choosing a different execution plan as it knows more about your question. If that's the case, try to hint the query so that it's using the desired execution plan when you work with parameters.
    And how did you get that "execution plan" it's missing so much data and it's not formated. (put around it and check in "Preview" if it looks as desired)
    -- andy                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • Report Execution Time

    I'm looking for a way to include the amount of time that a report took to create. I've looked at an option given in an existing thread:
    Re: How to calculate total time taken by a report
    but this method is extremely slow. I already have complaints about execution time and don't need another excuse added that it's taking longer to tell how long it runs. It seems there would a very simple, and quick, way of getting this information. I just want to put the execution time, or maybe just start and end time, on the trailer where I already list all of the parameters that were passed.
    Any help on this would be much appreciated.

    Can someone from Oracle at least tell me if this can be done or not???

  • Report execution time is in milliseconds

    My report execution time is in milliseconds.Where should i examine this time?

    If u have permisssions to see the log..(logging level >2) then you can see your execution time in the following path
    setting--->Administration------>Manage Sessions------>View Log
    In that you can find different sections which can give your the execution time
    -------------------- Physical query response time
    -------------------- Physical Query Summary Stats
    -------------------- Logical Query Summary Stats

Maybe you are looking for

  • Multiple Currency Payroll Payments for one Employee

    Hello, We have a requirement of paying one employee in multiple currencies (i.e in Local currency and USD). This means that such employee has two bank accounts, i.e. Local Currency Account and USD Account. The costing of payroll costs is done in the

  • Officejet Pro 8600 Plus, not appending number in sequence to base file name when saving PDF.

    Officejet Pro 8600 Plus (new today - everything else working great), Vista 32-bit, HP desktop. After scanning documents and creating a PDF file (Save to file on my computer w/USB connection), using HP Scan, it does not append numbers in sequence to b

  • Syntax error (missing operator) in query expression works in sql

    Hi guys, I am having a problem with this query in Access 2007, it runs fine in MSSQL. I get this error when I run it. [Macromedia][SequeLink JDBC Driver][ODBC Socket][Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query e

  • Godaddy mail issues

    Hi, So I have been using GoDaddy email (IMAP) with Mail.app for quite sometime, and it has always had issues compared to let's say a Gmail account: 1.  Syncing is horribly slow and everytime I go to a folder other than Inbox I must wait minutes while

  • How can I buy a student version of Design Standard?

    I have downloaded a trial of Design Standard cs6 and I would like to activate it as a student version. When I click on the link to buy the software it tells me that I can't buy it in my country. When I go to the specific NZ page and click the link to