Skip to content

OTR_ProcessingSequence

nishi_74322014 edited this page Oct 27, 2026 · 1 revision

処理シーケンス

概要

フレームワークが UOC(User Own Coding)メソッドをどの順で呼ぶかの地図。

  • UOC は「フレームワークが決まった順で呼ぶ空のフック」である。親クラス1 が固定の順序で処理を回し、要所で UOC_* を呼ぶ。
  • 開発者(画面コード・業務ロジック)と纏め者(親クラス2)は、この UOC を override して実装する。

詳細

① Web Forms:ページ・ロード

Page_Load(親クラス1)が、次の順で実行する。

  1. セッション・スコープのロック
  2. マスタページ・ユーザ コントロールの初期化
  3. Ajax の状態確認
  4. エラー画面へのパスのチェック
  5. セッション・タイムアウトの検出
  6. 二重送信の防止(リクエスト・チケット)
  7. 隠しフィールドの取得(ウィンドウ GUID、画面 GUID)
  8. ボタン履歴のメンテナンス
  9. コントロールの取得とイベント・ハンドラの設定(接頭辞による自動結線)
  10. UOC_CMNFormInit / UOC_CMNFormInit_PostBack(親クラス2・全画面共通。纏め者)
  11. UOC_FormInit / UOC_FormInit_PostBack(画面コードクラス。開発者)
  12. ダイアログの表示処理
  13. UOC_Finally

② Web Forms:ポストバックのコントロール・イベント

  1. 共通のイベント・ハンドラ(UOC_<コントロール名>_<イベント名> のメソッド名を生成)
  2. UOC_PreAction(P 層。親クラス2)
  3. UOC_<コントロール名>_<イベント名>(画面コードクラス。開発者)
  4. UOC_AfterAction(P 層。親クラス2)
  5. UOC_Screen_Transition(画面遷移)
  6. UOC_Finally

③ B 層:DoBusinessLogic

  1. UOC_ConnectionOpen(接続・トランザクション開始。親クラス2)
  2. UOC_PreAction(B 層。親クラス2)
  3. UOC_DoAction → UOC_(メソッド名)(業務ロジック。開発者)
  4. UOC_AfterAction(B 層。親クラス2)
  5. 正常時はコミット
  6. UOC_AfterTransaction(コミット後。親クラス2)
  7. 例外時は UOC_ABEND +ロールバック(親クラス2)

P 層と B 層の UOC_PreAction / UOC_AfterAction は別物である(引数の型も、置かれている親クラスも違う)。

誰が書くか

担当 書く UOC
開発者 UOC_FormInit、UOC_<コントロール名>_<イベント名>、B 層の UOC_(メソッド名)
纏め者 UOC_CMNFormInit、UOC_PreAction / UOC_AfterAction(P 層・B 層)、UOC_ConnectionOpen、UOC_ABEND など

コーディング・エージェントに任せる場合

  • スキル opentouryo-app-design(references/processing-sequence.md)を使わせる。
  • 「どこに書けばよいか」で迷ったときの地図として使わせる。開発者の担当外の UOC(親クラス2)を書き換えさせない。

参考


Tags: 再構築

NetDevInfraWiki

マイクロソフト系技術情報 Wiki
Open 棟梁 Wiki
開発基盤部会 Wiki

移行管理: DONE / TODO

Clone this wiki locally