Oracle繰延売上原価(DCOGS)会計の仕組みと設定方法
本記事では、Oracle® Cost Management リリース12.0.0以降で利用できる「繰延売上原価(Deferred Cost of Goods Sold:DCOGS)」勘定機能について解説します。この拡張機能により、売上原価(COGS)を収益に直接対応させることが可能となり、従来は実現できなかった収益と費用の正確なマッチングが実現します。
はじめに
以前のバージョンでは、在庫から出荷された商品の価値は、その出荷がまだ収益を計上していなくても、売上原価(COGS)として即時に費用処理されていました。この拡張機能の導入により、在庫から出荷された商品の価値は、まずDCOGS勘定に一時的に計上されるようになります。
この拡張機能は、一般に公正妥当と認められた会計原則(GAAP)の勧告に基づき、収益と売上原価を同期させる仕組みを実現しています。システムが収益の一定割合を認識すると、出荷済み商品価値の同じ割合がDCOGS勘定からCOGS勘定へと自動的に振り替えられます。
会計実務では、収益とそれに対応する売上原価を同一会計期間で認識することが求められます。この拡張機能により、販売オーダー明細行ごとのCOGSと、その明細行に対して請求された収益とのマッチングが自動化されます。
COGSの繰延は、以下の要素に適用されます。
- ピック・トゥ・オーダー(非構成品目)およびアセンブル・トゥ・オーダー(構成品目)の両方の販売オーダー
- 顧客対応事業単位からの販売オーダー。バージョン11.5.10で導入された新しい会計フローでは、これらのオーダーに含まれる直送(ドロップシップメント)が除外されるケースがありました。
- 繰延COGSを持つ販売オーダーを参照する返品承認(RMA)。この拡張機能では、これらのRMAを元の販売オーダーコストで処理し、最新のCOGS認識率を維持します。
注記:RMAが販売オーダーに関連付けられている場合、システムはDCOGSと実際のCOGS間でのクレジット配分を処理し、既存の原価配分比率を維持します。一方、RMAに紐づく販売オーダーが存在しない場合、DCOGSは発生しません。
DCOGS勘定の設定方法
DCOGS勘定を設定するには、ナビゲーターから「在庫」→「設定」→「組織」→「パラメータ」→「その他の勘定」へと移動します。

古いバージョンからアップグレードする場合、組織パラメータが空欄(NULL)であれば、システムはCOGS勘定の値をもってDCOGS勘定を自動的に設定します。必要に応じて、この値を変更することも可能です。
COGSデータフロー
次の図は、COGSのデータフロー全体を示したものです。

以下のセクションでは、この拡張機能がさまざまな状況をどのように処理するのかを順に説明します。
販売オーダー
販売オーダーを発行すると、システムは次のような変更を行います。
- Cst_cogs_events.COGS_Percentage を
0に設定します。 - Cst_cogs_events.Mmt_Transaction_id を、Mtl_Material_Transactions テーブル内の販売オーダー出庫トランザクションIDに設定します。
- Cst_cogs_events.costed を Mtl_Material_Transactions.costed_flag の値に設定します。販売オーダーのトランザクションが原価計算されると、この値は
NULLになります。 - Cst_cogs_events.Event Type を
1に設定します(1は「販売オーダー出庫」を意味します)。 - cst_revenue_cogs_match_lines テーブルに、Deferred_COGS_Acct_id、COGS_Acct_id、Unit_cost、Original_shipped_Qty の各列を登録します。
注記:Oe_order_lines_all.Invoice_Interface_Status_Code が Yes の場合は標準的な販売オーダーを、Not_Eligible の場合は出荷のみの明細行を意味します。
これらの列は各テーブル間を連携させ、販売オーダーの入力から資材の出庫まで、データがシームレスに流れることを保証します。
収益認識と会計処理
注記:RA_CUST_TRX_LINE_GL_DIST_ALL.account_set_flag が N の場合は収益認識が実行されたことを、Y の場合は収益認識が未実行であることを意味します。
収益認識プロセスを実行した後、コストと収益をマッチングさせるために、次の変更が行われます。
- cst_revenue_recognition_lines.potentially_unmatched_flag を
Yに設定します。 - cst_revenue_recognition_lines.revenue_recognition_percent を
1に設定します(1は100%を意味します)。
COGS認識
収益認識プログラムの実行後、システムは次のような変更を行います。
- cst_cogs_events.COGS_percentage を
1に設定します(1は100%を意味します)。 - cst_cogs_events.mmt_transaction_id を、Mtl_Material_Transactions テーブル内のCOGS認識トランザクションIDに設定します。
- cst_cogs_events.Event Type を
3に設定します(3は「COGS認識」を意味します)。 - cst_revenue_recognition_lines.potentially_unmatched_flag を
Nullに設定します。これは、認識イベントとトランザクションが正常に生成されたことを示します。
まとめ
本記事では、DCOGS会計の基本概念と、関連テーブル間のバックエンド連携の仕組みについて解説しました。収益と売上原価を正確にマッチングさせることで、GAAPに準拠した財務報告の精度向上が期待できます。
データベースに関する詳細情報については、ぜひ公式ドキュメントをご確認ください。
個別のご相談については、www.rackspace.com にアクセスし、Sales Chat をクリックしてお気軽にお問い合わせください。
ご意見やご質問がある場合は、フィードバックタブよりお寄せください。
-
Oracle Application Express(APEX)とは?特徴・アーキテクチャからインストール手順まで徹底解説
あなたの組織のアプリケーション開発を、より迅速に、より低コストで、より効率的に行えたらとお考えではありませんか?その答えとなるのが、ドラッグ&ドロップ操作で直感的に開発を進められるビジュアル開発手法「ローコード開発」、そしてそれを実現するOracle® Application Express(APEX)です。 はじめに APEXを活用すれば、変化し続けるビジネス要件へ柔軟に対応できるようになり、開発者だけでなく組織全体が素早くソリューションの一員となれるようになります。 画像出典: https://apex.oracle.com/en/ なぜAPEXなのか? APEXは、開発者
-
Oracle 19cのDBCAコマンドでデータベースをクローンする方法【サイレントモード完全ガイド】
本記事では、Oracle Database 19cの新機能であるDatabase Configuration Assistant(DBCA)を使用して、ソースデータベースのバックアップを作成することなく、リモートのプラガブル・データベース(PDB)をコンテナ・データベース(CDB)へクローンする手順をご紹介します。 DBCAによるクローンの最大の特長は、ソースからターゲットへの複製にかかる時間が最小限に抑えられる点です。 ソースDBの構成 CDB:LCONCDB PDB:LCON 以下は、ソース側の各コンテナ(CDBおよびPDB)に存在するDBFファイルの総数です。クローン作成後は、ター