FA常用表


四、資產模塊常用表

 

對於資產模塊,個人實際接觸比較少,主要是通過官方文檔和一個簡單的資產明細報表的開發做的理解,會有很多不准確甚至錯誤的地方,之后會不斷更新完善

 

1、首先通過前台ebs界面找到各個字段對應的各個表,而后分析各個表本身,以及相關的關系,在此過程中熟悉方法,並加深理解:

通過SYSTEM中的last—query 是前台進行操作后,后台進行的最近的一個查詢語句,而並不一定在查找該具體項是從哪里來的;要想具體看在那里  需要利用屬性 項目 里 的block找到相應的sql語句;那么依然找不到一些想要的數據時怎么來的怎么辦呢? 通過‘幫助’里面找到最后一項的版本信息中找到form的名字,從服務器中拉出來一點點看

2、FA中涉及到的常用表的理解

總體上,絕大部分表中都有asset_id和book_type_code,因為都是大部分信息在這個限定下的才有實際應用意義,-類似於總賬模塊下的 ledger_id和period_name(當然coa部分在ledger_id卻情下來后也定下來了)自我理解,對於現實中的資產操作 無非就是 買入 折舊 報廢,以及在這個過程中的分配對於這些動作 的相關信息儲存在下面各個表當中,不同的動作導致不同的表中插入各種數據

將報廢看作折舊的最終狀態做理解,所以報廢的一些操作也會在fa_books中產生數據的影響,而折舊和fa_books表可以類比總賬部分行表和頭表的關系做理解,

(1)FA_ADDITIONS_B

表理解:

FA_ADDITIONS_B包含描述性信息,以幫助您識別您的資產。 Oracle資產不使用此表進行計算折舊。

字段理解:

資產ID(ASSET_Id關聯其他表)

資產編號(ASSET_NUMBER)

類別(ASSET_CATEGORY_ID)

說明(description)

序列號(SERIAL_NUMBER)    

資產類型(ASSET_TYPE)

數量(CURRENT_UNITS)當執行數量上的報廢時,Oracle資產減少CURRENT_UNITS報廢的數量。

所有權(OWNED_LEASED)

已購(NEW_USED)

屬類別(ATTTIBUTE_CATEGORY_CODE)

與其他表的重要關聯:

  FA_CATEGORIES_VL中的(CATEGORY_ID)關聯字段(ASSET_CATEGORY_ID )得到類別中文描述;

關聯到前台的大類、小類

(2)FA_BOOKS

FA_BOOKS包含計算折舊所需的信息。


      當最初添加資產時,Oracle Assets在其中插入一行表。這將成為資產的“活動”行。每當你使用折舊表(FA_DEPRN_DETAIL)以更改資產的折舊信息,或如果報廢或恢復它,Oracle Assets在表中插入另一行,
然后它成為新的“活動”行,並將前一行標記為過時。在任何時間點,在任何給定的折舊帳簿資產的表中只有一個“活動”行。通常,Oracle資產使用活動行,   其特點為 DATE_INEFFECTIVE和TRANSACTION_HEADER_ID_OUT為NULL。同時在實際寫包的時候,這2個字段,和period_counter、period_name通過最大值,最小值,去確定一段期間,在資產剩余使用壽命的函數中尤為明顯。另外TRANSACTION_HEADER_in與DATE_EFFECTIVE同樣也有聯系,但是並不是簡單的1對1的關系,這部分內容需要在實踐中進一步理解!!!!!!!!!!!!!!!

當Oracle資產終止一行時,DATE_INEFFECTIVE和TRANSACTION_HEADER_OUT設置為新行的DATE_EFFECTIVE和新行的TRANSACTION_HEADER_IN。你可以很容易地識別受同一事務影響的行,因為它們具有相同的DATE_EFFECTIVE / DATE_INEFFECTIVE和TRANSACTION_HEADER_ID_IN /
TRANSACTION_HEADER_ID_OUT對。

當Oracle資產創建新行時,用於TRANSACTION_HEADER_ID_IN列的值與TRANSACTION_HEADER_ID插入到的行FA_TRANSACTION_HEADERS,DATE_EFFECTIVE是系統日期。


當報廢資產時,Oracle Assets插入一個新行以報廢的金額為度降低當前成本(COST)。當恢復資產時,Oracle Assets插入一個新行增加COST 的值,增加多少呢,對應COST_RETIRED FA_RETIREMENTS中對應行的COST_RETIRED。

字段理解:

賬簿(book_type_code),

原始價值(original_cost)

當前價值(cost) 這個值得改變與折舊沒有關系,只與前台是否做調整,以及東西是否報廢去衡

殘值(salvage_value)本字段和下面的percent_salvage_value字段兩者只能有一個字段有值,salvage字段是由前台設定的,當其為null時,殘值用當前價值cost*殘值率得出

殘值率(percent_salvage_value)

資產啟用時間(date_placed_in_service) 與原始價值在邏輯位置上相同,一般和下面deprn_start_date字段寫相等

折舊開始日期(deprn_start_date) 計算資產使用壽命時,可能用到的字段,與折舊日期(prorate_date)也會用到

這里涉及到一個問題什么時候用折舊開始日期,因為按照目前項目上的情況,都是資產於下月的1號進行折舊,即

當前賬期的折舊,在下個賬期進行計算。好好理解2個字段的不同。

每次事務發生的時間開始時間(date_effective)本次折舊發生的時間,這里應該理解折舊是一個時間段,而非一個時間點

每次事務發生的時間結束時間(date_ineffective)本次折舊結束的時間點

transactions_header_id_in  每筆折舊發生時產生的id  理解上和date_effective 相似,不過這是一個i d transactions_header_id_out每筆折舊發生時產生的id  理解上和date_ineffective 相似,不過這是一個id      

對於上面的字段, date_effective和  transactions_header_id_in應該是1對1 的關系,但是在實際應用的函數書寫考慮時,並未做1對1的關系,這里需要進一步理解

 

與其他表的關聯關系:

 

與FA_BOOK-CONTROLS相關 通過book_type_code 或者這就賬簿的總體信息,

FA_DISTRIBUTION_HISTORY(transactions_header_id_in,transactions_header_id_out)相關

 

(3)FA_BOOK-CONTROLS

包含所有的影響折舊帳簿中的資產的信息
set_of_books_id 對應總賬 gl_ledgers中的ledger_id

Accounting_flex_structure對應總賬 gl_ledgers中的 coa


以LAST_PERIOD_COUNTER是運行折舊的最近的賬期。 Oracle資產使用它來防止在一個期間內多次運行折舊程序
並確保在連續的期間內都可以運行折舊程序
INITIAL_PERIOD_COUNTER記錄在使用oracle資產模塊進行折舊的第一個期間(因為可能之前不是用的oracle系統進行折舊)
INITIAL_DATE記錄在使用oracle資產模塊進行第一次折舊的時間

ACCOUNTING_FLEX_STRUCTURE 就是總帳中的coa 相當於GL_CODE_COMBINATIONS中的CHART_OF_ACCOUNTS_ID。

DEPRN_REQUEST_ID最近一次進行折舊請求的id

當然book_type_name 賬簿的中文 描述也在這里面

(4)FA_DEPRN_DETAIL

其包含每個分配行上的關於這就的信息。 Oracle資產使用此信息為總賬模塊的日記賬做信息存儲吧。
每次運行折舊時的資產,該表中每個分配行插入一行;例如,如果你將資產分配給兩個不同的成本中心,折舊時程序在此表中為資產插入兩行。所有會在相同的asset_Id下有多個distribution_Id ,其中distribution_Id可能相同也可能不同,因為同一批分配的distribution_Id相同,不同批的自然就不同

DEPRN_AMOUNT是本分配線下的本次這就的金額

YTD_DEPRN為本會計年度的這就金額綜合

DEPRN_RESERVE 為當前所有這就金額總和

添加資產時,Oracle Assets在此表中插入一行在本期間之前的期間。此行具有資產ADDITION_COST_TO_CLEAR列中的成本,以及DEPRN_SOURCE_CODE為'B'。此列用於報告新資產。基本可以理解為剛分配的時候

運行折舊時,Oracle Assets將成本轉移到當前周期行中的COST列,此行的DEPRN_SOURCE_CODE為'D'。

 

這里關於折舊和分配加上自己的一些理解,首先新增一條資產以后在折舊明細表中肯定存在一個distribution_id,特殊理解點在於如果之后如果以此資產進行多次分配,折舊表中不會再增加distribution_id,.而在分配歷史表中則在不斷增加數據,二者做關聯的時候注意使用外連接的方式(這個思路有待求證)

字段理解:

Period_counter 與FA_DEPRN_PERIODS的相同字段做關聯

(5)FA_DEPEN_PERIODS

包括有關折舊期間的信息,PERIOD_OPEN_DATE和PERIOD_CLOSE_DATE每次進行折舊的期間的開始結束日期。(和其他表中的date_effective,date_ineffective的關聯關系稍微想想)

每次運行折舊程序時,它將關閉當前期間,將PERIOD_CLOSE_DATE設置為系統日期。 它也是通過在此表中插入一個新行來打開下一個期間其中PERIOD_CLOSE_DATE為NULL,PERIOD_OPEN_DATE等於舊行的PERIOD_CLOSE_DATE。

(6)FA_RETIREMENTS

包含有關資產報廢的信息。(這里報廢的概念其實也包括資產的恢復,即REINSTATE)

        當報廢資產,或者恢復資產並更新時,這個表中就會插入一條數據當報廢一條數據時,Oracle Assets插入的行具有的TRANSACTION_HEADER_ID_IN和DATE_EFFECTIVE這兩個參數對應在FA_TRANSACTION_HEADERS中的TRANSACTION_HEADER_ID和DATE_EFFECTIVE。並且此時的TRANSACTION_HEADER_ID_OUT和DATE_INEFFECTIVE為NULL。
        如果恢復了已經計算收益或損失的Oracle資產的報廢,Oracle資產則會更新TRANSACTION_HEADER_ID_OUT和DATE_INEFFECTIVE用新的FA_TRANSACTION_HEADERS中的TRANSACTION_HEADER_ID和DATE_EFFECTIVE行

        如果恢復了沒有計算增益或損失Oracle資產的報廢,Oracle Assets只是從表中刪除行,因為它沒有財務影響。
辣么,問題來了,怎么去知道他是否進行了收益和損失的計算呢

通過字段status的內容:

PENDING     Oracle資產尚未計算收益或損失的報廢。


PROCESSED   Oracle資產已經計算了收益或虧損的報廢。

REINSTATE      Oracle資產尚未處理恢復。

DELETE              Oracle資產已處理恢復。

 

字段理解:

報廢價值(COST_retired)

報廢狀態(STATUS)

報廢類型(retirement_type_code)

實際報廢價值(nbv_retired)

表關聯:

關於報廢和折舊表的聯系腦子中並不清楚,暫時先不做關聯,等實際應用上再去理解吧

FA_TRANSACTION_HEADERS(TRANSACTION_HEADER_ID,DATE_EFFECTIVE)與(TRANSACTION_HEADER_ID_in,date_effective),此時報廢表中的TRANSACTION_HEADER_ID_out和date_ineffective為空

(7) FA_DISTRIBUTION_HISTORY

FA_DISTRIBUTION_HISTORY

包含分配資產的雇員,位置和會計Flexfield值有關的信息。折舊程序使用此信息

分配折舊費用,Transfers form使用它維持資產轉移的審計跟蹤。

當您使用Transfers for初始分配給資產時,Oracle Assets為每個分配插入一行。每當轉移,報廢,恢復或重新分類資產,Oracle資產將相應的行標記為過時並創建新行,新航可以反映分配單位,員工,總帳折舊費用科目或位置。

 

Oracle資產通過設置DATE_INEFFECTIVE和TRANSACTION_HEADER_ID_OUT到來終止一次分配,分別對應新行的DATE_EFFECTIVE和TRANSACTION_HEADER_ID_IN。這意味着你可以識別受同一事務影響的行,因為它們有相同的DATE_EFFECTIVE / DATE_INEFFECTIVE和TRANSACTION_HEADER_ID_IN / TRANSACTION_HEADER_ID_OUT對。

 

對於新行,TRANSACTION_HEADER_ID_IN與FA_TRANSACTION_HEADERS中相同已插入行的TRANSACTION_HEADER_ID相等,DATE_EFFECTIVE系統日期。

 

當執行完全報廢時,Oracle資產將更新資產的當前分配行,其中RETIREMENT_ID為

FA_RETIREMENTS中的ETIREMENT_ID,以便您可以輕松確定哪個報廢影響行。 Oracle資產字段TRANSACTION_UNITS中以負數存儲單位數字。TRANSACTION_UNITS的總數為FA_RETIREMENTS中UNITS,除了符號相反。

 

當您執行部分報廢時,Oracle資產更新這部分報廢的相關行。任何分布對於任何還存有數量的行,會在units_assigned減少已經報廢的數量,然后插入一個新的行,而終止舊的行。

 

如果完全恢復報廢,Oracle Assets插入新行,這新行中的數據與完全報廢之前的數據相同,除了它們有不同的DISTRIBUTION_ID,TRANSACTION_HEADER_ID_IN和DATE_EFFECTIVE。

 

如果你部分恢復報廢,Oracle Assets插入新行,其中UNITS_ASSIGNED中加上之前報廢數量,並分配一個新的 DISTRIBUTION_ID,TRANSACTION_HEADER_ID_IN和DATE_EFFECTIVE。

 

RETIREMENT_ID標識受退休影響的所有行。

TRANSACTION_UNITS 是每一次報廢、恢復報廢、轉移、增加、重分類的發生事件的數量

 

(新)fa_asset_keywords 

首先要明白,資產模塊有三個彈性域,

1,類別

2,關鍵字

3,(分配表中)地點

fa_additions_b.ASSET_KEY_CCID  和fa_asset_keywords.CODE_COMBINATION_ID 可與 fnd_flex_values_vl,fnd_id_flex_segments等表通過gcc表中的各個SEGMENT關聯起來,找到上面3個彈性域的相關信息

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM