まずは 全体像 その オラクルBRM 課金 プロセスが行います:
- 過去 1 か月に発生した残高への影響の総額を集計します。これには利用料や購読料が含まれます。
- 請求書に関連付けられたすべての請求項目のステータスを保留からオープンに変更し、料金の累積を停止し、支払いを適用できるようにします。さらに、支払期限が請求書に追加されます。
- クレジットカードプロセッサーから自動的に支払いを要求したり、請求書を送付して支払いを要求したりします。
- BRMデータベースに支払いが記録されると、顧客の口座残高が自動的に更新されます。
では、実際にはどうなのでしょうか?
本番環境で brm ビリングを実行する前に、すべての前提条件を実行する必要があります。最初のステップは、本番環境のコピーを準備することです。このステップには、この環境への最新の本番リリースのインストールと、本番データベースのコピーが含まれます。次に、環境設定を本番環境に反映させます。以下に主な設定を示しますので、適切に設定してください:
- センチメートル 設定 ($HOME/pin/sys/cm/pin.conf) を参照してください、
o ログレベルエントリが1に設定されていることを確認します。
o agent_return パラメータのエントリを 0 に変更します。
o simulate_agentパラメータのエントリーを1に変更します。
これら2つの最後の変更は、ビルラン中にプロビジョニング・アクションを伴わないように行われます。
- ディーエムオラクル 設定(1TP17HOME/pin/sys/dm_oracle/pin.conf)を参照してください、
o dm_bigsize パラメータを 8388608 以上に設定します。
o dm_shmsize パラメータを 33554432 以上に設定します。
o dm_n_fe を 8 に設定します。
o dm_max_per_fe を 16 に設定します。
o dm_n_be を 24 に設定します。
o dm_trans_be_max を 22 に設定します。
- pin_bill_accts 設定 ($HOME/pin/apps/pin_billd/pin.conf) を参照してください、
o ログレベルを確認します。課金テスト中にチェックする必要がある内容に応じて、1 または 3 の適切な値に変更します。
o pin_billd および pin_mta の children パラメータを 5 に変更します。
o pin_billd および pin_mta の per_batch パラメータを 20000 に変更します。
o pin_billd および pin_mta の fetch_size パラメータを 150000 に変更します。
- ピン_inv_accts 設定 ($HOME/pin/apps/pin_inv/pin.conf) を参照してください、
o ログレベルを確認します。課金テスト中にチェックする必要がある内容に応じて、1 または 3 の適切な値に変更します。
o pin_billd および pin_mta の children パラメータを 5 に変更します。
o pin_billd および pin_mta の per_batch パラメータを 2000 に変更します。
o pin_billd および pin_mta の fetch_size パラメータを 15000 に変更します。
本番のシミュレーションを最適に行うには、billrun pin_virtual_time を本番の billrun が実行される日付に設定する必要があります。これが完了すると、billrun を開始することができます。
毎月、pin_bill_day スクリプトで課金を実行しており、1 時間あたり約 100,000 件の請求書を作成しています。このスクリプトは、請求日が請求実行日の午前 0 時より前のいずれかの日であるアカウントの請求書を作成します。では、pin_billd_day スクリプトは実際に何をするのでしょうか?以下の請求ユーティリティを実行します:
- pin_deferred_act:例えば、アカウントが非アクティブになる場合、このユーティリティはスケジュールされた日付にステータス変更を実行します。
- pin_bill_accts:口座の支払残高を計算し、支払残高の請求書を作成します。
- pin_collect:クレジットカードや口座引き落としの支払方法を使用しているアカウントの支払残高を収集します。
- pin_refund:払い戻し項目があるアカウントを検索し、オンライン払い戻し処理を行います。
- pin_inv_accts:請求されたアカウントごとに請求書を作成します。
- pin_cycle_fees:サイクルフォワード手数料の残高の影響を顧客のアカウントに適用し、キャンセル待ちの有効期限が切れた商品をキャンセルします。
pin_bill_dayスクリプトの進捗とパフォーマンスを検証するために、データベースに対してクエリを実行し、完了した請求書の数、まだ完了していない請求書の数、エラーのある請求書の有無などの情報を取得します。
brm 請求パートが終了し、すべての請求書が作成されると、請求書発行が開始されます。請求書が作成されると、XMLドキュメントにエクスポートされ、PDF形式に変換されます。
前述したクエリ以外にも、請求書作成と請求書発行が完了した時点で、このプロセスで生成されたデータの正確性を検証するために実行する必要があるクエリがあります。以下にその一部を紹介します:
- 課金は失敗しましたか?
select * from billinfo_t where billing_state = 4 and bill_info_id'Bill Unit(1)';
-期待される結果行が見つかりません
- 未請求の口座はありますか?
select poid_id0, first_name,last_name,a.status from account_t a, account_nameinfo_t an where
a.poid_id0=an.obj_id0かつ
created_t< および
not exists (select b.account_obj_id0 from bill_t b
ここで end_t= かつ
b.account_obj_id0=a.poid_id0);
-期待される結果行が見つかりません
- 法案番号のない法案はありますか?
select * from bill_t where end_t= and bill_no is null;
- 期待される行が見つかりません
発見された問題はすべて、バージョン管理システムを通じて調査・修正され、修正は後に次のリリース・バージョンに含まれます。