I am facing performance issue in a report due to addition of occurs clause

Hi,
I am facing performance in one program. I think while declaring internal table used OCCURS 100 but records are populating 470840 no of records.
again in 2nd internal table declared OCCURS 10 but records are entering 18 no of records.
I guess because of this program is taking nearly 30 mins time and not getting correct out put.
I am not sure weather this is the reason.
So any one can give proper suggestion to improve the performance of the program
in the internal table t_dels_tvpod  showing the no of records in debugging = 470840 * 9(80)
in the internal table lt_dels_tvpod  showing the no of records in debugging = 18 * 9(80)
I have shown the part of the program code.
Program code
DATA:   BEGIN OF t_dels_tvpod OCCURS 100,
          vbeln LIKE tvpod-vbeln,     
          posnr LIKE tvpod-posnr,     
          lfimg_diff LIKE tvpod-lfimg_diff,
          calcu LIKE tvpod-calcu,
          podmg LIKE tvpod-podmg,
          uecha LIKE lips-uecha,      
          pstyv LIKE lips-pstyv,      
          xchar LIKE lips-xchar,      
          grund LIKE tvpod-grund,                          
        END OF t_dels_tvpod,
DATA: l_tabix LIKE sy-tabix,
        lt_dels_tvpod LIKE t_dels_tvpod OCCURS 10 WITH HEADER LINE,
        ls_dels_tvpod LIKE t_dels_tvpod.
SELECT vbeln INTO TABLE lt_dels_tvpod FROM likp
         FOR ALL ENTRIES IN t_dels_tvpod
         WHERE vbeln = t_dels_tvpod-vbeln
         AND   erdat IN s_erdat
         AND   bldat IN s_bldat
         AND   podat IN s_podat
         AND   ernam IN s_ernam
         AND   kunnr IN s_kunnr
         AND   vkorg IN s_vkorg
         AND   vstel IN s_vstel
         AND   lfart NOT IN r_del_types_exclude.
Waiting for quick response.
Best regards,
BDP

You should declare your structure with TYPES statement and with  this type declare internal table.
Example:
types: begin of ty_itb,
           budat type budat,
           matnr type matnr,
           end of ty_itab.
data: itab type standard table of ty_itb,
        wa_itab like line of itab.  (work area of itab)
Since both occurs and header line statements are obsolete.
change the below select query as follows can improve the performence
if not IN t_dels_tvpod[] is initial. (always check this, if you are using For all entries statement)
SELECT vbeln lfart INTO TABLE lt_dels_tvpod FROM likp
FOR ALL ENTRIES IN t_dels_tvpod
WHERE vbeln = t_dels_tvpod-vbeln
AND erdat IN s_erdat
AND bldat IN s_bldat
AND podat IN s_podat
AND ernam IN s_ernam
AND kunnr IN s_kunnr
AND vkorg IN s_vkorg
AND vstel IN s_vstel.
endif.
delete  lt_dels_tvpod where lfart not in r_del_types_exclude.

Similar Messages

  • Performance issue with HRALXSYNC report..

    HI,
    I'm facing performance issue with the HRALXSYNC report. As this is Standard report, Can any body suggest me how to optimize the standard report..
    Thanks in advance.
    Saleem Javed
    Moderator message: Please Read before Posting in the Performance and Tuning Forum, also look for existing SAP notes and/or send a support message to SAP.
    Edited by: Thomas Zloch on Aug 23, 2011 4:17 PM

    Sreedhar,
    Thanks for you quick response. Indexes were not created for VBPA table. basis people tested by creating indexes and gave a report that it is taking more time with indexes than regular query optimizer. this is happening in the funtion forward_ag_selection.
    select vbeln lifnr from vbpa
         appending corresponding fields of table lt_select
         where     vbeln in ct_vbeln
         and     posnr eq posnr_initial
         and     parvw eq 'SP'
         and     lifnr in it_spdnr.
    I don't see any issue with this query. I give more info later

  • I'm facing performance issue while accessing the PLAF Table

    Dar all,
    I'm facing performance issue while accessing the PLAF Table.
    The START-OF-SELECTION of the report starts with the following select query.
        SELECT plnum  pwwrk matnr gsmng psttr FROM plaf
        INTO CORRESPONDING FIELDS OF TABLE it_tab
        WHERE matnr IN s_matnr
          AND pwwrk = p_pwwrk
          AND psttr IN s_psttr
          AND auffx = 'X'
          AND paart = 'LA' .
    While executing the report in the Quality system it does not face any performance issue...
    When it comes to Production System the above said select query itself it is taking 15 - 20 minutes time to move further.
    Kindly help me to over come this problem...
    Regards,
    Jessi

    Hi,
    "Just implement its primary Key
    WHERE PLNUM BETWEEN '0000000001' AND '9999999999' " By this you are implementing the Primary Key
    This statement has nothing to do with performance, because system is not able to use primary key or uses every row.
    Jessica, your query uses secondary index created by SAP:
    1     (Material, plant) which uses fields MANDT MATNR and PLWRK.
    but it is not suitable in your case.
    You can consider adding new one, which would containt all fields: MANDT, MATNR, PWWRK, PSTTR AUFFX PAART
    or - but it depends on number of rows meeting and not meeting (auffx = 'X' AND paart = 'LA' ) condition.
    It could speed the performance, if you would create secondary index based on fields MANDT, MATNR, PWWRK, PSTTR
    and do like Ramchander suggested: remove AUFFX and PAART from index and where section, and remove these unwanted rows
    after the query using DELETE statement.
    Regards,
    Przemysław
    Please check how many rows in production system

  • Performance issue in Portal Reports

    Hi
    We are experiencing a serious performance issue, in a report, and need a urgent fix on this issue.
    The report is a Reports From SQL Query report, I need to find a way to dynamically make/create the where clause otherwise I have to make the statement in a way the exclude the use of indexes.
    Full-table-scan is not a valid option here; the number or records is simply too high (several millions its a datawarehouse solution). In the Developer packaged, we can make the where clause dynamically, this basic yet extremely important feature, is essential to all database application.
    We need to know how to do it, and if this functionality is not natively supported, then this should be one of the priority one functionalities to implement in future releases.
    However, what do I do for now?
    Thank in advance

    I have found a temporary workaround, by editing the where clause in the stored procedure manually. However this fix have to be done every time a change have been committed in the wizard, so it is still not a solution to go for indefinitely, but its ok for now.

  • Performance Issue with VL06O report

    Hi,
    We are having performance issue with VL06O report, when run with forwarding agent. It is taking about an hour with forwarding agent. The issue is with VBPA table and we found one OSS note, but it is for old versions. ours is ECC 5.0. Can anybody know the solution? If you guys need more information, please ask me.
    Thanks,
    Surya

    Sreedhar,
    Thanks for you quick response. Indexes were not created for VBPA table. basis people tested by creating indexes and gave a report that it is taking more time with indexes than regular query optimizer. this is happening in the funtion forward_ag_selection.
    select vbeln lifnr from vbpa
         appending corresponding fields of table lt_select
         where     vbeln in ct_vbeln
         and     posnr eq posnr_initial
         and     parvw eq 'SP'
         and     lifnr in it_spdnr.
    I don't see any issue with this query. I give more info later

  • TS3694 I am using iphone 3gs, I upgraded my i-os to 6.0 from 5.1.1 however I am facing performance issue, along with this all the applications including settings or any other shuts down automatically. Is there any way by which I can use my phone in better

    I am using iphone 3gs, I upgraded my i-os to 6.0 from 5.1.1 however I am facing performance issue, along with this all the applications including settings or any other shuts down automatically. Is there any way by which I can use my phone in better way?

    No, downgrading from any version of iOS to an earlier version is not supported.

  • Performance Issues with crystal reports 11 - Critical

    Post Author: DJ Gaba
    CA Forum: Exporting
    I have migrated from crystal reports version 8 to version 11.
    I am experiencing some performance issues with reports when displayed in version 11
    Reports that was taking 2 seconds in version 8 is now taking 4-5 seconds in versino 11
    I am using vb6 to export my report file into pdf
    Thanks 

    Post Author: synapsevampire
    CA Forum: Exporting
    Pleae don't multiple forums on the site with the same question.
    I responded to your other post.
    -k

  • Performance issue of BI Reports in SAP Enterprise portal -in SAPNW2004s

    Dear friends,
    We are integrating BI Reports in SAP Enterprise Portal 7.0 ( SAP NW- 2004s).The reports are running properly .But the issue here is reports are taking long time to open and leading it to performance effect.
    Reports in BEX( Bi side) working lilttle better than EP platform.
    And Even BI team is looking for ways to improve the performance.
    Could you please share your ideas to implement in portal side to increase the performance.
    Thanks and Regards
    Ratnakar Reddy

    Hello Mr. Reddy,
    There are two possibilities for slow performance in BW reports, so we need to look into wether its slow in the BW system or at the frontend.
    If the problem resides in the BW system then we should be able to trace the reports
    and you can go for a SAP EW or GV sessin and SAP will provide recommendations.
    If the problem resides at the frontend
    Update the frontend servers to the latest frontend release.
    Recommended Frontend Release 700
    Recommended Frontend Patch      18
    Update the frontend servers to the lates SAP GUI release as soon as possible.
    Minimum Recommended SAP GUI Release 6.40
    Your frontend PCs should fulfill the following requirements:
    Each frontend PC should have 500 MHz and 128 MB main memory.
    Because of a limit in the addressable memory, Windows 95 is not supported as Frontend OS for 3.X BW Systems. Please refer to SAP Notes 161993, 321973 and 366626 for details.
    Please also check SAP Note 147519 "Maintenance strategy/ deadlines 'SAPGUI'".
    If you still require any assistance from SAP support then raise a message under component ( probably BW-BEX-ET-WEB).
    Provide your input, if you have any.
    Thank you,
    Tilak

  • Performance issue of BI reports in SAP Enterprise portal

    Dear Friends,
    We have  integrated BI reports with SAP Enterprise portal 7.0.Reports are running properly But the issue is reports are taking more time to dispsaly its content and leading it to  performance effect.
    In Bex ( BI side) reports  performance is little better than  SAP EP platform. BI Team also looking for ways to improve performance  at BI side.
    Could you please share your valuable ideas to improve  the performance at SAP EP side also ..
    Thanks and Regards
    Ratnakar Reddy

    Hi ratnakar,
    The first step is to identify which component is causing the performance problem. Run your report in the portal but try appending the string &PROFILING=X in the end of the URL. This will generate BI statistics which you can use to see which component (Java stack, ABAP stack, Database) is causing the performance issue.
    Hope this helps.

  • Strange performance issue in bex report

    Hello Experts,
    I have a performance issue on my bex report.
    I'm running the report with below selection criteria and getting 'too much data' error.
    Country :  equals EMEA
    Category: not equlas 13
    Date : 02/2010 to 12/2010.
    But when I ran the report for smaller date ranges the number of records are not exceeding 13000.
    02.2010 - 06.2010 - 6,555 rows
    07.2010 - 09.2010 - 3,671 rows
    10.2010 - 12.2010 - 2,780 rows
    I know excel can't fit more than 65000 records, but I'm expecting 13000 records for my wide date range which excel can easily fit.
    Any ideas on this one will be appreciated.
    Regards,
    Brahma Reddy

    Hi,
    For Question 1:
    In query designer Go to the Query properties and select the tab "Variable Sequence", here you can set the order of variables as per you requirement.
    For Question 2:
    There will be a option "Hide Repeated Key values", if you uncheck this option then you will have the values for each row even though the material values are same.
    Note; if you are viewing the report in web or WAD report you need to make the same changes in the Web template also because the settings in the query designer will be overridden when you run the query in web.
    Hope this helps.
    Regards,
    Rk.

  • Facing Performance Issue?

    Hi All,
    I am facing a performance issue in this query. Any suggestions.
    version Oracle : 9i
    Data in table : INFO - 11,0000. EXCEPTIONS - 100. ERRCODES - 125
    SELECT COUNT(DISTINCT FF.ID) ff_cnt
    FROM INFO_Table FF
    , EXCEPTIONS DE
    , ERRCODES EC
    WHERE FF.CASE_ID IS NOT NULL
    AND UPPER(FF.CASE_ID) LIKE UPPER('012-121205-001')
    AND FF.LDCODE NOT IN ('AAA','ESED','ITE')
    AND FF.MGTCODE IN ('AWFF','PED')
    AND FF.ID = DE.MSGID
    AND DE.ERRCODE = EC.CODE
    AND EC.CAT = 'FL'
    AND EC.CODE NOT IN ('NLY','NTE','NL')
    AND DE.MCL_ID = (SELECT MAX(MC.ID) FROM MESSTROL MC WHERE MC.MSG_ID = FF.ID);
    Explain Plan:
    SELECT STATEMENT CHOOSE 0 1,405.00 1,405.00 1 19
    SORT GROUP BY 1 0 1 1 19
    VIEW SYS 2 1 1 1,4055.00 1 19
    FILTER 3 2 1
    SORT GROUP BY 4 3 1 1,4055.00 1 96
    HASH JOIN 5 4 1 1,322.00 7674 196
    TABLE ACCESS FULL GEM ERRCODES ANALYZED 6 5 1 7 70 1,260.00
    HASH JOIN 7 5 2 1,313.00 7,728.00
    HASH JOIN 8 7 1 613 239 13,145.00
    TABLE ACCESS FULL GEM INFO_Table 1 ANALYZED 9 8 1 383 193 8,685.00
    TABLE ACCESS FULL GEM MESSTROL 4 ANALYZED 10 8 2 225 285 1260
    TABLE ACCESS FULL GEM EXCEPTIONS 2 ANALYZED 11 7 2 686 602 7883.00
    Edited by: user545846 on Nov 23, 2008 8:51 PM

    user545846 wrote:
    Hi All,
    I am facing a performance issue in this query. Any suggestions.
    version Oracle : 9i
    Data in table : INFO - 11,0000. EXCEPTIONS - 100. ERRCODES - 125
    Explain Plan:
    SELECT STATEMENT CHOOSE 0 1,405.00 1,405.00 1 19
    SORT GROUP BY 1 0 1 1 19
    VIEW SYS 2 1 1 1,4055.00 1 19
    FILTER 3 2 1
    SORT GROUP BY 4 3 1 1,4055.00 1 96
    HASH JOIN 5 4 1 1,322.00 7674 196
    TABLE ACCESS FULL GEM ERROR_CODES ANALYZED 6 5 1 7 70 1,260.00
    HASH JOIN 7 5 2 1,313.00 7,728.00
    HASH JOIN 8 7 1 613 239 13,145.00
    TABLE ACCESS FULL GEM INFO_Table 1 ANALYZED 9 8 1 383 193 8,685.00
    TABLE ACCESS FULL GEM MESSTROL 4 ANALYZED 10 8 2 225 285 1260
    TABLE ACCESS FULL GEM EXCEPTIONS 2 ANALYZED 11 7 2 686 602 7883.00Your query seems to be based on a view. I assume it's the ERRCODES view that is based on the table ERROR_CODES and there are some group by operations. In addition there is a FILTER operation for which it would be interesting to know what it is doing.
    In order to find out these details, you should consider using DBMS_XPLAN.DISPLAY to generate more meaningful explain plan output. Please make sure that you include the "Predicate Information" section below the plan to see the details e.g. of the FILTER operation. If the "Predicate Information" section is missing, check the instructions below.
    Generic instructions how to do so and how to post it here using appropriate tags for mono-space font formatting and there improved readability follow below:
    Could you please post an properly formatted explain plan output using DBMS_XPLAN.DISPLAY including the "Predicate Information" section below the plan to provide more details regarding your statement. Please use the {noformat}[{noformat}code{noformat}]{noformat} tag before and {noformat}[{noformat}/code{noformat}]{noformat} tag after or the {noformat}{{noformat}code{noformat}}{noformat} tag before and after to enhance readability of the output provided:
    In SQL*Plus:
    SET LINESIZE 130
    EXPLAIN PLAN FOR <your statement>;
    SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY);Note that the package DBMS_XPLAN.DISPLAY is only available from 9i on.
    In 9i and above, if the "Predicate Information" section is missing from the DBMS_XPLAN.DISPLAY output but you get instead the message "Plan table is old version" then you need to re-create your plan table using the server side script "$ORACLE_HOME/rdbms/admin/utlxplan.sql".
    In previous versions you could run the following in SQL*Plus (on the server) instead:
    @?/rdbms/admin/utlxplsA different approach in SQL*Plus:
    SET AUTOTRACE ON EXPLAIN
    <run your statement>;will also show the execution plan.
    In order to get a better understanding where your statement spends the time you might want to turn on SQL trace as described here:
    When your query takes too long ...
    and post the "tkprof" output here, too.
    Regards,
    Randolf
    Oracle related stuff blog:
    http://oracle-randolf.blogspot.com/
    SQLTools++ for Oracle (Open source Oracle GUI for Windows):
    http://www.sqltools-plusplus.org:7676/
    http://sourceforge.net/projects/sqlt-pp/

  • Performance issue with BW Reports for concurrent users

    All:
    I notice that one BW report that runs in few seconds will take upto 3.5 minutes when multiple users run it at the same time.
    We are in BW 3.5 and we run reports for portal.
    Does anyone have any suggestion about how to handle performance issue with concurrent users?
    Thanks,
    Pranab

    Hi,
    use the OLAP-cache and/or aggregates and consider using load balancing to distribute the users to several servers.
    Kind regards
    /martin

  • Performance Issue with Crosstab Reports Using Disco Viewer 10.1.2.48.18

    We're experiencing Performance Issue (retrieving 40000 rows) with Crosstab Reports Using Disco Viewer 10.1.2.48.18 ( > 01 Minute , executing "Building Page Axis" or executing a Refresh).
    Are there parameters to tun (in pref.txt file) , in order to reduce "Building Page Axis" execution ?
    Note : We've got the same performance problem , using Discoverer Desktop 10.1.2.48.18.
    Thank's in advance for your Help.

    Hi
    Well if the same issue occurs in both Desktop and Viewer then you have your answer. It's not the way that Discoverer is running the workbook its the way the workbook has been constructed.
    For a start, 40000 rows for a Crosstab is way over the top and WILL cause performance issues. This is because Discoverer has to create a bucket for every data point for every combination of items on the page, side and top axes. The more rows, page items and column headings that you have, the more buckets you have and therefore the longer it will take for Discoverer to work out the contents of every bucket.
    Also, whenever you use page items or crosstabs, Discoverer has to retrieve all of the rows for the entire query, not just the first x rows as with a table. This is because it cannot possibly know how many buckets to create until it has all the rows.
    You therefore to:
    a) apply sufficient filters to reduce the amount of data being returned to something manageable
    b) reduce the number of page items, if used
    c) reduce the number of items on the side or top axis of a crosstab
    d) reduce the number of complex calculations, especially calculations that would generate a new bucket
    If you have a lot of complex calculations, you should consider the use of a materialized view / summary folder to pre-calculate the values.
    Does this help?
    Best wishes
    Michael Armstrong-Smith
    URL: http://learndiscoverer.com
    Blog: http://learndiscoverer.blogspot.com

  • Performance Issue in a report

    Hi,
         Can you please modify this code, i have performance issue for the following code.
    Here: t_po is a final internal table.
        select  ekkobukrs ekkoebeln ekkolifnr ekkobsart    " EKKO
                ekkoernam ekkoaedat ekko~memory                " EKKO
                ekpoebelp ekpoidnlf ekpotxz01 ekpoloekz     " EKPO
                ekpoeffwr ekpomenge                                      " EKPO 
                ekknsakto ekknps_psp_pnr                              " EKKN
                ekknzekkn ekknmenge                                    " EKKN  
                into (t_po-bukrs,t_po-ebeln,t_po-lifnr,t_po-bsart,
                      t_po-ernam,t_po-aedat,t_po-memory,
                      t_po-ebelp,t_po-idnlf,t_po-txz01,t_po-loekz,
                      t_po-effwr,t_po-menge,
                      t_po-sakto,t_po-ps_psp_pnr,
                      t_po-zekkn,t_po-menge1)
                from ( ekko inner join ekpo
                on   ekkoebeln eq ekpoebeln )
                     inner join ekkn
                on   ekkoebeln eq ekknebeln
                and  ekpoebelp eq ekknebelp
                for all entries in t_pspnr          
                where ekko~bukrs      in s_bukrs  and
                      ekko~lifnr      in s_lifnr  and
                      ekko~bsart      in s_bsart  and
                      ekko~aedat      in s_aedat  and
                      ekko~ernam      in s_ernam  and
                      ekpo~idnlf      in s_idnlf  and
                      ps_psp_pnr      =  t_pspnr-pspnr.   
          append t_po.
          clear  t_po.
        endselect.
    Another code:
      sort t_po by bukrs idnlf ebeln ebelp.
      loop at t_po.
        select single post1 psphi into (t_po-post1,t_po-psphi)             "Performance issue
                      from prps
                      where pspnr = t_po-ps_psp_pnr.
        select single pspid into t_po-pspid                                         ""Performance issue
                      from proj
                      where pspnr = t_po-psphi.
        if t_po-pspid in s_pspid.
    do nothing
        else.
          delete t_po index sy-tabix.
          continue.
        endif.
    Get invoiced amount for a PO line item
        select dmbtr shkzg into (ekbe-dmbtr,ekbe-shkzg)              ""Performance issue
                  from ekbe
                  where ebeln = t_po-ebeln and
                        ebelp = t_po-ebelp and
                        vgabe = '2'.
          if ekbe-shkzg = 'H'.
            ekbe-dmbtr = ekbe-dmbtr * -1.
          endif.
          t_po-invamt = t_po-invamt + ekbe-dmbtr.
        endselect.                                                                                ""Performance issue
        if not t_po-menge eq 0.
          t_po-polinamt = t_po-effwr * ( t_po-menge1 / t_po-menge ).
        endif.
        t_po-amtopen  = t_po-polinamt - t_po-invamt.
        modify t_po index sy-tabix.
        clear: t_po,prps,ekbe,proj.
      endloop.

    HI,
    Instead of selecting each fields and putting it in each fileds in internal table, we can select the fields and put it into the internal table which contains the required fields.
    Eg.
    TYPES: begin of itab,
                 vorna type vorna,
                nachn type nachn,
                end of itab.
    data: wt_itab type table of itab.
    select vorna, nachn into table wt_itab from pa0002 where cond.
    This increase the performance because it wont take time to match the each fields given after the table statement.
    Regards,
    Rani.

  • I have just now upgraded to OBIEE 11.1.1.7.0. The applications seems to be stable. But I am facing few issues with the reports and dashboard.

    Hi All,
    Dashboard Items - Customize Column & Section width in css files,
    i am facing the same problem for Reports and Dashboards after upgrade the obiee 11.1.1.6.5 to 11.1.1.7.0,
    please can any one help on this
    i have seen the below blood by Dev,
    he have't give more details about the solution , can any one help ? thanks inAdvance

    Hi Guys,
    I am sure that a WIDTH tag has to be added in some +.css+ file but I am not sure which one. I have OBIEE 11.1.1.7.0 (Simple Install)
    I came accross two very informative url's.
    URL 1 > This post tells about customizing the prompt.
    http://obiee10grevisited.blogspot.in/2012/02/customizing-dashboard-prompts.html
    URL 2> This post describes how to edit the look and feel of the Subject Area container.
    http://obiee1000.blogspot.in/2012/03/customize-subject-area-container-obiee.html
    In a similar way, I feel that the section or column (Dashboard items) can be customized i.e. we can fixed the width, height, border, color etc etc...
    I would really appreciate any suggestions/advice in this regards.
    Thanks
    Dev

Maybe you are looking for

  • Ipod Touch 2nd gen won't sync, show up, or charge

    The title says it all. An ipod touch of mine (8g 2nd gen touch) will not turn on, respond to any button commands, show up in itunes, and barely charge. My wall charger's light will light up (indicating it is charging), but it will not do anything. I'

  • XML To ABAP Transformatiom

    Hello, I have the following sample xml: <SERVICE name="CreateContact">      <INPUT>      <ATTRIBUTE ATTRNAME="FNAME" type="freetext">Test</ATTRIBUTE>              <ATTRIBUTE ATTRNAME="LNAME" type="freetext">Contact</ATTRIBUTE>              <ATTRIBUTE

  • "This content requires HDCP for playback..."

    I am trying to play Star Trek HD on my atv but I get a message that states "this content requires HDCP for playback." My TV is HD and the atv is connected with an HDMI cable that I purchased at the Apple Store. I have been able to play HD movies on t

  • Mini won't accept discs

    I have a mini with a superdrive. There was a CD in the drive and the drive ejected it. Since then it will not accept any discs. The discs don't go in the drive all the way. The usual function, in which the drive "grabs" the disc and pulls it in, is n

  • IPod Nano Lost Serial Number

    On my Mac, somehow my 2GB Nano had lost it's serial number. As a result it was not possible to update or restore the unit. I needed to restore the unit because it was not functioning correctly. Interestingly I opened Windows on my Mac (Boot Camp inst