zoukankan      html  css  js  c++  java
  • Oracle Assets Additions APISample Script(No Invoices)

    Sample Script: Using the Additions API with No Invoices

    The following sample script shows how you can use the Additions API to test a manual change, when no invoice information is used:

    set serveroutput on
    declare

        l_trans_rec FA_API_TYPES.trans_rec_type;
        l_dist_trans_rec FA_API_TYPES.trans_rec_type;
        l_asset_hdr_rec FA_API_TYPES.asset_hdr_rec_type;
        l_asset_desc_rec FA_API_TYPES.asset_desc_rec_type;
        l_asset_cat_rec FA_API_TYPES.asset_cat_rec_type;
        l_asset_type_rec FA_API_TYPES.asset_type_rec_type;
        l_asset_hierarchy_rec FA_API_TYPES.asset_hierarchy_rec_type;
        l_asset_fin_rec FA_API_TYPES.asset_fin_rec_type;
        l_asset_deprn_rec FA_API_TYPES.asset_deprn_rec_type;
        l_asset_dist_rec FA_API_TYPES.asset_dist_rec_type;
        l_asset_dist_tbl FA_API_TYPES.asset_dist_tbl_type;
        l_inv_tbl FA_API_TYPES.inv_tbl_type;
        l_inv_rate_tbl FA_API_TYPES.inv_rate_tbl_type;

        l_return_status VARCHAR2(1);
        l_mesg_count number := 0;
        l_mesg_len number;
        l_mesg varchar2(4000);

    begin

        fnd_profile.put('PRINT_DEBUG', 'Y');
        dbms_output.enable(1000000);

        FA_SRVR_MSG.Init_Server_Message;
        FA_DEBUG_PKG.Initialize;

        -- desc info
        l_asset_desc_rec.description := 'Dell computer';
        l_asset_desc_rec.asset_key_ccid := 2;

        -- cat info *** NEED TO CHANGE BASED ON CATEGORY SETUP FOR YOUR BOOK ***
        l_asset_cat_rec.category_id := 21;

        --type info
        l_asset_type_rec.asset_type := 'CAPITALIZED';

        -- fin info
        l_asset_fin_rec.cost := 50000;
        l_asset_fin_rec.date_placed_in_service := '&DPIS';
        l_asset_fin_rec.depreciate_flag := 'YES';
        l_asset_fin_rec.deprn_method_code := 'HS-FORM NBV';
        l_asset_fin_rec.life_in_months := 72;

        -- deprn info
        l_asset_deprn_rec.ytd_deprn := 500;
        l_asset_deprn_rec.deprn_reserve := 500;
        l_asset_deprn_rec.bonus_ytd_deprn := 0;
        l_asset_deprn_rec.bonus_deprn_reserve := 0;


        -- book / trans info
        l_asset_hdr_rec.book_type_code := '&book';
        l_trans_rec.transaction_date_entered := l_asset_fin_rec.date_placed_in_service;
        l_trans_rec.who_info.last_updated_by := FND_GLOBAL.USER_ID;

        -- distribution info

        l_asset_dist_rec.units_assigned := 1;
        l_asset_dist_rec.expense_ccid := 12975;
        l_asset_dist_rec.location_ccid := 2;
        l_asset_dist_rec.assigned_to := null;
        l_asset_dist_rec.transaction_units := l_asset_dist_rec.units_assigned;
        l_asset_dist_tbl(1) := l_asset_dist_rec;


        --l_asset_desc_rec.asset_number :=
        --l_asset_desc_rec.property_type_code := 'REAL';
        --l_asset_desc_rec.property_1245_1250_code := '1245';
        --l_asset_desc_rec.in_use_flag := 'YES';
        --l_asset_desc_rec.owned_leased := 'OWNED';
        --l_asset_desc_rec.new_used := 'NEW';
        --l_asset_desc_rec.inventorial := 'YES';
        --l_asset_desc_rec.manufacturer_name :=
        --l_asset_desc_rec.serial_number :=
        --l_asset_desc_rec.model_number :=
        --l_asset_desc_rec.tag_number :=
        --l_asset_desc_rec.parent_asset_id :=
        --l_asset_desc_rec.warranty_id :=
        --l_asset_desc_rec.lease_id :=

        -- For tax addition, will need existing asset_id
        --l_asset_hdr_rec.asset_id :=

        --l_asset_fin_rec.salvage_value :=
        --l_asset_fin_rec.unrevalued_cost :=
        --l_asset_fin_rec.short_fiscal_year_flag :=
        --l_asset_fin_rec.conversion_date :=
        --l_asset_fin_rec.orig_deprn_start_date :=
        --l_asset_fin_rec.unit_of_measure :=

        --l_asset_deprn_rec.reval_deprn_reserve :=
        --l_asset_deprn_rec.reval_amortization_basis :=

        -- Accept amort start date for amortize NBV additions
        -- l_trans_rec.amortization_start_date :=
        -- to_date('&amort_start_date', 'DD-MON-YYYY');

        -- call the api
        fa_addition_pub.do_addition
        (p_api_version => 1.0,
        p_init_msg_list => FND_API.G_FALSE,
        p_commit => FND_API.G_FALSE,
        p_validation_level => FND_API.G_VALID_LEVEL_FULL,
        x_return_status => l_return_status,
        x_msg_count => l_mesg_count,
        x_msg_data => l_mesg,
        p_calling_fn => null,
        px_trans_rec => l_trans_rec,
        px_dist_trans_rec => l_dist_trans_rec,
        px_asset_hdr_rec => l_asset_hdr_rec,
        px_asset_desc_rec => l_asset_desc_rec,
        px_asset_type_rec => l_asset_type_rec,
        px_asset_cat_rec => l_asset_cat_rec,
        px_asset_hierarchy_rec => l_asset_hierarchy_rec,
        px_asset_fin_rec => l_asset_fin_rec,
        px_asset_deprn_rec => l_asset_deprn_rec,
        px_asset_dist_tbl => l_asset_dist_tbl,
        px_inv_tbl => l_inv_tbl,
        px_inv_rate_tbl => l_inv_rate_tbl
        );

        dbms_output.put_line(l_return_status);

        if (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
            dbms_output.put_line('FAILED');
            -- dbms_output.put_line(to_char(sqlerr));
            dbms_output.put_line(sqlerrm);
            l_mesg_count := fnd_msg_pub.count_msg;

            if l_mesg_count > 0 then

                l_mesg := chr(10) || substr(fnd_msg_pub.get
                (fnd_msg_pub.G_FIRST, fnd_api.G_FALSE),
                1, 512);
                for i in 1..2 loop -- (l_mesg_count - 1) loop
                    l_mesg := l_mesg || chr(10) ||
                    substr(fnd_msg_pub.get
                    (fnd_msg_pub.G_NEXT,
                    fnd_api.G_FALSE), 1, 512);
                end loop;

                fnd_msg_pub.delete_msg();

                l_mesg_len := length(l_mesg);
                for i in 1..ceil(l_mesg_len/255) loop
                    dbms_output.put_line(substr(l_mesg, ((i*255)-254), 255));
                end loop;
            end if;
        else
            dbms_output.put_line('SUCCESS');
            dbms_output.put_line('THID' || to_char(l_trans_rec.transaction_header_id));
            dbms_output.put_line('ASSET_ID' || to_char(l_asset_hdr_rec.asset_id));
            dbms_output.put_line('ASSET_NUMBER' || l_asset_desc_rec.asset_number);
        end if;

    end;

    /

  • 相关阅读:
    php $_SERVER 中的 QUERY_STRING和REQUEST_URI
    php 弱类型比较
    php函数漏洞
    web源码泄露
    sqlmap 基本使用步骤(一)
    php 调用远程url
    $_POST 和 php://input 的区别
    poj 3461 Oulipo (KMP入门)
    hdu 5417 Victor and Machine
    HDU 1885 Key Task (bfs)
  • 原文地址:https://www.cnblogs.com/benio/p/1615910.html
Copyright © 2011-2022 走看看