TicketItem 数の決定
次に、各注文項目についての情報を表示します。
%session オブジェクト内のオブジェクト ID を使用し、ord 変数に oref を割り当てて、データベースから TicketOrder オブジェクトを検索することから開始します。これを行うには、Caché コードのラインを使用します。
Web ページで Caché コードを使用したいときは常に、標準の <script> タグ内に Caché コードを記入するだけです。runat 属性は、コードはブラウザではなく、サーバ上で実行することを表しています。
現在、TicketOrder オブジェクトがあるので、各 TicketItem を表示するループ処理を設定できます。ループに対する反復数は、TicketItem インスタンスの数を返すメソッド ord.Items.Count を呼び出すことで決定されます。
—Order.csp—
Order.csp
<html> <head></head>
<body>
<csp:class super="%CSP.Page,Cinema.Utils">
<csp:if condition='$D(%session.Data("Order"))'>
<img src="YourTicketOrder.gif"><br>
<script language="cache" runat="server">
// Open Order object for display
Set ord = ##class(Cinema.TicketOrder).%OpenId(%session.Data("Order"))
</script>
<csp:loop counter="num" from=1 to=#( ord.Items.Count() )#>
. . .
</csp:loop>
</csp:if>
</body> </html>