サポート情報

呼出しスタック再帰に成功

掲載日:2023/01/06

呼出しスタックの再帰に成功しました。これはどういうことかと言うと仮想端末APIで通信しているジョブ(遠隔ジョブ)の実行状況を以前の状況に復帰させることが
可能になったということです。


※例えばブラウザの「戻るボタン」を押したときにこれまではF12キーが定義されている場合はF12キーを押したものとしてジョブに送信していました。
 しかし必ずしもF12キーが定義されていない場合もあります。
そのときは今回の呼出しスタックの再帰によって元の状態に戻すことができます。
 それはまるでタイムマシンで過去の状態に戻すかようです。
 戻る操作が定義されていなくても基の実行状況にタイムマシンのように
ワープ(jmp)してた戻ることができるのです。

 オープンしていたファイルも必要に応じて自動的に閉じられます。
 この技術によって次の処理が実現可能となります。

・ツリー・メニュー


ツリー・メニューにした場合、エンド・ユーザーがクリックした場所に
戻るにはこれまで内部で統一されたF12キーなどの戻り機能キーが
押されていました。
  しかしお客さまの事情によっては

・元のメニューへの復帰が必ずしもF12キーやF3キーなどに統一されていない。
・機能キーによる復帰機能はなくオプションを入力しなければならない。

という例外のある場合はツリー・メニューを使うことができませんでした。
しかしこのような例外がある場合でもスタックを復元すれば
元の状態に簡単にしかもどのような場合でも例外なく安全に戻ることができます。
これによってすべてのお客さまでツリー・メニューを定義して
ご利用して頂くことができるようになります。

※LMTPCB=*YESでなおかつF12キーが定義されていない場合を除きます。
   LMTPCB=*YESであってもF12キーが定義されていればツリー・メニューが
定義可能となります。

・ブラウザの「戻るボタン」


F12キーで定義されている画面ではブラウザの「戻るボタン」はF12キーとして
解釈されていましたがF12キーが定義されていない場合は戻るボタンは
使用不可としてグレー・アウトされていましたがこれも呼出しスタックの復元で
安全に戻ることができるようになりました。

...いかがでしょうか?
このプログラム・スタックの再帰機能は弊社では2014年から研究を重ねていましたが
残念ながら実現するには至りませんでした。(setjmp & longjmp)
しかしこの度2022年に開発されたIoTの新しい技術とMI(=MachineInterface)機能を統合して初めて実現可能に至ったような次第です。
専門家でも遠隔スタックの制御は不可能であろうと言われていましたが
技術開発の積み重ねの結果新たな機能を生み出すことに成功致しました。

--呼出しスタック制御の技術は今後のIBM iの使用感を大きく変えることができます。
AutoWeb/2.0はHTTP/2.0への移行などまだまだ多くの改革が予定されていますが
この技術もひのひとつとしてお客さまのユーザビリティに大きく貢献するものと
信じております。

※ お願いとお断り

呼出しスタック再帰機能(Setjmp & longjmp)は組み込み可能であることと
シミレーションによって実行可能であることが実証されましたが
製品の組込みへはまだ慎重な作業を必要としておりますので
AutoWebユーザーヘ様のは今しばらくお待ちくださいますよう
    お願い申し上げます。

― 新しい技術はいつもオフィスクアトロから ―