すべてのオークションがワークフローをたどります。つまり、オークション管理者がオークションを作成したときから、 そのオークションがアクティブになって入札者がオークションで入札を開始し、 最後にオークションがクローズされて落札者が宣言されるまでのワークフローがたどられます。 オークション管理者はまた、現在進行中または未開始のオークションをクローズする権能ももっています。 このプロセスではスケジューラーは、オークションの開始と停止、 オーダーの入札と落札の完了の処理に関係したワークフロー・アクションの実行を担当します。
このようなワークフロー・プロセスでのオークション状況の追跡記録をとるのにオークション状況が使われますが、 これは、AUCTION テーブル内の AUSTATUS 列に置かれます。 オークションの状況は、以下のいずれかです。
ワークフローとオークション状況は、オークション・タイプによって異なります。 下の表は、ワークフロー・アクションと、オークション管理者またはスケジューラーから呼び出されるコマンド、 そしてオープン・クライ・オークション、シールド・ビッド・オークション、 およびダッチ・オークションの場合の対応するオークション状況を示しています。
ワークフロー・アクション | コマンド | オープン・クライ・オークションの状況 | シールド・ビッド・オークションの状況 | ダッチ・オークションの状況 |
---|---|---|---|---|
オークション管理者がオークションを作成します。 | CreateAuction | 将来 lockflag=0 |
将来 lockflag=0 |
将来 lockflag=0 |
開始時刻になったら、スケジューラーがオークションを開始します。 | MonitorAuctions | 現在 lockflag=0 |
現在 lockflag=1 |
現在 lockflag=0 |
スケジューラーが、オープン・クライ・オークションの最高入札額と落札額を確かめます。 | ProcessOpenCryBids | 変更なし | 該当しない | 該当しない |
スケジューラーが自動入札を処理します。 | ProcessAutoBids | 変更なし | 該当しない | 該当しない |
スケジューラーが、ダッチ・オークションの落札額を確かめます。 | ProcessDutchBids | 該当しない | 該当しない | 入札クローズ lockflag=1 |
オークション管理者が、オークションを撤回します。
注: オークション管理者がオークションを撤回できるのはオークションのクローズ時刻までです。 |
DeleteAuction | 撤回 | 撤回 | 撤回 |
スケジューラーがオークションをクローズします。 | CloseBidding | 入札クローズ | 入札クローズ | 入札クローズ |
スケジューラーが最後の自動入札実行を処理します。 | ProcessAutoBids | 入札クローズ 自動入札の最終実行以後は、lockflag=1 |
入札クローズ | 入札クローズ |
スケジューラーは、 「入札クローズ済み」の状況と lockflag=1 を持つオークションを処理し、 オープン・クライ・オークションおよびシールド・ビッド・オークションの落札者を決定します。 | FinalizeAuction | 決済クローズ済み。lockflag=1 | 決済クローズ済み。lockflag=1 | 決済クローズ済み。lockflag=1 |
スケジューラーは、W の入札状況を持つ入札を処理します。 | CompleteOrder | 変更なし | 変更なし | 変更なし |
![]() |