IT関連

AS400/IBMi デバグ・デバッグ STRISDBの気づき

投稿日:2019年4月5日 更新日:

自分備忘録です。使い方よく解りません。逆に教えてほしいくらいです。

なんでそんなことするの?バカなの?死ぬの?そう思った方は教えて下さい(笑)

他にもこんな便利な機能使ってないの?というのも大歓迎です。

 

  1. デバグしたいプログラムをQTEMPにコンパイルする
  2. STRISDBを入力してF4でプロンプトを開く
  3. 必要項目を入力する
    1. プログラム名
    2. ライブラリ
    3. 実働ファイルの更新はとりあえずYES
    4. プログラムの呼び出しはNO
    5. 実行キーを押すとコマンド入力に戻る
  4. プログラムをコールする
  5. デバグ画面が起動する

パラメータの受け渡しは、文字列ならいいが、数値の場合は少しややこしい。

数値3,0の場合、

1ならX’001F’

10ならX’010F’

-10ならX’010D’

とするみたい。

 

処置の欄について

上に並んでいる、デバッグ・GOTO・プログラム・オプション・ヘルプのこと。

機能をまとめたメニューみたいなもんですね。それぞれにカーソルを当て実行キーを押すと、何の機能を実行するのか番号で指定できる。

ちなみに「F10」キーを押せばこの処置欄にカーソルが飛ぶし、「Tab」キーで次の処置にカーソルを飛ばすことができる。

さらに

  • デバッグはDEBUG or DE
  • GOTOはGOTO or G
  • プログラムはPROGRAM or PR
  • オプションはOPTIONS or O
  • ヘルプはHELP or H

をコマンド欄に入力して実行キーを押すことで代替えできる。

但しGOTOはパラメータを同時に指定する必要があるが、やり方が解らない。

 

ISDB ===>欄について

コマンド欄。ここにコマンドを打つことで色々できる。

 

コマンドや調べ方いろいろ

文字の検索

  • コマンド欄に検索したい文字を入力して、「F16」キー
  • コマンド欄に「F」を入力してエンターキーで小窓を出す
  • 処置の「オプション」の2から検索の小窓を出す

変数の値の表示(DSP or D)

  • DSP 変数名
  • 変数にカーソルを当てて「F11」キー

変数値の変更(CHG or C)

  • 変数にカーソルを当ててF23キー、表示された値の欄に入力する。
  • CHG 変数名 値

CHG HEIGHT 170

 

停止点の設定(BREAK or B)

  • BREAK ステートメント番号

BREAK 000710

  • 停止点を設定したい行にカーソルを当て「F6」キー

 

条件付き停止点の設定(BREAK or B)

  • BREAK ステートメント番号 WHEN 条件

BREAK 000710 WHEN HEIGHT = 170

 

全ての停止点の表示(条件付き)

  1. 左上の「デバッグ」にカーソルを当て「Enter」キー
  2. 2の停止点の表示

設定した停止点を一覧で見れる。条件付き設定した場合は条件付きで見れる。

 

全ての標識の状態を表示

01~L9までの標識が現在オンなのかオフなのかを一覧表示する。

DSP *RPGIND

 

停止点の削除

  • CLEAR ステートメント番号

CLEAR 000710

  • 停止点を削除したい行にカーソルを当て「F6」キー

 

停止点の全削除

CLEAR *

 

変数をウォッチする

これすごい。できるなら最初から言ってくれ。変数名と値を常時画面上に表示してくれる。VBAでいうウォッチかイミディエイトウインドウみたいなもの。

WATCH 変数名

 

デバッグ中にそこから更にCALLしている子PGMもデバッグ

AP PGM名

 

指定した位置から実行

行のところにカーソルを合わせてF13キー。

F5でステップ実行できるが、長いループがあるとき、それをすっ飛ばしてその先から続けてステップしたい、そういうときに使用する。

もちろん、その間の処理はきちんと実行される。

 

スペシャルサンクス

BS400様 ありがとうございました。

スポンサーリンク




スポンサーリンク




-IT関連
-, ,

執筆者:


  1. BS400 says:

    AS/400とPHPの記事は非常に参考にさせてもらってます!

    お返しの気持ちとして、私が使うSTRISDBの情報を書いてみます。

    1.条件付きブレークポイントを以下で設定できます。
    B  停めたい行数 WHEN 条件

    2.デバッグ中にそこから更にCALLしている子PGMもデバッグしたい時は以下で追加できます
    AP PGM名

    詳細はF1ヘルプで呼び出せるのでご参考になれば。

    • kouji says:

      BS400様 コメントありがとうございます。参考なんてお恥ずかしい。自分の備忘録なので偉そうな口調で書いてますが、全然そんなことありませんので誤解なきよう。STRISDBの条件付きブレークポイントは目から鱗です。超便利です。ありがとうございます。これ記事に追記させてもらいますね。というかF1押したら宝の山でした\(^o^)/

comment

Your email address will not be published. Required fields are marked *

関連記事

AS400/IBMi DTFで出来ること色々

自分用備忘録&書きかけです。   SELECT句に色々指定してみる。 今日は2019年03月07日   CURRENT DATE 19/03/07   YEAR(CURR …

Visual Studio Code ショートカット Mac/Windows

VSCodeの便利なショートカットの備忘録です。   ★別ウインドウを開く 「Ctrl」+「Shift」+「N」   ★ファイルの新規作成 Web開発ではエディタを開いているときに …

ExcelVBA ProgressBarを自作

これは自分の備忘録であり、私が思い出すための記事なのでご了承のほど。   5分くらい時間がかかるマクロがあり、固まっていないか心配になると上司から指摘があり、進捗バーを作ろうとする。 &nb …

WordPress 初期設定でパーマリンクを変えてもエラー404

ワードプレスも使い慣れてきたことだし、テーマ作成やらMVCの触りを勉強できそうだなと思って、dotinstallの動画で勉強してたんだ。 ちなみに私は開発環境XAMPPでの運用で、VirtualHos …

XAMPPのPHPでメール送信する

どこを調べてもPHPでメールを送るのは簡単だ。と、ドヤ顔でこんなソースを載せている。それは解ったんだけど、mb_send_mailが使えないんだよ。とブツブツ言いながら調べてphp.iniを直したりな …

Adsense広告


文字で検索

人気記事

なぜだか人気記事

読んでほしい順に