トレース出力


 
更新日:2025年3月28日

プロシージャ:[手続き]、[一般手続き]、[イベントハンドラ]のこと

目次



T トレース出力
t:1 基本設定
t:2 トレース出力内容の選択 の設定と 出力サンプル
 
t:2-1 "Sample.WFX" を実行して処理をトレース出力ウィンドウに表示します
t:2-2 出力内容をメモ帳に貼り付けます
t:2-3 参考)トレース出力内容の選択 で、全てにチェックを入れていた場合
t:3 トレース出力コマンド は、必要な情報を得たい部分に設定します
 
t:3-1 トレース出力の設定例
t:3-2 トレース出力は次のようになります
t:3-3 設定例の解説
   
参考 整形ユーティリティのご紹介
   

0 サンプルについて(サンプルのダウンロードはこちら)※ファイル名は "Chapter10_Sample.zip" です。
含まれるファイルはサンプルの Sample.WFX , Sample.tbx , Sample.kex , 入力支援マスタ , 入力支援マスタ.tbx , 郵便番号簿.tbx の 6ファイルと
Sample.WFX のオブジェクト一覧を記載した "ObjectLlist.txt" になります。
 

T トレース出力
ここでは 手続き [prcマスターから候補を作成] に含まれる、トレース出力をサンプルにして解説します
   
  トレース出力はプログラムの途中で
・変数に取り込んだ値を確認するときに便利です
・構文:トレース出力  <計算式>|_<計算式>,… ですが、<計算式> は自由に書くことができます
   
t:1 基本設定
t:1-1 桐ヘルプより

■説明
•トレース出力ウィンドウに<計算式>の結果を文字列に変換して出力します。
•このコマンドは、イベントハンドラのデバッグ用として使用します。
•トレースウィンドウを使用するには、あらかじめ環境設定の[一括]タブを選択し、
 [高度な設定]ダイアログの[トレース出力ウィンドウを使用する(再起動時に有効)]のチェックをONにしておかなければいけません。
•トレース出力ウィンドウを表示していない場合または[トレース出力]を ON にしていない場合は、なにもしません。

■構文
トレース出力  <計算式>|_<計算式>,…

■パラメータ
<計算式>|_<計算式>,…トレース出力ウィンドウに出力する値または式を指定します。<計算式>の前に _ をつけると、計算元となった式も一緒に表示します。
t:1-2 コマンド "トレース出力" では
コマンドの後に記載したテキストや計算式(計算結果が表示されます。表番号やファイル名、その他いろいろ出力できます)を
トレース出力ウィンドウに表示します。エラーにならなければ 『何でも書いてよい』ということです。
実際には、トレース出力を使って 必要なところで必要な内容を表示するようにしましょう。
※"トレース出力" は、単に表示させるだけのコマンドだとお考え下さい。 
   
t:2 トレース出力内容の選択 の設定と 出力サンプル (サンプル画像は、桐s-2024LT のリボンメニューになります)
  全てにチェックを入れていると、情報が多すぎるので次のように設定しましょう。



t:2-1  "Sample.WFX" を実行して処理をトレース出力ウィンドウに表示します

上記の設定のまま"Sample.WFX" を実行すると
トレース出力ウィンドウが表示されて、フォーム開始時に実行されるコマンドが出力されます。
ひと通りの処理が完了しアイドリング状態になったら
トレース出力の設定で、
[トレース出力を終了する] をチェックします

※トレース出力ウィンドウが非表示になります
  改めて下図のように
メニューのトレースウィンドウの表示にチェックを入れると、トレース出力ウィンドウが再表示されます。



   
t:2-2 出力内容をメモ帳に貼り付けます
トレース出力ウィンドウ上で [右クリック] → [全て選択] → [コピー] で、メモ帳に貼り付けます



◇◇◇ この出力内容に必要な情報を [トレース出力] で追加することになります ◇◇◇
   
t:2-3 参考)トレース出力内容の選択 で、全てにチェックを入れていた場合
次のような出力内容になります

編集表(表番号も表示されています)の他、出力情報が増えていますが
必要な情報があるかどうかは ? ですね~


- 目次 -  
t:3 トレース出力コマンド は、必要な情報を得たい部分に設定します

関数で取り出した値(変数の値、表番号やファイル名など)を表示したりして、プログラムが期待通りに動いているかチェックします。
※パラメーター:<計算式>の前に _ をつけると、計算元となった式も一緒に表示します。
※<計算式>は広い意味で使われています。"文字列"も計算式です。

トレース出力ウィンドウに表示された中から、トレース出力コマンドを設定した場所を見つけるために、
チェックポイントとして目印に "★" や、
結果が出力される範囲だとわかる文章を解説として追加しておくと便利です。
t:3-1 トレース出力 の設定例
サンプルのプロシージャは [prcマスターから候補を作成] です。
赤で囲んだ部分と、アンダーラインの部分が、トレース出力コマンドの設定例 になります



t:3-2
トレース出力は以下のようになります
 
- 目次 -
t:3-3 設定例の解説

以下の出力サンプルでは、 "Sample.WFX" を開く前に"入力支援マスタ.tbx"(ダウンロードサンプルに含まれます)を開いています。
また "utx_list3_(1).tbx"(サンプルとは何の関係もありません) を開いています (^^♪
t:3-3-1



この部分ではトレース出力コマンドは使っていませんが、トレース出力ウィンドウでは以上のように出力されます

"&tbl入力支援マスタ" の値が "D:\Chapter10\入力支援マスタ.tbx" と表示され
"&グループ値" の値が "性別" と表示されています。変数に代入されている値が出力されています。
   
t:3-3-2
 


ここでは、トレース出力を開始と終了の文章で挟んでみました
&traceON = 1 と
条件 ( &traceON ) を組み合わせることで、トレース出力を ON・OFF するように設定できます。
* &traceON = 1 と アスタリスクを使って無効にすれば OFF ということです。
例)
条件 ( &traceON ) トレース出力 "★", "  ", _#is表, "  ", _#表ファイル名( #is表 )
としておけば、 ON・OFF スイッチを取り付けたことになりますね。
   
t:3-3-3



ここでは ファイル"入力支援マスタ..WFX(tbl)" を開いた後に "Sample.WFX" を開いています
つまり &openTblNum = #表番号取得 ( &tbl入力支援マスタ ) で、多重化するもとの表が確認できます。
★ トレース出力で、表番号が 4、ファイル名が "入力支援マスタ.tbx" と表示しています
★ そして多重化した編集表の表番号が 7、ファイル名が "入力支援マスタ.tbx" と表示されています

t:3-3-4



繰り返すごとに、配列変数に取り込んでいる値を出力しています。
※ここでは、どの範囲(取得グループ)を使っているかも表示させています。

t:3-3-5



終了 表 &importTblNum の後では、自動的に 『編集表は一番小さな表番号』 に切り替わります
ここでは
★ トレース出力で、表番号が 1、ファイル名が "utx_list3_(1).tbx" と表示されています

そして 編集表 &hwindow で、フォームの正しい編集対象表を指定します
★ トレース出力で、表番号が 5、ファイル名が "Sample..tbx" と表示されました

※複数の表を開いている時に、表を切り替えながら操作していると フォーム"Sample.wfx"の編集対象表が"Sample.tbx"以外になることは少なくありません

t:3-3-6 ◇次のサンプルは プロシージャ [prc項目値を配列変数に代入] を使用しています(このトレース出力設定はサンプル作成後 削除しています)




指定項目の項目値を取り出した結果が表示されています

t:3-3-7 ◇次のサンプルは "Sample.kex" とは別ファイルのプロシージャです




ここでの変数 &住所1、&住所2 は参照渡し となっています。
このプロシージャを呼び出したプロシージャに、ここで取得した値を戻します。
トレース出力で、取得した値を確かめています。
- 目次 -  
参考) 整形ユーティリティのご紹介

トレース出力をメモ帳で表示すると、行数が多くなると見通しが悪くなります。
【整形ユーティリティ】を使うと次のように必要な情報を判りやすく表示することができます
【整形ユーティリティ】は、ONnoji さんの[桐の釣魚大全] もしくは 多游さんの【多遊】の桐のホームページからダウンロードできます。
ONnoji さんのサイト、多游さんのサイトへのリンクは、トップページからご覧になってください。
  次のトレース出力整形結果をご覧になってください。トレース出力ウィンドウの内容が整理されて判りやすく表示されています。
プログラムを作成する際に、プロシージャの全体像そして指定したトレース出力で中途経過が見られると便利ですね。
またプログラムする際には、ここに表示される部分を押さえておけば良いともいえます。

   
- 目次 -