ChangeQuantity メソッド
3 つの引数を取る ChangeQuantity という名前の Cinema.UtilsOpens in a new tab クラス内で、新規のクラス・メソッドを生成することから開始します。
—Utils.ChangeQuantity—
Utils.ChangeQuantity
ClassMethod ChangeQuantity(
ItemNum As %Integer,
TicketType As %Integer,
NewQuantity As %Integer)
{
If $data(%session.Data("Order")) {
// Open the current order object
Set ord = ##class(Cinema.TicketOrder).%OpenId(%session.Data("Order"))
// Update quantity
Set itm=ord.Items.GetAt(ItemNum)
// ...
}
}
ChangeQuantity のコードは、注文の変更が確実になってから開始します。セッションがタイムアウトになると、“Order” は Session オブジェクトに定義されていないので、単に終了するだけです。
セッションがタイムアウトにならない場合は、適切な TicketItem オブジェクトをオープンするため、正しい TicketOrder オブジェクトを取得し、GetAt メソッドを使用します。