化学療法オーダ †
全般 †
1.化学療法オーダとは †
- 患者に対する、抗癌剤を含むオーダの統合セットのようなもの
仕様 †
1.オーダの状態遷移 †
- �� 医師によるプロトコール選択(展開)
CHEMO_DENPYO.STEP_FLG = 0
オーダ全般: CONDITION_FLG = 3 (保留)
CONDITION_TYPE = 5 (ケモ保留)
ORDER_TYPE = 10 (ケモ)
- �� 薬剤師による認証
CHEMO_DENPYO.STEP_FLG = 2
オーダ全般: CONDITION_FLG = 0
CONDITION_TYPE = 0
オーダはSeqUpする。
- �� 医師による最終実施確認
CHUSHA_YAKUHIN.CONFIRM_FLG = 1 (UPDATE)
- �� 薬剤師による混注確認
CHUSHA_YAKUHIN.CONFIRM_FLG = 2 (UPDATE)
2.認証・修正・取消について †
- ケモの認証・修正・取消においては、ケモオーダのみの展開とする
(CHEMO_XXXX系のトランザクション情報のみ)
3.チェック一覧 †
- <3> プロトコール連続実施回数チェック(連続実施回数設定ありのみ)
- <4> 子オーダ編集中チェック(新規発行時は除く)
4.対象オーダ †
- 処方、検体、注射 ( 増える可能性あり!? )
COMMONテーブルのFLGTBLの左から17バイト目に'1'
- 対象オーダの共通制御
個別発行をさせない!( CHEMO_ORDER_NOが設定されているため )
5.対象オーダの実装 †
- 化学療法プロトコールの展開中は、ケモモードとなり、ケモモード中は、ORDER_JOURNAL.CHEMO_ORDER_NOをいれる
(アプリよりケモモード、CHEMO_ORDER_NOは通知される)
- ケモモード中はオーダを取り消す際には、ORDER_JOURNAL.DONE_FLG = 7で更新する(注射のみ!?)
6.アプリケーションへの通知( 共通処理以外を記載 ) †
- FireUpdateKanjaProfile() : 患者情報更新要求 (身長・体重情報を更新)→患者情報部の表示更新
- FireRequestAny( int setAnyNo, int chemoMode, OrderArgument orderArgument ) : 編集中オーダクリア(メモリ・表示)兼、ケモモード設定要求
- int型 setAnyNo → PkBase.PkRequestAnyNo.SetChemoMode (=24) ケモモード設定コード
- int型 chemoMode → 0:ケモモード設定, 1:ケモモード解除
- OrderArgument型 orderArgument → その他通知情報 プロパティ[ OrderNo = ケモオーダ番号、SetNo = ケモセット番号、 OptionalFlg = 0:クリアなし、1:クリアあり ]
7.アプリケーション(PkMain)からの処理 †
- プロトコール選択時処理
- <1> 編集中オーダクリアありの場合、各種画面クリア
- <2> AppOrderProf.ChemoOrderNo, AppOrderPro.ChemoSetNoに値を設定
AppOrderProfはシングルトン
- .ChemoOrderNo ( double型 ) → 値が設定されている場合( > 0 )は、ケモモード中と見なす
- .ChemoSetNo ( double型 ) → 値が設定されている場合( > 0 )は、ケモモード中と見なす
※インプットは、上記を判断して、ケモモードの[設定/解除]を区別する
- <3> ケモ対象オーダに対して、OI_SetActive( 2 ):オーダジャーナル読み込みを通知
- <4> 表示中の入力画面へケモモードを通知( OI_SetAny( PkSetAnyNo.SetChemoMode, int inputState, null );
- int型 inputState → インプット状態 0:表に存在, 1:裏に存在, 2:存在しない
※ インプットはAppOrderProfを参照し内部処理を行う (※ChemoSetNoは、手入力オーダには設定しない)
- プロトコール展開中
- プロトコール展開中にインプットを開いた場合も、メインからの通知は通常(OI_Init)と同じ。
- ※ インプットはAppOrderProfを参照し内部処理を行う (※ChemoSetNoは、手入力オーダには設定しない)
- プロトコールクリア時処理
- <1> 各種画面クリア
- <2> 表示中の入力画面へケモモードを通知( OI_SetAny( PkSetAnyNo.SetChemoMode, inputState, null ); )
- ※ インプットはAppOrderProfを参照し内部処理を行う
- 化学療法オーダ画面による編集から発生する処理
- <1> 日付の移動
- 化学療法インプット内にて、日付移動更新処理 [ PKG_CHEMO.PRO_UPDATE_DATE_MOVE ]をコール
各オーダ担当で日付の移動処理を実装してください。
プロシージャ[ PRO_SET_DATE_MOVE_CHEMO_XXXX (XXXX→オーダ種別コード文字列) ]
- さらにインプットによる実装が必要な場合
OI_SetAny( PkSetAnyNo.SetChemoEdit, inputState, generalObject )がコールされるので
その中で、処理を記述する
int型 inputState → インプット状態 0:表に存在, 1:裏に存在, 2:存在しない
object型 実体はGeneralObject型(PkBase) 日付移動情報
.Mode ( int型 ) → 日付移動処理(= [ 1 ] )
.StartDatetime ( DateTime型 ) → 処理対象開始日付
.EndDatetime ( DateTime型 ) → 処理対象終了日付
.DateSpan ( double型 ) → 移動日数 ( 過去日への移動はマイナス値 )
- <2> オーダの有効・無効
- 化学療法インプット内にて、オーダを[ 中止(取り消し)⇔有効 ]にした際の各インプットへの
表示更新通知 ( 有効 : DONE_FLG = 0, 中止 : DONE_FLG = 7 )
OI_SetAny( PkSetAnyNo.SetChemoEdit, inputState, generalObject )がコールされるので
その中で、処理を記述する
int型 inputState → インプット状態 0:表に存在, 1:裏に存在, 2:存在しない
object型 実体はGeneralObject型(PkBase) 編集情報
.Mode ( int型 ) → 有効・無効処理(= [ 2 ] )
- <3> 抗癌剤薬品の用量を変更
- 化学療法インプット内にて、抗癌剤薬品の用量を変更した際の通知
OI_SetAny( PkSetAnyNo.SetChemoEdit, inputState, generalObject )がコールされるので
その中で、処理を記述する
int型 inputState → インプット状態 0:表に存在, 1:裏に存在, 2:存在しない
object型 実体はGeneralObject型(PkBase) 編集情報
.Mode ( int型 ) → 抗癌剤薬品用量変更処理(= [ 3 ] )
※この場合、注射オーダ以外は、処理を無視してください。
- 中座
- 中座時にkanja_select_journal.flgtbl_01に展開中のケモオーダ番号を保持する
- 復元
- <1> 復元時にkanja_select_journal.flgtbl_01が0以上であれば、ケモモードと見なす
- <2> 復元時、AppOrderProf.ChemoOrderNo, AppOrderPro.ChemoSetNoに値を設定
- <3> インプットへOI_Init通知
8.患者選択画面への制御 †
- 対象ダイアログ
- <1> 「化学療法最終実施確認」PkChemo.ChemoLastConfirmDialog
イベント:FireRequestSelectKanja( object kanjaId );
引数:object型 (int型) 患者ID
- <2> 「化学療法仮発行確認」PkChemo.ChemoHakkouConfirmDialog
イベント:FireRequestSelectKanja( object kanjaId );
引数:object型 (int型) 患者ID
- <3> 「化学療法昆虫確認」PkChemo.ChemoMixComfirmDialog
イベント:FireRequestSelectKanja( object kanjaId );
引数:object型 (int型) 患者ID
- <4> 「化学療法患者一覧」PkChemo.ChemoPrintIchiranDialog
イベント:FireRequestSelectKanja( object kanjaId );
引数:object型 (int型) 患者ID
イベント:FireRequestAddKanjaList( object kanjaList );
引数:object型 (List<KeyValuePair<int, string>>型) Key:患者ID, Value:患者氏名のリスト