Options to Archive Tables in 10g

Hi
I just want to archive one table in oracle 10g data base. Can any on tell me the options to do that?
I have 65M records in that table. Also Do I need to rebuild indexes after archiving the tables?

What do you mean with archiving ??
We e.g. purge data from tables every three months.
This data then is stored in a history database, with an identical schema and identical tables.
To access this historical data an overall history view is created in the source database, that accesses the local real-time table and - through a database link - the history table
After purging data from a table it is smart to shrink (oracle 10g and above ) or rebuild the table and the indexes

Similar Messages

  • Table Archiving in Oracle 10g database

    Hi Friends,
    We are facing performance problem and large size of tables like FAGLFLEXA, BALDAT etc.
    Now we want to archive the tables, please help us and if any one has done this activity please share it.
    In particular we want to archive tables ACCTIT, ACCTHD, ACCTCR. We are using ECC6.0 and HP_UX11i v2 and oracle 10g
    Regards
    Ganesh Datt Tiwari
    Edited by: tiwari.ganeshdatt on Feb 2, 2011 7:19 AM

    Hi Mark,
    I have archived the tables. It is archived but not stored.
    Files are accessable but I m not getting the archived doc in activated infostructure relted to object MM_ACCTIT.
    After writte action we have to run Deleted action ?
    Please help me.
    Regards
    Ganesh Datt Tiwari

  • How to use for all entires clause while fetching data from archived tables

    How to use for all entires clause while fetching data from archived tables using the FM
    /PBS/SELECT_INTO_TABLE' .
    I need to fetch data from an Archived table for all the entries in an internal table.
    Kindly provide some inputs for the same.
    thanks n Regards
    Ramesh

    Hi Ramesh,
    I have a query regarding accessing archived data through PBS.
    I have archived SAP FI data ( Object FI_DOCUMNT) using SAP standard process through TCODE : SARA.
    Now please tell me can I acees this archived data through the PBS add on FM : '/PBS/SELECT_INTO_TABLE'.
    Do I need to do something else to access data archived through SAP standard process ot not ? If yes, then please tell me as I am not able to get the data using the above FM.
    The call to the above FM is as follows :
    CALL FUNCTION '/PBS/SELECT_INTO_TABLE'
      EXPORTING
        archiv           = 'CFI'
        OPTION           = ''
        tabname          = 'BKPF'
        SCHL1_NAME       = 'BELNR'
        SCHL1_VON        =  belnr-low
        SCHL1_BIS        =  belnr-low
        SCHL2_NAME       = 'GJAHR'
        SCHL2_VON        =  GJAHR-LOW
        SCHL2_BIS        =  GJAHR-LOW
        SCHL3_NAME       =  'BUKRS'
        SCHL3_VON        =  bukrs-low
        SCHL3_BIS        =  bukrs-low
      SCHL4_NAME       =
      SCHL4_VON        =
      SCHL4_BIS        =
        CLR_ITAB         = 'X'
      MAX_ZAHL         =
      tables
        i_tabelle        =  t_bkpf
      SCHL1_IN         =
      SCHL2_IN         =
      SCHL3_IN         =
      SCHL4_IN         =
    EXCEPTIONS
       EOF              = 1
       OTHERS           = 2
       OTHERS           = 3
    It gives me the following error :
    Index for table not supported ! BKPF BELNR.
    Please help ASAP.
    Thnaks and Regards
    Gurpreet Singh

  • How to enable olap option in oracle enterprise edition 10g?

    what are the settings/steps one should take in enabling OLAP option in oracle enterprise edition 10g?
    If we have an installation of Oracle EE 10g,how can we know that OLAP is enabled or not?
    Can anyone throw light on OLAP_TABLE function?
    In Analytic Workspace manager 10g,i have created a workspace ,under that i am having some dimensions,cubes,as well.
    After mapped to source table,and maintained,when i do a right click on measures, to view data, i get a error ORA-06553:PLS-222:no function with the name 'OLAP_TABLE' exists in this scope

    The Export function is disabled when the responsibility is opened initially .
    When we enter into a specific form its automatically enabled .
    Login to a user who has Application Developer responsibility & to Application >Register & press f11 and Ctrl f11 .

  • How to use temporary interface in another interface as derived table in 10g

    Hi ,
    Can somebody please tell me how to use temporary interface in another interface as derived table in 10g.
    I have an option in odi 11g to this task.But i am working on odi 10g for my project.So that please help me to do this task.
    I can able to create temporary interface in 10g ,but i dont know how to use that temporary interface in another inerface as derived table.
    Thanks in Advance
    Thanks,
    Srikanth A

    A temp interface CANNOT be used as a derived table in ODI 10g.
    All you can do is to drag and drop the temp interface as the source in the mapping.
    PS. Please remember to assign correct/helpful points to the people who help you in the forum.

  • How to check the data of an archived table.

    I have archived a table created by me. I have executed the write program for the archiving object in SARA. Now how can check the data of my archived table.

    Hello Vinod,
    One thing to check in the customizing settings is your "Place File in Storage System" option.  If you have selected the option to Store before deleting, the archive file will not be available for selection within the delete job until the store job has completed successfully.
    As for where your archive file will be stored - there are a number of things to check.  The archive write job will place the archive file in whatever filesystem you have set up within the /nFILE transaction.  There is a logical file path (for example ARCHIVE_GLOBAL_PATH)where you "assign" the physical path (for example UNIX: /sapmnt/<SYSID>/archivefiles).  The logical path is associated with a logical file name (for example ARCHIVE_DATA_FILE_WITH_ARCHIVE_LINK).  This is the file name that is used within the customizing settings of the archive object.
    Then, the file will be stored using the content repository you defined within the customizing settings as well.  Depending on what you are using to store your files (IXOS, IBM Commonstore, SAP Content Server, that is where the file will be stored. 
    Hope this helps.
    Regards,
    Karin Tillotson

  • Accrual Formula Archive Table Issue?

    Hello Experts,
    I customized PTO_PAYROLL_BALANCE_CALCULATION as per our business requirment. High Level of the plan- It is based on the overtime an employee works per pay period and depending on overtime worked an employee gets time and half times. For example if the emp works 12 hours he accrues 18 hours of benefit time(formula calculating fine). To meet the business requirment we included employees who are hired in the mid of the pay period , here the issue is when the archive process is run
    We are unable to populate the employee's period accural(acrrued in a particular pay period) and if we populate the period accrual we are unable to process period accrual for an employee terminated in middle of the pay period. The requirement is to populate both in the archive table. ie to include both period accrual and mid pay period terminated employees.
    Below is the customized formula. Thanks much and appreciate your time and response in advance.
    DEFAULT FOR ACP_START IS 'HD'
    DEFAULT FOR ACP_INELIGIBILITY_PERIOD_TYPE IS 'CM'
    DEFAULT FOR ACP_INELIGIBILITY_PERIOD_LENGTH IS 0
    DEFAULT FOR ACP_CONTINUOUS_SERVICE_DATE IS '4712/12/31 00:00:00' (date)
    DEFAULT FOR ACP_ENROLLMENT_END_DATE IS '4712/12/31 00:00:00' (date)
    DEFAULT FOR ACP_TERMINATION_DATE IS '4712/12/31 00:00:00' (date)
    DEFAULT FOR ACP_ENROLLMENT_START_DATE IS '4712/12/31 00:00:00' (date)
    DEFAULT FOR ACP_SERVICE_START_DATE IS '4712/12/31 00:00:00' (date)
    default for Accrual_Start_Date is '4712/12/31 00:00:00' (date)
    default for Accrual_Latest_Balance is 0
    INPUTS ARE
    Calculation_Date (date),
    Accrual_Start_Date (date),
    Accrual_Latest_Balance
    /* bug 4047666*/
    prm_Accrual_Start_Date (date) = Accrual_Start_Date
    prm_Calculation_Date (date) = Calculation_Date
    /* bug 4047666*/
    E = CALCULATE_PAYROLL_PERIODS()
    For the payroll year that spans the Calculation Date
    get the first days of the payroll year. If we have a latest balance,
    we use the Accrual Start Date.
    Calculation_Period_SD = get_date('PAYROLL_PERIOD_START_DATE')
    Calculation_Period_ED = get_date('PAYROLL_PERIOD_END_DATE')
    /**XXX CUSTOM **/
    /*Calculation_Date = get_date('PAYROLL_PERIOD_END_DATE')*/
    Payroll_Year_First_Valid_Date = GET_DATE('PAYROLL_YEAR_FIRST_VALID_DATE')
    IF (Calculation_Date <> Calculation_Period_ED) AND
    (Calculation_Period_SD > Payroll_Year_First_Valid_Date) THEN
    E = GET_PAYROLL_PERIOD(ADD_DAYS(Calculation_Period_SD,-1))
    Calculation_Period_SD = get_date('PAYROLL_PERIOD_START_DATE')
    Calculation_Period_ED = get_date('PAYROLL_PERIOD_END_DATE')
    ELSE IF (Calculation_Period_SD = Payroll_Year_First_Valid_Date) AND
    (Calculation_Date <> Calculation_Period_ED) THEN
    Calculation_Period_ED = ADD_DAYS(Calculation_Period_SD,-1)
    Set the Calculation_Date to the Termination Date / Enrollment end date if not defaulted
    IF NOT (ACP_TERMINATION_DATE WAS DEFAULTED) OR
    NOT (ACP_ENROLLMENT_END_DATE WAS DEFAULTED) THEN
    Early_End_Date = least(ACP_TERMINATION_DATE, ACP_ENROLLMENT_END_DATE)
    IF (Early_End_Date < Calculation_Date) THEN
    Calculation_Date = Early_End_Date
    Get the last whole payroll period prior to the Calculation Date and ensure that it is within the
    Payroll Year (if the Calculation Date is the End of a Period then use that period)
    E = GET_PAYROLL_PERIOD(Calculation_Date)
    Calculation_Period_SD = get_date('PAYROLL_PERIOD_START_DATE')
    Calculation_Period_ED = get_date('PAYROLL_PERIOD_END_DATE')
    /**XXX CUSTOM **/
    /*Calculation_Date = get_date('PAYROLL_PERIOD_END_DATE')*/
    IF (Calculation_Date <> Calculation_Period_ED) AND
    (Calculation_Period_SD > Payroll_Year_First_Valid_Date) THEN
    E = GET_PAYROLL_PERIOD(ADD_DAYS(Calculation_Period_SD,-1))
    Calculation_Period_SD = get_date('PAYROLL_PERIOD_START_DATE')
    Calculation_Period_ED = get_date('PAYROLL_PERIOD_END_DATE')
    ELSE IF (Calculation_Period_SD = Payroll_Year_First_Valid_Date) AND
    (Calculation_Date <> Calculation_Period_ED) THEN
    Calculation_Period_ED = ADD_DAYS(Calculation_Period_SD,-1)
    Set the Continuous Service Global Variable, whilst also
    ensuring that the continuous service date is before the Calculation Period
    IF (ACP_CONTINUOUS_SERVICE_DATE WAS DEFAULTED) THEN
    E = set_date('CONTINUOUS_SERVICE_DATE', ACP_SERVICE_START_DATE)
    ELSE IF(ACP_CONTINUOUS_SERVICE_DATE > Calculation_Period_SD) THEN
    Total_Accrued_PTO = 0
    E = PUT_MESSAGE('HR_52796_PTO_FML_CSD')
    E = set_date('CONTINUOUS_SERVICE_DATE', ACP_CONTINUOUS_SERVICE_DATE)
    ELSE
    E = set_date('CONTINUOUS_SERVICE_DATE', ACP_CONTINUOUS_SERVICE_DATE)
    Determine the Accrual Start Rule and modify the start date of the accrual calculation accordingly
    N.B. In this calculation the Accrual Start Rule determines the date from which a person may first accrue
    PTO. The Ineligibility Rule determines the period of time during which the PTO is not registered.
    Once this date has passed the accrual is registered from the date determined by the Accrual Start Rule.
    Continuous_Service_Date = get_date('CONTINUOUS_SERVICE_DATE')
    IF (ACP_START = 'BOY') THEN
    First_Eligible_To_Accrue_Date =
    to_date('01/01/'||to_char(add_months(Continuous_Service_Date, 12), 'YYYY'),
    'DD/MM/YYYY')
    ELSE IF (ACP_START = 'PLUS_SIX_MONTHS') THEN
    First_Eligible_To_Accrue_Date = add_months(Continuous_Service_Date,6)
    ELSE IF (ACP_START = 'HD') THEN
    First_Eligible_To_Accrue_Date = Continuous_Service_Date
    Determine the date on which accrued PTo may first be registered, i.e the date on which the
    Ineligibility Period expires
    Accrual_Ineligibility_Expired_Date = First_Eligible_To_Accrue_Date
    IF (ACP_START <> 'PLUS_SIX_MONTHS' AND
    ACP_INELIGIBILITY_PERIOD_LENGTH > 0) THEN
    IF ACP_INELIGIBILITY_PERIOD_TYPE = 'BM' THEN
    Accrual_Ineligibility_Expired_Date = add_months(Continuous_Service_Date,
    ACP_INELIGIBILITY_PERIOD_LENGTH*2)
    ELSE IF ACP_INELIGIBILITY_PERIOD_TYPE = 'F' THEN
    Accrual_Ineligibility_Expired_Date = add_days(Continuous_Service_Date,
    ACP_INELIGIBILITY_PERIOD_LENGTH*14)
    ELSE IF ACP_INELIGIBILITY_PERIOD_TYPE = 'CM' THEN
    Accrual_Ineligibility_Expired_Date = add_months(Continuous_Service_Date,
    ACP_INELIGIBILITY_PERIOD_LENGTH)
    ELSE IF ACP_INELIGIBILITY_PERIOD_TYPE = 'LM' THEN
    Accrual_Ineligibility_Expired_Date = add_days(Continuous_Service_Date,
    ACP_INELIGIBILITY_PERIOD_LENGTH*28)
    ELSE IF ACP_INELIGIBILITY_PERIOD_TYPE = 'Q' THEN
    Accrual_Ineligibility_Expired_Date = add_months(Continuous_Service_Date,
    ACP_INELIGIBILITY_PERIOD_LENGTH*3)
    ELSE IF ACP_INELIGIBILITY_PERIOD_TYPE = 'SM' THEN
    Accrual_Ineligibility_Expired_Date = add_months(Continuous_Service_Date,
    ACP_INELIGIBILITY_PERIOD_LENGTH/2)
    ELSE IF ACP_INELIGIBILITY_PERIOD_TYPE = 'SY' THEN
    Accrual_Ineligibility_Expired_Date = add_months(Continuous_Service_Date,
    ACP_INELIGIBILITY_PERIOD_LENGTH*6)
    ELSE IF ACP_INELIGIBILITY_PERIOD_TYPE = 'W' THEN
    Accrual_Ineligibility_Expired_Date = add_days(Continuous_Service_Date,
    ACP_INELIGIBILITY_PERIOD_LENGTH*7)
    ELSE IF ACP_INELIGIBILITY_PERIOD_TYPE = 'Y' THEN
    Accrual_Ineligibility_Expired_Date = add_months(Continuous_Service_Date,
    ACP_INELIGIBILITY_PERIOD_LENGTH*12)
    IF Accrual_Ineligibility_Expired_Date > First_Eligible_To_Accrue_Date
    AND Calculation_Date < Accrual_Ineligibility_Expired_Date THEN
    First_Eligible_To_Accrue_Date = Accrual_Ineligibility_Expired_Date
    If the employee is eligible to accrue before the start of this year,
    we must get the period dates for the first period of the year.
    Otherwise, we do not need these dates, as we will never accrue that
    far back.
    IF (not Accrual_Start_Date was defaulted) AND
    ((Calculation_Date < Accrual_Ineligibility_Expired_Date) OR
    (Accrual_Start_Date > Accrual_Ineligibility_Expired_Date)) THEN
    * This function checks for unprocessed plan element entries, and
    * returns the EE effective start date of the earliest it finds. This may
    * be useful if we amend the design to process a partial year starting at
    * this date.
    * At the moment, however, we simply recalculate for the entire plan term
    * in these circumstances, so Adjusted_Start_Date is never used
    Adjusted_Start_Date = Get_Start_Date(Accrual_Start_Date,
    Payroll_Year_First_Valid_Date)
    /* Check whether RESET_PTO_ACCRUAL action parameter is defined and set to Y */
    /* If yes, then we need to calculate from the beginning */
    Reset_Accruals = Reset_PTO_Accruals()
    /* Check for retrospective Assignment changes */
    /* Return earliest effective date */
    Earliest_AsgUpd_Date = Get_Earliest_AsgChange_Date
    ( 'PTO Event Group',
    add_days(Calculation_Period_SD,-1),
    Calculation_Period_ED,
    Accrual_Start_Date)
    New_Adj_Start_Date = LEAST(Adjusted_Start_Date,
    Earliest_AsgUpd_Date)
    IF ((New_Adj_Start_Date < Accrual_Start_Date) OR
    (Reset_Accruals = 'TRUE')) THEN
    Process_Full_Term = 'Y'
    ELSE
    Process_Full_Term = 'N'
    ELSE
    Process_Full_Term = 'Y'
    Latest_Balance = 0
    IF (Process_Full_Term = 'Y') THEN
    /* Ensure the Payroll Year Start Date gets reset if caculating */
    /* from the beginning of the year. */
    E = SET_DATE('PAYROLL_YEAR_SD', Payroll_Year_First_Valid_Date)
    IF (Process_Full_Term = 'N') AND
    (Accrual_Start_Date >= First_Eligible_To_Accrue_Date) THEN
    E = GET_PAYROLL_PERIOD(Adjusted_Start_Date)
    Payroll_Year_1st_Period_SD = get_date('PAYROLL_PERIOD_START_DATE')
    Payroll_Year_1st_Period_ED = get_date('PAYROLL_PERIOD_END_DATE')
    Latest_Balance = Accrual_Latest_Balance
    Effective_Start_Date = Adjusted_Start_Date
    ) /* XXX Custom to include mid pay period hires*/
    ELSE IF First_Eligible_To_Accrue_Date <= Payroll_Year_First_Valid_Date THEN
    IF (not Accrual_Start_Date was defaulted) THEN
    Latest_Balance = Accrual_Latest_Balance
    ELSE
    Latest_Balance = 0
    E = GET_PAYROLL_PERIOD(Payroll_Year_First_Valid_Date)
    Payroll_Year_1st_Period_SD = get_date('PAYROLL_PERIOD_START_DATE')
    Payroll_Year_1st_Period_ED = get_date('PAYROLL_PERIOD_END_DATE')
    Effective_Start_Date = Payroll_Year_First_Valid_Date
    ELSE
    Get the first full payroll period following the First_Eligible_To_Accrue_Date
    (if it falls on the beginning of the period then use that period)
    IF (not Accrual_Start_Date was defaulted) THEN
    Latest_Balance = Accrual_Latest_Balance
    ELSE
    Latest_Balance = 0
    E = GET_PAYROLL_PERIOD(First_Eligible_To_Accrue_Date )
    First_Eligible_To_Accrue_Period_SD = get_date('PAYROLL_PERIOD_START_DATE')
    First_Eligible_To_Accrue_Period_ED = get_date('PAYROLL_PERIOD_END_DATE')
    /* IF First_Eligible_To_Accrue_Date <> First_Eligible_To_Accrue_Period_SD THEN
    E = GET_PAYROLL_PERIOD(add_days(First_Eligible_To_Accrue_Period_ED,1))
    First_Eligible_To_Accrue_Period_SD = get_date('PAYROLL_PERIOD_START_DATE')
    First_Eligible_To_Accrue_Period_ED = get_date('PAYROLL_PERIOD_END_DATE')
    IF (First_Eligible_To_Accrue_Period_SD > Calculation_Period_ED) THEN
    Total_Accrued_PTO = 0
    E = PUT_MESSAGE('HR_52793_PTO_FML_ASG_INELIG')
    ) */ /* XXX Custom to include mid pay period hires*/
    Payroll_Year_1st_Period_SD = First_Eligible_To_Accrue_Period_SD
    Payroll_Year_1st_Period_ED = First_Eligible_To_Accrue_Period_ED
    Effective_Start_Date = First_Eligible_To_Accrue_Date
    Effective_Start_Date = GREATEST(Effective_Start_Date, ACP_ENROLLMENT_START_DATE)
    Output messages based on calculated date
    IF (Early_End_Date < Payroll_Year_1st_Period_ED) THEN
    Total_Accrued_PTO = 0
    E = PUT_MESSAGE('HR_52794_PTO_FML_ASG_TER')
    If (Calculation_Period_ED < Payroll_Year_1st_Period_ED) THEN
    Total_Accrued_PTO = 0
    E = PUT_MESSAGE('HR_52795_PTO_FML_CALC_DATE')
    Determine the date on which PTO actually starts accruing based on Hire Date,
    Continuous Service Date and plan Enrollment Start Date. Remember, we have
    already determined whether to user hire date or CSD earlier in the formula.
    If this date is after the 1st period and the fisrt eligible date then
    establish the first full payroll period after this date
    (if the Actual Start Date falls on the beginning of a payroll period then
    use this period)
    Enrollment_Start_Date = ACP_ENROLLMENT_START_DATE
    Actual_Accrual_Start_Date = GREATEST(Enrollment_Start_Date,
    Continuous_Service_Date,
    Payroll_Year_1st_Period_SD)
    Determine the actual start of the accrual calculation
    IF (Actual_Accrual_Start_Date > Payroll_Year_1st_Period_SD AND
    Actual_Accrual_Start_Date > First_Eligible_To_Accrue_Date) THEN
    E = GET_PAYROLL_PERIOD(Actual_Accrual_Start_Date)
    Accrual_Start_Period_SD = get_date('PAYROLL_PERIOD_START_DATE')
    Accrual_Start_Period_ED = get_date('PAYROLL_PERIOD_END_DATE')
    IF Actual_Accrual_Start_Date > Accrual_Start_Period_SD THEN
    ( E = GET_PAYROLL_PERIOD(Actual_Accrual_Start_Date) /* XXX CUSTOM*/
    Accrual_Start_Period_SD = get_date('PAYROLL_PERIOD_START_DATE')
    Accrual_Start_Period_ED = get_date('PAYROLL_PERIOD_END_DATE')
    E = GET_PAYROLL_PERIOD(add_days(Accrual_Start_Period_ED,1))
    Accrual_Start_Period_SD = get_date('PAYROLL_PERIOD_START_DATE')
    Accrual_Start_Period_ED = get_date('PAYROLL_PERIOD_END_DATE')
    If the Actual Acrual Period is after the Calculation Period then end the processing.
    IF (Accrual_Start_Period_SD > Calculation_Period_ED) THEN
    Total_Accrued_PTO = 0
    E = PUT_MESSAGE('HR_52797_PTO_FML_ACT_ACCRUAL')
    ELSE IF (First_Eligible_To_Accrue_Date > Payroll_Year_1st_Period_SD) THEN
    Accrual_Start_Period_SD = First_Eligible_To_Accrue_Period_SD
    Accrual_Start_Period_ED = First_Eligible_To_Accrue_Period_ED
    ELSE
    Accrual_Start_Period_SD = Payroll_Year_1st_Period_SD
    Accrual_Start_Period_ED = Payroll_Year_1st_Period_ED
    Now set up the information that will be used in when looping
    through the payroll periods
    IF Calculation_Period_ED >= Accrual_Start_Period_ED THEN
    E = set_date('PERIOD_SD',Accrual_Start_Period_SD)
    E = set_date('PERIOD_ED',Accrual_Start_Period_ED)
    E = set_date('LAST_PERIOD_SD',Calculation_Period_SD)
    E = set_date('LAST_PERIOD_ED',Calculation_Period_ED)
    IF (Process_Full_Term = 'N') THEN
    E = set_number('TOTAL_ACCRUED_PTO', Latest_Balance)
    ELSE
    E = set_number('TOTAL_ACCRUED_PTO', 0)
    Initialize Band Information
    E = set_number('ANNUAL_RATE', 0)
    E = set_number('UPPER_LIMIT', 0)
    E = set_number('CEILING', 0)
    E = LOOP_CONTROL('PTO_PAYROLL_PERIOD_ACCRUAL')
    Total_Accrued_PTO = get_number('TOTAL_ACCRUED_PTO') - Latest_Balance
    IF Accrual_Start_Period_SD <= Calculation_Period_SD THEN
    Accrual_end_date = Calculation_Period_ED
    IF Process_Full_Term = 'Y' AND
    Effective_Start_Date > Actual_Accrual_Start_Date THEN
    Effective_Start_Date = Actual_Accrual_Start_Date
    Effective_End_Date = Calculation_Date
    /* bug 4047666*/
    IF Process_Full_Term = 'N' AND NOT (Accrual_Start_Date WAS DEFAULTED)
    AND NOT (Accrual_Latest_Balance WAS DEFAULTED)
    AND prm_Accrual_Start_Date > prm_Calculation_Date THEN
    Effective_Start_Date = ADD_DAYS(Effective_End_Date,1)
    ELSE
    /* bug 4047666*/
    IF Effective_Start_Date >= Effective_End_Date THEN
    Effective_Start_Date = least(Effective_End_Date, Accrual_Start_Period_SD)
    RETURN Total_Accrued_PTO, Effective_start_date, Effective_end_date, Accrual_end_date
    Regards
    Edited by: user13149420 on Sep 5, 2012 2:50 PM

    issue in tcode : OAC0.. Content server path was incorrect.

  • File adapter: Additional files option and Archive option

    Hi all!
    I configure file adapter to take file with two additional files. Additional files is optional. Also I configure to processing mode to archive.
    So when I put all three files in folder everything works fine - all files are archived.
    Problems begins when I put not all additional files for example:
    1) when I put one main file and the <b>FIRST</b> additional file, files are archived, in communication channel monitoring i see error in message java.lang.NullPointerException, but message with payload transfers to IE successful.
    2) when I put one main file and the <b>SECOND</b> additional file, the main file archived, the SECOND  file <b>NOT</b> archived and stayed in source directory. In CC monitoring I see error message java.lang.NullPointerException, but message with payload transfers to IE successful.
    Please provide me with some solution, because I need to archive all files.
    Maxim.

    in file sender CC, thr is option to archive and error file store also..
    1)under processing mode - archive.. give the path thr..
    2) To archive source files where a permanent error occurred during processing, select Archive Faulty Source Files
    http://help.sap.com/saphelp_nwpi71/helpdata/en/44/658abd344a4de0e10000000a1553f7/frameset.htm

  • What are the cleanup opportunities in term of Temporary tables,Archive tabl

    what are the cleanup opportunities in term of Temporary tables,Archive tables etc...
    can you provide any scripts which will give storage by environment and by Oracle ID.(to check size in terms of GB)
    Example:
    =========
    APPS : xxxGB

    for archiving and purging, take a look at the documents below.
    Reducing Your Oracle E-Business Suite Data Footprint using Archiving, Purging, and Information Lifecycle Management [ID 752322.1]
    Edited by: Erman Arslan on 31.Ara.2012 03:35
    Edited by: Erman Arslan on 31.Ara.2012 03:37

  • SKIP option in External Table

    Hi,
    I would like to skip the first row in the external table.
    I used the SKIP option.
    The tabl create succsessfully - But for some reason i am getting an error related to the skip option when select from the table.
    Could you please tell me what missing/wrong with the syntax ?
    SQL> CREATE TABLE ext_tab (
      2  ITEM                VARCHAR2(100),
      3  MODEL               VARCHAR2(100),
      4  packing_no          VARCHAR2(100),
      5  ship_date           VARCHAR2(100),
      6  Internal_SN         VARCHAR2(100),
      7  SHIPPING_SN         VARCHAR2(100),
      8  MACID               VARCHAR2(100),
      9  CARTON_NO           VARCHAR2(100),
    10  PALLET_ID           VARCHAR2(100),     
    11  PO                  VARCHAR2(100),
    12  KEY                 VARCHAR2(100),
    13  PASSWORD_TR         VARCHAR2(100),
    14  PASSWORD_ADMIN      VARCHAR2(100))
    15  ORGANIZATION EXTERNAL
    16  (TYPE oracle_loader
    17  DEFAULT DIRECTORY TMP_DIR
    18  ACCESS PARAMETERS
    19  (FIELDS TERMINATED BY ','
    20  SKIP 1
    21  MISSING FIELD VALUES ARE NULL
    22  (ITEM,MODEL,packing_no,SHIP_DATE,Internal_SN,SHIPPING_SN,MACID,CARTON_NO,PALLET_ID,PO,KEY,PASSWORD_TR,PASSWORD_ADMIN)) 
    23  LOCATION ('SN.csv'))
    24  PARALLEL
    25  REJECT LIMIT 0;
    Table created.
    SQL> select * from ext_tab;
    select * from ext_tab
    ERROR at line 1:
    ORA-29913: error in executing ODCIEXTTABLEOPEN callout
    ORA-29400: data cartridge error
    KUP-00554: error encountered while parsing access parameters
    KUP-01005: syntax error: found "skip": expecting one of: "column, enclosed, exit, (, ltrim, lrtrim, ldrtrim, missing, notrim, optionally, rtrim, reject"
    KUP-01007: at line 2 column 1
    ORA-06512: at "SYS.ORACLE_LOADER", line 19

    Hi,
    Kindly find below the syntax for creating the external table
    Line: -----
    CREATE TABLE <table_name> (
    <column_definitions>)
    ORGANIZATION EXTERNAL
    (TYPE oracle_loader
    DEFAULT DIRECTORY <oracle_directory_object_name>
    ACCESS PARAMETERS (
    RECORDS DELIMITED BY newline
    BADFILE <file_name>
    DISCARDFILE <file_name>
    LOGFILE <file_name>
    [READSIZE <bytes>]
    [SKIP <number_of_rows>
    FIELDS TERMINATED BY '<terminator>'
    REJECT ROWS WITH ALL NULL FIELDS
    MISSING FIELD VALUES ARE NULL
    (<column_name_list>))\
    LOCATION ('<file_name>'))
    [PARALLEL]
    REJECT LIMIT <UNLIMITED | integer>;
    Line: -----
    Please note that the order of the items in the ACCESS PARAMETERS differs in your Create Table syntax. Also check whether the .CSV file is available in the TMP_DIR directory path.
    Regards,
    Sandhya G.

  • Passing SELECT-OPTIONS and Internal Tables to SUBROUTINES

    Hi Guys
    In the code below my colleague has created her own table types in order to pass a select option and internal tables to her subroutine. Is there an easier way of making them known to the subroutine.
    data : v_vbeln type vbeln_vf,
          it_bdoc type table of vbrp,
          it_t006 type table of t006a,
          wa_bdoc type vbrp,
          wa_t006 type t006a,
          it_bdoc2 type table of zsswathi_st_vbeln,
          wa_bdoc2 type zsswathi_st_vbeln
    select-options s_vbeln for v_vbeln matchcode object zswathi_vbeln obligatory.
    start-of-selection.
    perform bdoc using s_vbeln[]
                 changing it_bdoc
                          it_bdoc2
                          it_t006.
      loop at it_bdoc2 into wa_bdoc2.
    form bdoc using f_s_vbeln type ZSWATHI_ST_SELECT_OPTION_TA_TY       " all these are table types. for select options, a structure is created and then a table type for it is created.
            changing f_it_bdoc type zswathi_vbrp_ty_ta
                     f_it_bdoc2 type zswathi_vbeln_ty_ta
                      f_it_t006 type ZSWATHI_T006_TA_TY.
    select * from vbrp into table f_it_bdoc where vbeln in f_s_vbeln.
          if f_it_bdoc is not initial.
          select  vbeln sum( netwr ) prsdt from vbrp into table f_it_bdoc2 where vbeln in f_s_vbeln group by vbeln prsdt.
          sort f_it_bdoc2 by vbeln.
          "select * from t006a into table it_t006 for all entries in it_bdoc where msehi = it_bdoc-vrkme.
          select * from t006a into table f_it_t006 for all entries in f_it_bdoc where msehi = f_it_bdoc-vrkme.
       endif.
        endform.

    Hi Brett,
    1. you can use a select-options-range in a FORM subroutine also without passing it as a parameter because parameters and select-option range tables are global fields in their program.
    2. If you need a parameter, declare it as type table or type standard table or type any table. You do not need any special table type.
    Regards
    Clemens

  • How will use Select-Options in Read table Concept.

    Hi All,
                  How will use Select-Options in Read table. For  example,
          Select-Options : test for bseg-prctr.
           Select * from bseg into table ITAB.
    Read table ITAB with key prctr in test.
    Last line is showing error. If any way to read ITAB as conditions given per select options.
    Thankx Advance,,,

    HI,
    you cannot use " IN " with read statement , read statement is used as:
    READ TABLE it_collect  ASSIGNING <fs_collect>
                      WITH KEY   rbpl = <fs_wkdet>-arbpl
                                 ufnr = <fs_wkdet>-aufnr.
    anyways you can use  loop at statement before read to use  " into "  statement as:
    LOOP AT it_master INTO l_master
                                           WHERE werks       = l_werks
    hope it will help you
    regards
    rahul
    Edited by: RAHUL SHARMA on Dec 30, 2008 9:14 AM

  • 'use dynamic name' and 'caching properites' options for alias table...

    Hello everybody,
    can anybody please explain 'use dynamic name' and 'caching properites' options for alias tables...
    Thanks...
    eagerly waiting for a response..
    Vijay

    You want to create dynamic target table name right?
    You can refresh a variable like #GET_SESSION
    #GET_SESSION= SELECT <%=odiRef.getSession("SESS_NAME")%> FROM DUAL
    My tmp table name like TMP_#GET_SESSION
    then in your package refresh #GET_SESSION variable and you can use it.
    I hope this can be helpful
    Thanks

  • Syntax of DDL options and related (table) column names

    Hi,
    where can I find something like a mapping between DDL options and related table column names?
    For example I do have the table options PCTFREE, FREELISTS and NOCOMPRESS. The related table columns out of user_tables are PCT_FREE, FREELIST and COMPRESS.
    PCT(_)FREE wins an Underscore, FREELIST(S) wins an "S" and it is "NOCOMPRESS" if COMPRESS has a value "Y(es)".
    Hope somebody can help.

    So far I didn't find any information that is not in
    the DDL script gernerated from
    DBMS_METADATA.get_DDL.Alright, I give you an example:
    I create a table with the following DDL:
    "CREATE TABLE IntBuch (
    int_bunr integer NOT NULL,
    int_sdat double precision NOT NULL,
    int_hblz char(8) NOT NULL,
    int_hkto char(7) NOT NULL,
    int_hdat double precision NOT NULL,
    KtoNr char(7) NOT NULL,
    BLZ char(8) NOT NULL,
    CONSTRAINT PK_IntBuch PRIMARY KEY (int_bunr)
    USING INDEX
    PCTFREE 10
    STORAGE (
    INITIAL 1000
    NEXT 500
    PCTINCREASE 0
    MINEXTENTS 1
    MAXEXTENTS 4096
    PCTFREE 20
    LOGGING
    CREATE UNIQUE INDEX intid
    ON IntBuch (int_bunr DESC)
    CREATE INDEX hkto
    ON IntBuch (int_hblz,int_hkto)
    COMMENT ON TABLE IntBuch
    IS 'Kommentar zu DB-Tabelle InBuch'
    COMMENT ON COLUMN IntBuch.int_sdat IS 'Kommentar zu DB-Spalte int_sdat'
    ALTER TABLE IntBuch
    ADD CONSTRAINT Gutschrift FOREIGN KEY (int_hkto,int_hblz) REFERENCES Konto
    ON DELETE CASCADE
    ADD FOREIGN KEY (KtoNr,BLZ) REFERENCES Konto
    ADD FOREIGN KEY (int_bunr) REFERENCES Buchung
    ON DELETE CASCADE
    After that I read the DDL with DBMS_METADATA.get_DDL and I get
    " CREATE TABLE "UOENDE"."INTBUCH"
    (     "INT_BUNR" NUMBER(*,0) NOT NULL ENABLE,
         "INT_SDAT" FLOAT(126) NOT NULL ENABLE,
         "INT_HBLZ" CHAR(8) NOT NULL ENABLE,
         "INT_HKTO" CHAR(7) NOT NULL ENABLE,
         "INT_HDAT" FLOAT(126) NOT NULL ENABLE,
         "KTONR" CHAR(7) NOT NULL ENABLE,
         "BLZ" CHAR(8) NOT NULL ENABLE,
         CONSTRAINT "PK_INTBUCH" PRIMARY KEY ("INT_BUNR")
    USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS
    STORAGE(INITIAL 16384 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
    PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
    TABLESPACE "USERS" ENABLE,
         CONSTRAINT "GUTSCHRIFT" FOREIGN KEY ("INT_HKTO", "INT_HBLZ")
         REFERENCES "UOENDE"."KONTO" ("KTONR", "BLZ") ON DELETE CASCADE ENABLE,
         FOREIGN KEY ("KTONR", "BLZ")
         REFERENCES "UOENDE"."KONTO" ("KTONR", "BLZ") ENABLE,
         FOREIGN KEY ("INT_BUNR")
         REFERENCES "UOENDE"."BUCHUNG" ("BU_NR") ON DELETE CASCADE ENABLE
    ) PCTFREE 20 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
    STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
    PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
    TABLESPACE "USERS"
    If there are no more DDLOptions possible than that, it is fine for me. If not, but all kinds of options are to find in only one or two tables of the database ( user_tables for table options, dba_constraints and dba_segments for column options, primary and foreign keys, user_indexes and user_segments for indexes ...), that is fine for me, too. (As long as I get to know which tables are "sufficient" for that.) If it is different than both of that, that's bad.
    However if you want to use defaults instead of
    absolut values, it is better to remove certain parts,
    like the storage clause, from the generated output.I understand this, but I am more interested to have all and not leaving out some of them in order to have the defaults in the database after running the DDL.
    A totally different approach could be to
    a) create a database link from one DB to another.
    b) create table <new_table> as select * from
    <old_table@dbLink> where 1=2;I keep that in mind, thanks for that hint.

  • Urgent Archiving tables in ORACLE

    Hello Every body,
    Any body having experince in archving records using oracle please help me...
    My client need a way to archieve the history records but Oracle documentation does not provide the exact procedure as how to archive the records so that it can be restored later......
    If anybody is aware of it ...Please go forward and shared your experirnce as what is the exact procedure....
    Also if the exact procedure is not provided by Oracle is there any third party software avaliable that would help.....
    Regards
    Mahesh

    I don't know of any third party software, though that doesn't mean none exists. If we're talking just 1 or 2 tables, though, it's a pretty easy script to write yourself.
    1) Call SQL*Plus and have it
    - truncate table <yourArchiveTable>
    - insert into <yourArchiveTable> (<select rows you want to archive>)
    - delete rows you want to archive from table
    2) Call exp to export the data from <yourArchiveTable> to a flat file.
    3) Move this flat file wherever you'd like
    On the restore side,
    1) Call imp to insert data back into <yourArchiveTable> (you might choose to have both an incoming & outgoing archive table)
    2) inset into <yourTable> (select * from <yourArchiveTable>
    If you partition the table and are able to limit the archive & restore to a single partition, it's even easier. For individual tables, it shouldn't take more than a day or two to roll the code.
    If you need more complicated logic, i.e. some rows that you archive aren't removed from the database, resolving collisions if you try to insert rows back into a table where they might have changed, that increases the complexity significantly. Since dealing with these sort of cases requires very particular business logic, though, there's no tool in the world that would be able to handle it-- you'd have to roll your own.
    Justin

Maybe you are looking for