DEPRECIATION PROCESS IN ORACLE ASSETS(FADEPR)

제품 : FIN_FA
작성날짜 : 2003-05-20
DEPRECIATION PROCESS IN ORACLE ASSETS(FADEPR)
=============================================
PURPOSE
Oracle Assets 에서의 depreciation process 를 간략하게 기술
Explanation
DEPRECIATION IN ORACLE ASSETS
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The Depreciation Program (FADEPR) 은 감가상각비 및 자산조정액을 계산하여 감가상각 누계액에 Update 하는 역할을 한다. 감가상각을 실행하면 다음 4가지 독립적인 Request가 실행된다.
=======================================================================
- Generate Accounts (FAGDA - Release 11 and 11i)
- Calculate Gain/Loss (FARET)
- Depreciation (FADEPR)
- Journal Entry Reserve Ledger Report (FAS400) for a Corporate book
or Tax Reserve Ledger Report (FAS480) for a TAX book.
- Process Pending Transactions (11i only)
1.Generate Accounts process (FAGDA)은 필요한 GL code combinations 을 생성하여 FA_DISTRIBUTION_ACCOUNTS table에 값을 입력한다. Generate Accounts (FAGDA)는 감가상각 Process의 성능향상을 위해 Depreciation Program (FADEPR)과는 별도로 실행된다. Generate Accounts Running시간은 자산의 수 Distribution의 수에 따라 달라진다.
2. Calculate Gain/Loss Process(FARET)는 처분된 자산의 손익을 계산하는 과정으로 당기의 처분/취소 자산의 감가상각액을 대상으로 한다. FARET는 꼭 감가상각을 실행하면 실행되는 것은 아니다. 자산의 처분/취소가 일어날 때마다 실행된다.
3. Depreciation process 는 감가상각비 및 자산조정액을 계산한 후 해당기를 마감한다.마감한 Period 에 대해 다시 Open 하는 것이 불가능하므로 감가상각을 돌리기 전 모든 Transaction을 끝내야 한다.
4. Process Pending Transactions program 은 Depreciation request set에 Mass Addtion Post작업을 추가하여, 감가상각이 실행 후 다음기를 Open할 때 Mass Additions Post job 이 자동적으로 실행되도록 한다.
Oracle Assets 은 감가상각비를 계산할 때 다음과정을 거치게 된다.
=================================================================
1. DPIS와 Prorate convention을 이용하여 Prorate Data를 결정한다.
2. Prorate data와 Prorate Calendar를 이용하여 Prorate Period를 결정한다.
3. 감가상각율을 결정한다.
4. 감가대상액을 결정한다.
5. 감가상각비를 결정한다.
6. 당기 감가상각비를 결정한다.
각 과정의 부가적인 설명은 Note:77371.1 를 참조하세요.
Example
Reference Documents
Note:77371.1

Hello.
Set the asset cost to zero.
Octavio

Similar Messages

  • APP-OFA-48392: Depreciation has been processed for this asset

    Hi,
    we are working in oracle applications 11i.
    In Oracle assets module, on the attempt from the user to modify the description of an asset item (from asset workbench -open) , when clicking the DONE button, the following error shows up:
    APP-OFA-48392: Depreciation has been processed for this asset for the current period in book...
    Please rollback depreciation or close the current period to perform this transaction
    Any ideas please...

    Hi
    If you have run depreciation for a particular period and thereafter try to make modification to any asset in the same period - the system will not allow you to do the same.
    If you have to make the changes than perform either of the following steps as mentioned below:
    1) rollback the depreciation for the current period by running the Rollback Depreciation program from the SRS Window
    OR
    2) Close the period by running the depreciation and thereafter make the changes to the asset in the next period.
    Without doing the above, the system will not allow you to make the changes to the asset.
    Hope this helps.
    Thanks
    Manish Jain.

  • FA - Asset accidentally deleted but depreciation process was not run

    Hi,
    Accidentally I have deleted an asset that I should not delete but I did not run the depreciation process.
    If I go to Transaction details, it says in status = “Pending”
    Is there any way to rollback this or to cancel the transaction and make the asset active again?
    Thanks,
    Facundo.

    This are the steps that I made:
    1. Go to Assets -> Asset workbench
    2. Look to the asset and click on retirements
    3. I complete all needed information and save it.
    That´s all what I did. If I go to the transaction, the field status shows "Pending".
    Is there any way to cancel this retirement?

  • Accounting entries process in Fixed Asset Module

    Dear all,
    I don't know Accounting entries process in Fixed Asset Module. I don't know how to post accounting entries and manage fixed assets
    Anyone can share me documents that is relevant to business transaction in  fixed asset module.
    My ID: [email protected]
    Thank in advance
    Minh
    Edited by: Tran Binh Minh on Apr 21, 2008 5:04 AM

    Hi,
    Good Morning,
    We are using Oracle R 12 Version 12.1.3
    and the issue i m facing Corporate Book as we have not yet started Tax Book
    The Addition posted period is closed, but I want to change life in Open Period Mar 12 ( latest open period).
    Yes Depreciation Run for March 12.
    Please help
    Regards
    Anant Danve
    9820077180

  • Oracle Assets Conversion Release 12

    Hello Experts,
    I am going to develop the conversion program for Oracle Assets Conversion for release 12. I am new to Fixed Assets concepts.
    Could any one guide me what are all the steps to be followed. I understand by studying the user guide that there are 5 different ways to perform this Oracle Assets conversion.
    1.Adjusted current earnings(ACE)information
    2.Budget Data
    3.Mass addtions of Assets
    4.Production Information which is typically related to depreciation. and
    5.Physical Inventory data.
    Since ,as of now I don't have any requirement from my client. They just said to have a process developed to import the data into oracle apps using Oracle asset conversion using SQL loader.
    Any Sample codings will be a great help for me.
    Thanks,
    Ravi.

    Hi;
    Please follow below(and reference) and see its helpful:
    Subject: Suggestions for Converting into the Group Asset Structure in 11i and/or R12
    https://metalink2.oracle.com/metalink/plsql/f?p=200:27:7590783145359143218::::p27_id,p27_show_header,p27_show_help:685244.993,1,1
    Subject: Data Conversion Of Source Lines into Oracle Assets Doc ID: 265835.1
    Regards
    Helios

  • Expensed Asset in Oracle Assets.

    Hi,
    We wanted to get more clarification around Expensed assets. If we have some assets,which are of non depreciable nature,say for example Land, then such assets should be treated as expensed assets by attaching them to the expense asset category? or for each of these assets the depreciation check box should be unchecked at the asset level? What should be the ideal approach in such a case?
    Kindly provide inputs regarding the same.
    Thanks

    Hi,
    expensed assets are to be used only for assets which are of insignificant value as decided by management. If a normal asset is treated as expensed asset, it would not be charged to an asset account it would be charged to an expense account directly, and there would be no depreciation computed in the asset module, no jounal entry would be created in asset module, the expensed asset would appear in Asset module for tracking purposes alone ...
    For example, say your company has been providing Blackberry device to all its employees, ideally this can be treated as an asset, however when compared to the total value of your assets, you may feel it is less significant to be treated as assets, this could very well be treated as an expenditure... hence this would be taken care in the oracle payables stage itself ... however for the sake of tracking alone you want this to appear in asset module...
    for which case you would have a dedicated asset category defined without depreciation checkbox enabled and using mass addition process create expensed assets .... Expensed assets has zero financials impact ...
    It is not right to treat LAND or other non depreciaable assets as expensed assets reason being, oracle assets would not generate any accounting entries for expensed assets, which means cost related entries for LAND would not be created by system .... Hence you can either create a zero rate depreciation method and map it against the LAND asset category which is a simple step, hence all assets under LAND category would inherit that depreciation method
    .... else you can uncheck depreciation checkbox at asset level i.e. for each and every asset under the LAND category.
    Regards,
    Ivruksha

  • Calculate Depreciation Forecast for Fixed asset

    Dear all expert,
    I'm new to ASO, would like to know if there's a way to do depreciation forcast for fixed asset in Essbase.
    1. Database type is ASO
    2. Assuming user will prepare forecast caplitialization of fixed asset then upload to Essbase
    3. Attribute dimension "Useful life" has been defined and attached to specific "Accounts" dimension for calcluation
    4. Need to calculate the forecast and spread of depreciation for future months
    E.g. Input 32000 USD for a fixed asset cost with 32 months useful life
    -> should calculate 1000 each month for the coming 32 months
    Can any expert suggest how to do this in ASO? meaning only can do calculation in member formula itself, not calculation script.
    Thanks for your help in advance,
    Billy

    I haven't used the feature, but the reference to 'local script_file' in the MaxL railroad diagram for the 'execute calculation' command suggests the location is relative to the client, if the semantics are consistent with the 'export data' command (the options for report scripts there are 'server' or 'local', although according to the railroad diagram there is no non-local alternative in this case!).
    There is a worked example in a Rittman Mead blog post about this that might help: http://www.rittmanmead.com/2010/04/oracle-epm-11-1-2-essbase-calculations-on-aso-cubes-part-2-maxl-scripts-and-eas/
    The DBAG also says that the script files should have suffix .csc, while the Tech Ref example has suffix .txt - helpful!! If they were actually meant to sit in the server's db directory, I would be surprised to find the .csc suffix used, since that is also the suffix for aggregation scripts. Although me being surprised doesn't mean much.

  • Oracle Assets Category-wise Report from FA and GL tables

    Hi,
    I am developing a customized report (Schedule of Fixed Assets) in the Oracle Assets Module, Which includes Category Wise Opening Balance, additions, adjustments, transfer IN, Transfer OUT and Retirements of Cost and Depreciations. I am using FA tables (FA_CATEGORY_BOOKS, FA_CATEGORIES_B) for category_id, category_name (segment1 of category combination) and book_type_code (Book Name). And I am also using GL tables (GL_BALANCES, GL_JE_HEADERS, GL_JE_LINES) for the amount of begin_balance_dr,begin_balance_cr,accounted_dr and accounted_cr.
    The report gets the category_id,category_name from FA_CATEGORIES_B and book_type_code, asset_account_ccid, reserve_account_ccid and book_type_code from FA_CATEGORY_BOOKS for a single book. The sum of accounted_dr or sum of accounted_cr is calculated for a single category_id whose asset_account_ccid is matched with code_combination_id of GL_JE_LINES.
    There are 15 books each have many projects (FA_CATEGORIE_B.segment6). This report is working as desired for 14 books but in one book there is same asset_account_ccid and reserve_account_ccid for more than one category_id(s). That’s why the same amount is displayed against the multiple category_ids .
    As functionally it is possible in Oracle Assets to have same asset_account_ccid or reserve_account_ccid for more than one category_ids, I want to know that is there any other attribute(except asset_account_ccid,reserve_account_ccid and code_combination_id) which can be used to get the separate data for each category_id from GL tables.
    Regards,
    Fahim
    [email protected]

    hi vijay,
    thanks for your quick reply,
    i'm preparing a reports,fields from bsis and bseg database tables,
    and,my select statement giving error,saying that cluster table can't be joined,
    my problem is,how to write the select statement without inner join those tables,is there any alternative,
    i heard there is 'select for all entries',but i don't know proper usage of that addition,
    regards,
    kc

  • Process of Sub Assets

    Hi Gurus,
    Can you please tell me the process of Sub Assets in AUC and in normal assets as well?
    How to capitalize it, retire it, what to do if any sub assets is gone for repairing?
    Please revert asap.
    Thank You

    Hi,
    A sub asset is one ore more subs on an main asset.
    When you use investment orders/projects I think you can't use sub-assets.
    When you have sub-assets for AUC in asset accounting it is possible.
    Sub assets you are use to make a group of assets that belongs to one object.
    In the fieldstatus you can set up the copy rules from the main asset to the sub-asset and what you can change.
    In the sub asset you can have different depreciation rules, cost center,.. from the main asset.
    Like the boulding (main asset) depreciation is 40 years. In year 5 you do an investment then you say 35 years
    You have to retire the main and sub assets separate
    How and if to use sub assets is based on your requeirements, first the requirements and then to found a solution and not the way arround otherwise you have still 100 options

  • Depreciation On Retired Fixed Assets

    Need assistance in troubleshooting an error reported during depreciation process. Error occurs when starting the process "GAINS/LOSS" section of the run. It reports error in CCID for a particular asset which has been retired due to sales. We've checked already checked all set-up relating to depreciation & retirement, which looks ok. Process goes through without error when we "unretire" the asset.
    Any suggestions on what else to look out for?
    WY Yap (m'sia)

    Hi
    Th reason for this is that retirement (scrapping) is calculated
    as netbook value - less planned depreciation from the start fiscal year
    until date of retirement) disregarding depreciation runs for the
    period
    Note 1162647 it does not explain this particular scenario
    but in general refers that retirement is based on calculation on
    planned annual values
    Example:
    Fixed asset values
    start fiscal year 2008 (start 01/01/2008) is 1200
    the useful life is 24 months = 50 to be depreciated per month
    last depreciation run was for period 01/2008 , meaning the
    netbook value was after that 1150 =(1200 - 50)
    Then  post retirement (total scrap) on 01/06/2008
    The system will do retirement for the values calculated for the year
    950  = (1200- 250 ) being 250 = 50 * 5 months (from start fiscal year
    until date of retirement)
    The depreciations will also being calculated and executed from
    start fiscal year until date of retirement)
    If this is not the case, I am afraid that you have to log a message on Sap portal for the assistance.

  • Oracle Assets: Transferring Assets between Books

    With current 11i functionality there is no way to transfer assets between two corporate books. It would seem that the current workaround is to retire the assets in the "old" corporate book and then load them in the "new" corporate book.
    What is the best way of achieving this? What are the things to consider?
    Can anyone tell me.
    Roland

    Hi Miranga,
    Another note in the metalink:
    I am not sure whether its applicable for you or note:
    But please have a look:
    Subject: Uploading Assets from ADI Error YTD Depreciation Value must be less than or same as Reserve
    Doc ID: 154569.1 Type: PROBLEM
    Modified Date : 25-MAY-2009 Status: PUBLISHED
    fact: Oracle Assets
    fact: ADI - Applications Desktop Integrator
    symptom: Uploading assets using Applications Desktop Intergrator (ADI)
    symptom: The YTD Depreciation Value must be less than or same as Reserve
    symptom: Cost have a negative YTD Depreciation
    cause: Assets can be loaded with a negative cost and YTD amount through the
    Asset Workbench but not through ADI.
    fix:
    To upload negative assets from ADI, use one of the following workarounds:
    1. Upload the negative costs assets with the YTD Depreciation and Depreciation
    Reserve set to NULL (not zero, null).
    2. Update FA_Mass_Additions with the YTD Depreciation and Depreciation Reserve.
    Or
    1. Upload the negative costs assets with a the YTD Depreciation and
    Depreciation Reserve set to NULL (not zero, null).
    2. Post the assets.
    3. Prior to running depreciation for the book. adjust the YTD Depreciation
    and Depreciation Reserve in asset workbench.

  • How to call a BPEL process from Oracle Apps Java Concurrent program

    Hello,
    I need to trigger a BPEL process from Oracle Apps. Can anybody tell me how to do that? I have two triggering option--
    1. On button click from a Form 6i screen
    2. Using Java Concurrent program.
    Thanks in advance.
    Debkanta

    I am not sure how concurrent program works, but may be one of the way might work out, let me know if Java Concurrent Program works a bit different way
    - [if async] Through concurrent program, you can insert message token to db or aq, and BPEL can be instantiated from there
    or
    - If it supports pure java call, then you can look at multiple documents (e.g. http://www.oracle.com/technology/products/ias/bpel/pdf/orabpel-Tutorial7-InvokingBPELProcesses.pdf) to invoke your process
    - You can also use oracle db utility to invoke soap operation and get the result back
    HTH,
    Chintan

  • Issue in invoking the BPEL process from Oracle using a SOAP Request

    Hi,
    We are facing an issue while invoking a deployed Bpel Process from Oracle Applications 11.5.10..
    Using a concurrent program( Unix / Host program ) we are passing the input variables required for the Bpel process in the ProcessRequest tags and forming this as a SOAP message payload.
    Then trying to invoke the deployed bpel process using the end point location using HTTP POST..but nothing is happening..
    The bpel process is not getting invoked when i look at the Console and also checked for the Manual Recovery queue..it's not stuck there as well..
    Have set the Transfer Time Out to 25 minutes using UTL_HTTP.SET_TRANSFER_TIMEOUT(1500);
    Could someone please help us as soon as possible with this ..as this is critical and we are stuck at the moment.
    The logic is mentioned below :
    UTL_HTTP.SET_TRANSFER_TIMEOUT(1500);
    UTL_HTTP.SET_DETAILED_EXCP_SUPPORT(ENABLE=>TRUE);     
    soap_request:='<?xml version="1.0" encoding="UTF-8"?>'||
    '<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">'||
    '<soap:Header/>'||
    '<soap:Body xmlns:ns1="http://xmlns.oracle.com/bpelprocessname">'||
    '<ns1:bpelprocessnameProcessRequest>'||
    '<ns1:CSONum>'||order_number||'</ns1:CSONum>'||
    '<ns1:CreationDate>'||c_chr_cso_last_run_dte||'</ns1:CreationDate>'||
    '</ns1:bpelprocessnameProcessRequest>'||
    '</soap:Body>'||
    '</soap:Envelope>';          
    http_req:= utl_http.begin_request
    ('http://bpel_server ip:port/orabpel/domain_name/bpelprocessname/1.0' , 'POST', 'HTTP/1.1'
    utl_http.set_header(http_req, 'Content-Type', 'text/xml') ;
    utl_http.set_header(http_req, 'Content-Length', length(soap_request)) ;
    utl_http.set_header(http_req, 'SOAPAction', 'process');
    utl_http.write_text(http_req, soap_request) ;
    http_resp:= utl_http.get_response(http_req) ;
    utl_http.read_text(http_resp, soap_respond) ;
    utl_http.end_response(http_resp) ;
    dbms_output.put_line(soap_respond);
    Thanks

    check if your soap envelope is correct,check my below procedure which is working fine for me
    procedure xxxxx_BPEL_SCHEDULER
    IS
    soap_request varchar2(30000);
    soap_respond varchar2(30000);
    http_req utl_http.req;
    http_resp utl_http.resp;
    launch_url varchar2(240) ;
    begin
    soap_request:='<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:add="http://schemas.xmlsoap.org/ws/2003/03/addressing" xmlns:star="http://xmlns.oracle.com/xxxxx_BPEL_SCHEDULER">
    <soapenv:Header>
    <add:MessageID>?</add:MessageID>
    <add:ReplyTo>
    <add:Address>?</add:Address>
    <!--Optional:-->
    <add:ReferenceProperties>
    <!--You may enter ANY elements at this point-->
    </add:ReferenceProperties>
    <!--Optional:-->
    <add:PortType>?</add:PortType>
    <!--Optional:-->
    <add:ServiceName PortName="?">?</add:ServiceName>
    <!--You may enter ANY elements at this point-->
    </add:ReplyTo>
    </soapenv:Header>
    <soapenv:Body>
    <star:STARS_BPEL_SCHEDULERProcessRequest>
    <star:SCHEDULER_PARAM1>?</star:SCHEDULER_PARAM1>
    <star:SCHEDULER_PARAM2>?</star:SCHEDULER_PARAM2>
    <star:SCHEDULER_PARAM3>?</star:SCHEDULER_PARAM3>
    <star:SCHEDULER_PARAM4>?</star:SCHEDULER_PARAM4>
    <star:SCHEDULER_PARAM5>?</star:SCHEDULER_PARAM5>
    </star:STARS_BPEL_SCHEDULERProcessRequest>
    </soapenv:Body>
    </soapenv:Envelope>';
    http_req:= utl_http.begin_request('http://xxxxxx.com:16000/orabpel/default/xxxx_BPEL_SCHEDULER/1.0 '
    ,'POST',
    'HTTP/1.1'
    utl_http.set_header(http_req, 'Content-Type', 'text/xml') ;
    utl_http.set_header(http_req, 'Content-Length', length(soap_request)) ;
    utl_http.set_header(http_req, 'SOAPAction', 'initiate');
    utl_http.write_text(http_req, soap_request) ;
    http_resp:= utl_http.get_response(http_req) ;
    utl_http.read_text(http_resp, soap_respond) ;
    utl_http.end_response(http_resp) ;
    dbms_output.put_line(soap_respond);
    END;

  • MULTIPLE ARCHIVER PROCESSES FAQ ( ORACLE 8I NEW FEATURE )

    제품 : ORACLE SERVER
    작성날짜 : 2002-04-19
    MULTIPLE ARCHIVER PROCESSES FAQ ( ORACLE 8I NEW FEATURE )
    =========================================================
    PURPOSE
    1. LOG_ARCHIVE_MAX_PROCESSES가 하는 역할
    2. LOG_ARCHIVE_MAX_PROCESSES 값은 동적으로 변경 가능한지 여부
    3. Archiver process의 갯수가 동적으로 바뀌는 메카니즘
    4. 어떤 archiver process가 online log를 archive시켰는지 판단 방법
    Explanation
    1. LOG_ARCHIVE_MAX_PROCESSES가 하는 역할
    Oracle 8i에는 다중 archive destination을 지원하며, 단일 archiver의
    부하를 줄여주기 위해 multiple archiver process를 사용할 수 있다.
    LOG_ARCHIVE_MAX_PROCESSES 파라미터로 구동시킬 최대 ARCH 프로세스의
    갯수를 지정하면 된다.
    만약 LOG_ARCHIVE_START 값이 TRUE로 지정되어 있다면 인스턴스 구동시
    init 파일에 지정된 LOG_ARCHIVE_MAX_PROCESSES에 지정된 값을 읽어
    들인다. 만약 LOG_ARCHIVE_START 값이 true인데 LOG_ARCHIVE_MAX_PROCESSES
    값이 별도로 지정되어 있지 않을 경우에는 arc0 프로세스만을 구동시킨다.
    LOG_ARCHIVE_MAX_PROCESSES 값이 별도로 지정되었을 경우 (1 - 10 범위),
    arc0, arc1 과 같은 추가 프로세스를 구동시킨다.
    하지만, 이 파라미터 값을 기본값 1이 아닌 다른 값으로 명시적으로 지정할
    필요는 없다. 왜냐하면, 시스템에서 몇개의 ARCn 프로세스가
    필요한지를 판단하여, 추가 ARCn 프로세스를 생성하기 때문이다.
    2. LOG_ARCHIVE_MAX_PROCESSES 값은 동적으로 변경 가능한지 여부
    alter system 명령에서 set LOG_ARCHIVE_MAX_PROCESSES=n 으로
    지정하여 동적으로 값을 변경할 수 있다. 이때 n은 1 부터 10사이의
    값이어야 한다. 하지만, LOG_ARCHIVE_START 값이 FALSE로 지정되어
    있을 경우에는, 명령을 실행시켜도 아무런 영향을 미치지
    못한다.
    3. Archiver process의 갯수가 동적으로 바뀌는 메카니즘
    만약 LOG_ARCHIVE_START 값이 TRUE로 지정되어 있다면, 오라클에서는
    구동시 하나의 archiver process (ARC0)를 구동시킨다. 이 파라미터
    값은 필요시 LATER SYSTEM 명령으로 지정된 갯수만큼의
    archive process를 구동시킬 수 있다.
    예)
    SVRMGRL>alter system set LOG_ARCHIVE_MAX_PROCESSES=4;
    위 명령을 실행 시키면 다음과 같은 절차에 따라 ARC1, ARC2, ARC3를
    추가한다.
    1) Shadow process는 primary archive process에게 프로세스 갯수를
    늘릴 것을 요청한다.
    2) Archiver process는 kcrrschd 함수를 호출한다. (kcrrschd:
    다중 arch process를 schedule)
    3) 만약 요청된 process의 갯수가 현재 사용중인 archiver process
    갯수보다 작은지 확인한다. 만약 새로 지정된 값이 적거나, ARCHIVING이
    DISABLE 된 상태라면 다른 조치를 취하지 않고 return 한다. 그렇지
    않다면 지원되는 최대 갯수인 10을 넘는지 확인하고 10을 넘을 경우에는
    프로세스의 갯수를 10으로 지정한다.
    4) Scheduler 함수는 kcrxs{} structure에 대한 latch를 확보한다.
    여기서 kcrxs{} structure는 ARCH Activation status를 나타낸다.
    5) Scheduler 함수는 지정된 process 갯수 만큼 loop를 돌면서
    schedule된 상태를 structure KCRRSCHED에 반영시킨다.
    6) 그리고 나서 latch를 release 시킨 후 kcrrsmp 함수를 ( kcrrsmp:
    다중 arch processs 구동 ) 호출한다.
    7) kcrrsmp 함수는 kcrrxs{} structure (ARCH 구동 상태)에 대한 latch를
    확보하여 code 실행을 serialize 시켜 이 함수가 동시에 실행되더라도
    한번에 하나씩 실행될 수 있도록 한다.
    8) pending 상태에 있는 archiver process를 스케쥴링 하고, dead process가
    있으면 clean up 시킨다.
    9) 그리고 나서 이 함수는 지정된 process 갯수 만큼 loop를 돌면서
    KCRRSCHED 상태를 KCRRSTART으로 바꾸어, archiver process들을
    구동 준비 상태로 만든다.
    10) latch를 release 시킨 후 ARCH 프로세스를 구동시킨다.
    11) kcrrsmp함수는 latch를 다시 획득한다. 각각의 archiver 프로세스는
    자기 자신을 activate 시킬 것을 통보 받는다. archiver process는
    자기 자신을 activate 시킨 후 alert file에 관련 사항을 기록한다.
    12) 호출을 하는 함수는 모든 archiver process가 자기 자신을
    activate 시키고, kcrrxs structure의 내용을 갱신할 때 까지
    sleep 상태에서 대기한다.
    13) 끝으로, 현재 archiver process의 갯수가 요청된 archiver process
    의 갯수와 일치 하면, latch를 release 시키고 break 한다. ( C
    에서의 break )
    alert. log 에는 위 과정이 다음과 같이 반영된다.
    sql: prodding the archiver
    ALTER SYSTEM SET log_archive_max_processes=4;
    Tue Jul 13 02:15:14 1999
    ARC0: changing ARC1 KCRRNOARCH->KCRRSCHED
    ARC0: changing ARC2 KCRRNOARCH->KCRRSCHED
    ARC0: changing ARC3 KCRRNOARCH->KCRRSCHED
    ARC0: STARTING ARCH PROCESSES
    ARC0: changing ARC1 KCRRSCHED->KCRRSTART
    ARC0: changing ARC2 KCRRSCHED->KCRRSTART
    ARC0: changing ARC3 KCRRSCHED->KCRRSTART
    ARC0: invoking ARC1
    Tue Jul 13 02:15:15 1999
    ARC1: changing ARC1 KCRRSTART->KCRRACTIVE
    Tue Jul 13 02:15:15 1999
    ARC0: Initializing ARC1
    ARC0: ARC1 invoked
    ARC0: invoking ARC2
    ARC1 started with pid=10
    ARC1: Archival started
    Tue Jul 13 02:15:15 1999
    ARC2: changing ARC2 KCRRSTART->KCRRACTIVE
    Tue Jul 13 02:15:15 1999
    ARC0: Initializing ARC2
    ARC2 와 ARC3도 동일한 절차를 따른다.
    흥미로운 사실은 프로세스의 갯수를 줄일 수도 있다는 것이다. 예를 들어
    다음과 같은 명령을 실행시킬 경우
    SVRMGRL>alter system set LOG_ARCHIVE_MAX_PROCESSES=2;
    다음과 같은 작업이 순서대로 실행된다.
    1) shadow process는 현재 active 상태인 archiver process와 접속을 한다.
    2) archiverprocess는 kcrrxmp 함수를 호출한다. ( kcrrxmp: 다중
    Arch process 정지 )
    3) kcrrxmp 함수는 kcrrxs{} structure에 (ARCH 구동 상태) 대한 latch를 획득하여 다른 프로세스에서 structure를 동시에 병경하지 않도록 한다.
    4) 새로 요청된 archiver process의 갯수가 현재 사용중인 archiver process
    의 갯수보다 작은지 확인한다.
    5) 만약 작다면, archiver process 목록 가운데, 가장 최근에 schedule
    되어, archival 작업에 schedule 차례가 금방 돌아 오지 않을 프로세스를
    찾아낸다.
    6) 각각의 프로세스에 대해 KCRRACTIVE 상태에서 KCRRSHUTDN로 상태를
    변경할 것을 요청한다.
    7) 상태가 바뀌면, OS에서 해당 프로세스를 종료시키도록 하고, 상태를
    KCRRDEAD로 바꾼다. 관련된 상태 정보가 정리되고 kcrrxs{} structure의
    내용이 갱신된다.
    6) ,7) 과정은 지정된 archiver process 갯수로 줄어들 때 까지
    반복된다.
    8) 새로운 archiver process의 갯수로 kcrrxs structure 내용이 갱신된다.
    9) latch를 release 시킨다.
    상태 변동은 다음과 같이 alert. log 파일에 반영된다.
    sql: prodding the archiver
    Tue Jul 13 00:34:20 1999
    ARC3: changing ARC0 KCRRACTIVE->KCRRSHUTDN
    ARC3: sending ARC0 shutdown message
    ARC3: changing ARC1 KCRRACTIVE->KCRRSHUTDN
    ARC3: sending ARC1 shutdown message
    ARC3: received prod
    Tue Jul 13 00:34:20 1999
    ALTER SYSTEM SET log_archive_max_processes=2;
    Tue Jul 13 00:34:20 1999
    ARCH shutting down
    ARC0: Archival stopped
    ARC0: changing ARC0 KCRRSHUTDN->KCRRDEAD
    Tue Jul 13 00:34:20 1999
    ARCH shutting down
    ARC1: Archival stopped
    ARC1: changing ARC1 KCRRSHUTDN->KCRRDEAD
    4. 어떤 archiver process가 online log를 archive시켰는지 판단 방법
    Archiver process는 round-robin 방식으로 archiving 작업을 수행하도록
    schedule 된다. 만약 다중 archiver process가 부하에 따라 activate 된
    경우는 여러가지 경우의 수가 있을 수 있다. Oracle 8i에서는 다중
    archive log dest를 지원하면서 archive log에 대한 duplexing을 지원
    하기 때문에, 어떤프로세스가 log file을 archive 시켰는지를 기록할 필요가
    있다.
    Oracle 8i에서 archival 작업은 성공할 때 마다 trace file에 archiver
    process 명을 기록한다.
    다음은 관련 trace file의 주요 내용이다.
    Instance name: v815
    Redo thread mounted by this instance: 1
    Oracle process number: 12
    Unix process pid: 3658, image: oracle@oracle8i (ARC3)
    *** Session ID:(12. 1) 1999. 07. 13. 02. 15. 15. 000
    *** 1999. 07. 13. 02. 15. 15. 000
    *** 1999. 07. 13. 02. 33. 06. 000
    ARC3: Begin archiving log# 1 seq# 38 thrd# 1
    ARC3: VALIDATE
    ARC3: PREPARE
    ARC3: INITIALIZE
    ARC3: SPOOL
    ARC3: Creating archive destination 1 : '/bigdisk/oracle8i/dbs/arch/1_38.
    dbf'
    ARC3: Archiving block 1 count 1 to : '/bigdisk/oracle8i/dbs/arch/1_38.
    dbf'
    ARC3: Closing archive destination 1 : /bigdisk/oracle8i/dbs/arch/1_38.
    dbf
    ARC3: FINISH
    ARC3: Archival success destination 1 : '/bigdisk/oracle8i/dbs/arch/1_38.
    dbf'
    ARC3: COMPLETE, all destinations archived
    ARC3: ArchivedLog entry added: /bigdisk/oracle8i/dbs/arch/1_38. dbf
    ARC3: ARCHIVED
    *** 1999. 07. 13. 02. 33. 06. 000
    ARC3: Completed archiving log# 1 seq# 38 thrd# 1
    이 정보를 가지고, archive process 3이 log sequence 38번을
    destination 1 :/bigdisk/oracle8i/dbs/arch 에 archive 시킨 것을 알 수 있다.
    Reference Ducumment
    <Note:73163.1>

    제품 : ORACLE SERVER
    작성날짜 : 2002-04-19
    MULTIPLE ARCHIVER PROCESSES FAQ ( ORACLE 8I NEW FEATURE )
    =========================================================
    PURPOSE
    1. LOG_ARCHIVE_MAX_PROCESSES가 하는 역할
    2. LOG_ARCHIVE_MAX_PROCESSES 값은 동적으로 변경 가능한지 여부
    3. Archiver process의 갯수가 동적으로 바뀌는 메카니즘
    4. 어떤 archiver process가 online log를 archive시켰는지 판단 방법
    Explanation
    1. LOG_ARCHIVE_MAX_PROCESSES가 하는 역할
    Oracle 8i에는 다중 archive destination을 지원하며, 단일 archiver의
    부하를 줄여주기 위해 multiple archiver process를 사용할 수 있다.
    LOG_ARCHIVE_MAX_PROCESSES 파라미터로 구동시킬 최대 ARCH 프로세스의
    갯수를 지정하면 된다.
    만약 LOG_ARCHIVE_START 값이 TRUE로 지정되어 있다면 인스턴스 구동시
    init 파일에 지정된 LOG_ARCHIVE_MAX_PROCESSES에 지정된 값을 읽어
    들인다. 만약 LOG_ARCHIVE_START 값이 true인데 LOG_ARCHIVE_MAX_PROCESSES
    값이 별도로 지정되어 있지 않을 경우에는 arc0 프로세스만을 구동시킨다.
    LOG_ARCHIVE_MAX_PROCESSES 값이 별도로 지정되었을 경우 (1 - 10 범위),
    arc0, arc1 과 같은 추가 프로세스를 구동시킨다.
    하지만, 이 파라미터 값을 기본값 1이 아닌 다른 값으로 명시적으로 지정할
    필요는 없다. 왜냐하면, 시스템에서 몇개의 ARCn 프로세스가
    필요한지를 판단하여, 추가 ARCn 프로세스를 생성하기 때문이다.
    2. LOG_ARCHIVE_MAX_PROCESSES 값은 동적으로 변경 가능한지 여부
    alter system 명령에서 set LOG_ARCHIVE_MAX_PROCESSES=n 으로
    지정하여 동적으로 값을 변경할 수 있다. 이때 n은 1 부터 10사이의
    값이어야 한다. 하지만, LOG_ARCHIVE_START 값이 FALSE로 지정되어
    있을 경우에는, 명령을 실행시켜도 아무런 영향을 미치지
    못한다.
    3. Archiver process의 갯수가 동적으로 바뀌는 메카니즘
    만약 LOG_ARCHIVE_START 값이 TRUE로 지정되어 있다면, 오라클에서는
    구동시 하나의 archiver process (ARC0)를 구동시킨다. 이 파라미터
    값은 필요시 LATER SYSTEM 명령으로 지정된 갯수만큼의
    archive process를 구동시킬 수 있다.
    예)
    SVRMGRL>alter system set LOG_ARCHIVE_MAX_PROCESSES=4;
    위 명령을 실행 시키면 다음과 같은 절차에 따라 ARC1, ARC2, ARC3를
    추가한다.
    1) Shadow process는 primary archive process에게 프로세스 갯수를
    늘릴 것을 요청한다.
    2) Archiver process는 kcrrschd 함수를 호출한다. (kcrrschd:
    다중 arch process를 schedule)
    3) 만약 요청된 process의 갯수가 현재 사용중인 archiver process
    갯수보다 작은지 확인한다. 만약 새로 지정된 값이 적거나, ARCHIVING이
    DISABLE 된 상태라면 다른 조치를 취하지 않고 return 한다. 그렇지
    않다면 지원되는 최대 갯수인 10을 넘는지 확인하고 10을 넘을 경우에는
    프로세스의 갯수를 10으로 지정한다.
    4) Scheduler 함수는 kcrxs{} structure에 대한 latch를 확보한다.
    여기서 kcrxs{} structure는 ARCH Activation status를 나타낸다.
    5) Scheduler 함수는 지정된 process 갯수 만큼 loop를 돌면서
    schedule된 상태를 structure KCRRSCHED에 반영시킨다.
    6) 그리고 나서 latch를 release 시킨 후 kcrrsmp 함수를 ( kcrrsmp:
    다중 arch processs 구동 ) 호출한다.
    7) kcrrsmp 함수는 kcrrxs{} structure (ARCH 구동 상태)에 대한 latch를
    확보하여 code 실행을 serialize 시켜 이 함수가 동시에 실행되더라도
    한번에 하나씩 실행될 수 있도록 한다.
    8) pending 상태에 있는 archiver process를 스케쥴링 하고, dead process가
    있으면 clean up 시킨다.
    9) 그리고 나서 이 함수는 지정된 process 갯수 만큼 loop를 돌면서
    KCRRSCHED 상태를 KCRRSTART으로 바꾸어, archiver process들을
    구동 준비 상태로 만든다.
    10) latch를 release 시킨 후 ARCH 프로세스를 구동시킨다.
    11) kcrrsmp함수는 latch를 다시 획득한다. 각각의 archiver 프로세스는
    자기 자신을 activate 시킬 것을 통보 받는다. archiver process는
    자기 자신을 activate 시킨 후 alert file에 관련 사항을 기록한다.
    12) 호출을 하는 함수는 모든 archiver process가 자기 자신을
    activate 시키고, kcrrxs structure의 내용을 갱신할 때 까지
    sleep 상태에서 대기한다.
    13) 끝으로, 현재 archiver process의 갯수가 요청된 archiver process
    의 갯수와 일치 하면, latch를 release 시키고 break 한다. ( C
    에서의 break )
    alert. log 에는 위 과정이 다음과 같이 반영된다.
    sql: prodding the archiver
    ALTER SYSTEM SET log_archive_max_processes=4;
    Tue Jul 13 02:15:14 1999
    ARC0: changing ARC1 KCRRNOARCH->KCRRSCHED
    ARC0: changing ARC2 KCRRNOARCH->KCRRSCHED
    ARC0: changing ARC3 KCRRNOARCH->KCRRSCHED
    ARC0: STARTING ARCH PROCESSES
    ARC0: changing ARC1 KCRRSCHED->KCRRSTART
    ARC0: changing ARC2 KCRRSCHED->KCRRSTART
    ARC0: changing ARC3 KCRRSCHED->KCRRSTART
    ARC0: invoking ARC1
    Tue Jul 13 02:15:15 1999
    ARC1: changing ARC1 KCRRSTART->KCRRACTIVE
    Tue Jul 13 02:15:15 1999
    ARC0: Initializing ARC1
    ARC0: ARC1 invoked
    ARC0: invoking ARC2
    ARC1 started with pid=10
    ARC1: Archival started
    Tue Jul 13 02:15:15 1999
    ARC2: changing ARC2 KCRRSTART->KCRRACTIVE
    Tue Jul 13 02:15:15 1999
    ARC0: Initializing ARC2
    ARC2 와 ARC3도 동일한 절차를 따른다.
    흥미로운 사실은 프로세스의 갯수를 줄일 수도 있다는 것이다. 예를 들어
    다음과 같은 명령을 실행시킬 경우
    SVRMGRL>alter system set LOG_ARCHIVE_MAX_PROCESSES=2;
    다음과 같은 작업이 순서대로 실행된다.
    1) shadow process는 현재 active 상태인 archiver process와 접속을 한다.
    2) archiverprocess는 kcrrxmp 함수를 호출한다. ( kcrrxmp: 다중
    Arch process 정지 )
    3) kcrrxmp 함수는 kcrrxs{} structure에 (ARCH 구동 상태) 대한 latch를 획득하여 다른 프로세스에서 structure를 동시에 병경하지 않도록 한다.
    4) 새로 요청된 archiver process의 갯수가 현재 사용중인 archiver process
    의 갯수보다 작은지 확인한다.
    5) 만약 작다면, archiver process 목록 가운데, 가장 최근에 schedule
    되어, archival 작업에 schedule 차례가 금방 돌아 오지 않을 프로세스를
    찾아낸다.
    6) 각각의 프로세스에 대해 KCRRACTIVE 상태에서 KCRRSHUTDN로 상태를
    변경할 것을 요청한다.
    7) 상태가 바뀌면, OS에서 해당 프로세스를 종료시키도록 하고, 상태를
    KCRRDEAD로 바꾼다. 관련된 상태 정보가 정리되고 kcrrxs{} structure의
    내용이 갱신된다.
    6) ,7) 과정은 지정된 archiver process 갯수로 줄어들 때 까지
    반복된다.
    8) 새로운 archiver process의 갯수로 kcrrxs structure 내용이 갱신된다.
    9) latch를 release 시킨다.
    상태 변동은 다음과 같이 alert. log 파일에 반영된다.
    sql: prodding the archiver
    Tue Jul 13 00:34:20 1999
    ARC3: changing ARC0 KCRRACTIVE->KCRRSHUTDN
    ARC3: sending ARC0 shutdown message
    ARC3: changing ARC1 KCRRACTIVE->KCRRSHUTDN
    ARC3: sending ARC1 shutdown message
    ARC3: received prod
    Tue Jul 13 00:34:20 1999
    ALTER SYSTEM SET log_archive_max_processes=2;
    Tue Jul 13 00:34:20 1999
    ARCH shutting down
    ARC0: Archival stopped
    ARC0: changing ARC0 KCRRSHUTDN->KCRRDEAD
    Tue Jul 13 00:34:20 1999
    ARCH shutting down
    ARC1: Archival stopped
    ARC1: changing ARC1 KCRRSHUTDN->KCRRDEAD
    4. 어떤 archiver process가 online log를 archive시켰는지 판단 방법
    Archiver process는 round-robin 방식으로 archiving 작업을 수행하도록
    schedule 된다. 만약 다중 archiver process가 부하에 따라 activate 된
    경우는 여러가지 경우의 수가 있을 수 있다. Oracle 8i에서는 다중
    archive log dest를 지원하면서 archive log에 대한 duplexing을 지원
    하기 때문에, 어떤프로세스가 log file을 archive 시켰는지를 기록할 필요가
    있다.
    Oracle 8i에서 archival 작업은 성공할 때 마다 trace file에 archiver
    process 명을 기록한다.
    다음은 관련 trace file의 주요 내용이다.
    Instance name: v815
    Redo thread mounted by this instance: 1
    Oracle process number: 12
    Unix process pid: 3658, image: oracle@oracle8i (ARC3)
    *** Session ID:(12. 1) 1999. 07. 13. 02. 15. 15. 000
    *** 1999. 07. 13. 02. 15. 15. 000
    *** 1999. 07. 13. 02. 33. 06. 000
    ARC3: Begin archiving log# 1 seq# 38 thrd# 1
    ARC3: VALIDATE
    ARC3: PREPARE
    ARC3: INITIALIZE
    ARC3: SPOOL
    ARC3: Creating archive destination 1 : '/bigdisk/oracle8i/dbs/arch/1_38.
    dbf'
    ARC3: Archiving block 1 count 1 to : '/bigdisk/oracle8i/dbs/arch/1_38.
    dbf'
    ARC3: Closing archive destination 1 : /bigdisk/oracle8i/dbs/arch/1_38.
    dbf
    ARC3: FINISH
    ARC3: Archival success destination 1 : '/bigdisk/oracle8i/dbs/arch/1_38.
    dbf'
    ARC3: COMPLETE, all destinations archived
    ARC3: ArchivedLog entry added: /bigdisk/oracle8i/dbs/arch/1_38. dbf
    ARC3: ARCHIVED
    *** 1999. 07. 13. 02. 33. 06. 000
    ARC3: Completed archiving log# 1 seq# 38 thrd# 1
    이 정보를 가지고, archive process 3이 log sequence 38번을
    destination 1 :/bigdisk/oracle8i/dbs/arch 에 archive 시킨 것을 알 수 있다.
    Reference Ducumment
    <Note:73163.1>

  • How to stop and start only the process of Oracle Application Express?

    I'd like to know how to stop the process of Oracle Application Express on my server installed oracle express package.
    After installed Oracle Express edition, not only oracle database server processes but also Oracle Application Express, such as http server, is started automatically...
    I hope to stop and start Application Express on demand but is this feature enabled?

    Oracle Apex is an API, if that helps you understand / visualize. You do not start Apex process nor stop it.
    When an Apex session starts it starts calling the API.
    You can however start / stop the listener. It may be OHS, ApexListener and the J2EE container running it, OC4J or any other "server" that you are using.
    The built-in EPG is something like an API again, you cannot start / stop it but you can disable/enable it with DBMS_XDB.SETHTTPPORT API.
    Regards,

Maybe you are looking for