変数の宣言と値の確認(デバッグ)

最終更新日: 2022年5月16日

変数の宣言とデバッグログ出力

テスト用モデルの新規登録画面を開くタイミングで、スクリプトを用意してみます。

ここでは「繰り返し」ブロック群から "1から10まで、1ずつ増加する" カウンタ変数 "i" を用意してみましょう。

カウンタ変数 i の用意 (1)

ワークスペースにブロックを配置します。

カウンタ変数 i の用意 (2)

今回は1から10まで、1ずつ増加するカウンタとします。「数値」ブロック群から数値ブロックを選び、カウンタ変数のブロックに配置していきます。

カウンタの開始、終了、増加ステップの設定 (1)
カウンタの開始、終了、増加ステップの設定 (2)

ここまでの操作で、このスクリプトで変数 "i" が利用できます。

変数ブロック群に i が含まれている

ワンポイント

変数はこのスクリプトだけで利用できます。他のスクリプトでは、そのスクリプトで改めて変数を用意してください。

変数 "i" をワークスペースに配置してみました。

変数 i をワークスペースに配置する

デバッグログ

この変数 i をデバッグウィンドウに表示するようにしてみます。「文」ブロック群から「デバッグログ」ブロックを選びます。

デバッグログ (1)

カウンタを制御するブロックの実行部に、デバッグログのブロックを配置します。出力内容として、変数 i を指定します。

デバッグログ (2)

実行

システム管理者でログオンします。システム管理者はメニューから「デバッグログウィンドウを開く」を選択することができます。

デバッグログウィンドウを開く

デバッグログウィンドウが開きます。「クリア」ボタンをクリックすると表示内容を消去することができます。

最初のデバッグログウィンドウ

テストモデルの新規登録画面を開くと、スクリプトが動作します。デバッグログのメッセージがウィンドウに表示されます。

デバッグログウィンドウにメッセージが表示される

ワンポイント

スクリプトはサーバ (wagbyapp) で実行されます。デバッグログのメッセージは、サーバからWebブラウザに送信され、ブラウザのウィンドウに表示されます。

変数の名前を変える

変数ブロック群から変数を選択し、マウスの右クリックでサブメニューを開きます。「変数の名前を変える...」メニューから、変数名を変更することができます。

変数の名前を変える (1)

変更用のダイアログが表示されます。変数名は日本語を使うことができます。

変数の名前を変える (2)

スクリプト内の変数名が一斉に変更されます。

変数の名前を変える (3)

変数の値をモデルにセットする

「文」ブロック群から、セットブロックを選択します。

セットブロック (1)

ワークスペースに配置します。

セットブロック (2)

「モデル」ブロック群から、このモデル "モデル1" を参照するブロックを選び、セットブロックの左側に配置しました。

セットブロック (3)

「変数」ブロック群から「カウンタ」変数を選び、セットブロックの右側に配置します。これによって変数の値(セットブロックの右側)を、モデルの項目(セットブロックの左側)にセットすることができます。

セットブロック (4)

デバッグログの出力メッセージのカスタマイズ

デバッグログには任意の文字列を設定できます。ここでは「文字列」ブロック群から「テキスト作成」ブロックを選び、配置する方法を説明します。

テキスト作成ブロック (1)

テキスト作成ブロックには複数の文字列ブロックを配置することができます。

テキスト作成ブロック (2)

同じ「文字列」ブロック群から、一つの文字列を格納するブロックを選び、テキスト作成ブロックの先頭に配置してみます。

文字列ブロック

さらに、テキスト作成ブロックの二番目に、カウンタ変数を配置することができます。

文字列ブロックとカウンタ変数ブロックを配置する

テキスト作成ブロックのギアアイコンから、追加する文字列を増やすことができます。

ギアアイコンから追加できる文字列を増やす (1)
ギアアイコンから追加できる文字列を増やす (2)

3番目に文字列を追加してみました。

テキスト作成ブロックの完成

実行例

デバッグウィンドウには次のように表示されます。

デバッグウィンドウ

新しい変数を作成する

これまで説明したカウンタ変数とは別に、新しい変数を作成することができます。
別のタイミングとして、データの「登録」時に動作するスクリプトを用意してみましょう。

「登録」のタイミングで動作するスクリプトを用意する

新しい変数「現在時」を用意してみます。

新しい変数を作成する (1)

変数ブロック群から選択できるようになります。

新しい変数を作成する (2)

ワークスペースに変数を配置してみました。

ワークスペースに変数を配置する

Wagbyが提供する関数ブロックを組み合わせて、現在時刻(時)を求める例を示します。
NOW関数(日付時刻型)から、HOURE関数を通して時刻部分をとりだしています。この操作で「現在時」変数は0から23までの数字が格納されます。

現在時を求めるブロックの組み合わせ

ワンポイント

変数の「型」は、代入される値によって自動的に定まります。この例では代入される値が数値のため、数値型となります。

デバッグログのブロックを使って、この値をデバッグウィンドウに出力することもできます。

デバッグログのブロックを利用する

もう一つの変数「あいさつ文」を作成してみます。一つのスクリプトで変数をいくつでも用意することができます。

あいさつ文、という変数を用意する

条件判断ブロック群にある「もし〜ならば」ブロックを使い、現在時の値によってあいさつ文を変更する処理を行う例を示します。

あいさつ文の設定

実行例

現在時と、あいさつ文をデバッグウィンドウに表示した例です。

デバッグウィンドウ

変数の値をモデルの項目にセットすることができます。ここでは「メッセージ」項目に、変数「あいさつ文」の値をセットした例です。

メッセージ項目に変数の値をセットする

ワンポイント

モデルの項目に変数をセットする場合、モデル項目の「型」にあわせる必要があります。例えば数値や日付の変数値を文字列型の項目にセットする場合は、Wagbyの関数 TOSTR や TEXT を使って文字列に変換する、といった工夫を行ってください。