====================================================================================================
== Release Note ====================================================================================

■ V12.121 : 2012/12/12

  ・ 新規公開



■ V12.122 : 2013/11/10

  ・ 内部管理上の問題に関する改修。機能での変更はない。



■ V14.040 : 2014/04/25

  ・ 通信試験用として SECS ヘッダ値の指定機能 及び HSMS の場合 TCP/IP パケット分割送信機能を追加

  ・ 有効でないメッセージ定義ファイルを指定しているにも関わらず、通信トレースにメッセージ名称、
     メッセージ項目名称を表示する旨の指示を行っている場合の問題を回避。

  ・ 処理中にシステム時刻が大きく変化した場合のタイムアウト処理に対応。

  ・ 送信メッセージの各数値項目値を変更する場合、"0x" を接頭句として付与することにより、16進数で
     の指定を可能とした。



■ V15.041 : 2015/04/25

  ・ メッセージ定義ファイルとして NSG/TS300 の .csv 形式ファイルを指定可能とした。

  ・ 使用するセクションをキー入力ではなく、指定 .ini ファイル内のセクションからの選択に変更。

  ・ 使用メッセージ定義ファイルを指定しない場合に、[Start] 後、.ini ファイルから取得した現在使用
     しているメッセージ定義ファイルの情報を表示する。

  ・ ウインドのリサイズに対するサイズ追随ペインを変更
    ・ 横方向は、左右均割合でサイズ変更
    ・ 縦方向は、上部表示ペインのサイズを変更

  ・ if、while に対応する endif、endwhile 等が見つからない場合、トレース表示ペインにエラーを表示。
     また、実行中エラー発生時、１秒間実行を停止し、エラー発生を発見しやすくした。

  ・ スクリプトの各キーコードの後ろに ';' が付属していても無視する。

  ・ 特殊変数として以下を追加
    ・ !TM、!YY、!MD、!DD、!HH、!MM、!SS : 現在時刻に関する各種値
    ・ !TS : スクリプト実行遅延時間

  ・ 処理終了時の待ち時間を短縮



■ V15.050 : 2015/05/08

  ・ １次メッセージと２次メッセージのトレース出力が、逆転する現象を回避。

  ・ .ini ファイルの DEVID 行に、複数の DeviceID を指定可能とした。

  ・ ウインド上でのメッセージ項目値の表示、編集において I8、U8 項目値が、正しく処理されない問題を
     改修。

  ・ send 文において、receive 文と同様 "ITEM;6=1,2,3" といった、項目のデータ数が複数の項目に対して、
     一部の項目値のみを設定する事を可能とした。

  ・ メッセージ定義ファイルが未指定の場合、[Start] 後に、.ini ファイルから取得した現在使用している
     メッセージ定義ファイルの情報が、セクション指定をしない場合に表示されない現象を回避



■ V15.080 : 2015/08/01

  ・ 通信トレース出力において、マルチバイト文字列（"K" 指定）が正しく表現されない問題を修正。

  ・ メッセージ定義におけるマルチバイト文字列（"K" 指定）が正しいバイト数を生成しない問題を修正。

  ・ メッセージ構造表示領域での "JIS8 文字" 及び "マルチバイト文字" 表示の識別文字が逆転していた
     ので、それぞれ "J"、"K" に訂正。

  ・ メッセージ定義における２次メッセージの自動選択機能において、メッセージ方向を両方向とした１次
     メッセージ定義の下方に定義した２次メッセージを正しく選択をしない問題を修正。



■ V15.110 : 2015/11/13

  ・ ライセンス管理の誤り（ファイアーウォール等によりライセンス管理情報がブロックされたと誤検出し
     てしまう場合がある）を改訂。



■ V16.010 : 2016/01/08

  ・ 設定ファイル（.ini）における共通項目に関するセクションとして、従来の [DEFAULT] に加えて
     [SECSCOMMON] を追加。従って、各接続条件において共通なパラメータは、[DEFAULT] もしくは
     [SECSCOMMON] セクションで定義することが可能。
     従来 [SECSCOMMON] セクションを定義し、使用している場合は、申し訳ありませんが、他のセクション
     名に変更する等の対応が必要になります。

  ・ 設定ファイル（.ini）から取得した設定値を、初期化時 及び 再読込時に通信トレース・ファイルに
     出力する。

  ・ ライセンス管理において、他ＰＣでの同一ライセンス・キーコードのチェックを、ライセンス・キー
     コード発行日から６ヶ月が経過した後実行していたが、ライセンス・キーコード発行日から実行する
     ように変更。



■ V16.011 : 2016/01/15

  ・ 設定ファイル（.ini ファイル）を評価する際、DEVID の指定を [DEFAULT] セクション以外で複数指定
     した場合等に異常終了する等の場合がある問題を修正。



■ V16.012 : 2016/02/20

  ・ トレース・ファイルをサイズ超過で切り替える場合、1000 以上の通番が付いたファイルの次のファイル
     が、正しい通番にならない問題を修正。

  ・ トレース・ファイルとして、日付をファイル先頭に付与した形式を指定した場合で、ファイル・サイズ
     超過でのファイル切り替え指定を行った場合、正しい通番が付与されない場合がある問題を修正。

  ・ 古トレース・ファイル削除機能において、正しく削除できない場合（日付指定の無いトレース・ファイ
     ル、日付フォルダを使用したトレース・ファイル）を解決。

  ・ 起動時点が、設定ファイル（.ini）の TRCDELTIME 以降である場合、翌日の TRCDELTIME になるまで
     古トレース・ファイル削除機能を実行しなかったのを、TRCDELDAY として負値を設定した場合は、起動
     時点で常に１回同起動を実行するように機能追加。



■ V16.040 : 2016/04/05

  ・ HSMS-GS に対応。
     HSMS-GS 設定に関しては、弊社 Simple SECS/HSMS 通信パッケージ（Trust Design Simple SECS
     Communication Library）に付属のドキュメント (TDS.pdf) をご参照ください。

  ・ １次メッセージ送信時のデバイスＩＤを指定可能とした。

  ・ スクリプト実行時の１次メッセージ送信デバイスＩＤを指定するために、特殊変数 "!DX" を新設し、
     変数値表示領域に "!DX" の表示を追加。

  ・ 実行ウインドの最小サイズを変更し、以前よりも小さいサイズのウインドでの動作を可能とした。

  ・ [ヘルプ] メニュに [エラーコードリストの表示] を追加し、エラーコードの一覧表示を行う。



■ V16.060 : 2016/06/10

  ・ メッセージ定義ファイルでの２次メッセージ定義におけるメッセージ属性に 'D' を追加し、デフォルト
     の２次メッセージである事を宣言可能とした。これにより、受信１次メッセージの構造が一致しないこと
     により、該当１次メッセージが見つからない場合も、SF-Code のみが該当する場合の２次メッセージを特
     定する事を可能とした。

  ・ 画面への通信トレースにおける制御メッセージに関する行頭記号を '<' から '@' に変更



■ V17.030 : 2017/03/01

  ・ SECS-1 通信時の「通信試験」時に、[Sending size] の指定を可能とし、マルチ・ブロック送信時の各
     送信ブロックのバイト長を指定可能とした。

  ・ スクリプト処理において、同一 SF-Code を連続して処理する場合、Muliti Open Transaction が発生す
     る場合等で、release 文と引き続く reserve 文との処理間隔において、連続して発生（受信）した
     SF-Code をスクリプトで処理できず、自動返信機能により２次メッセージが自動返信されてしまうケース
     が発生することを抑止するため、このようなケースにおいては release 文を使用せず（記述しないで）
     引き続く reserve 文により、release 文処理を実行することとした。



■ V17.030b: 2017/03/01

  ・ SemiStandard.sml を改訂



■ V18.011 : 2018/01/13

  ・ Windows 版での SECS-1 (RS232C) 接続において、115200 を超え定義の無い BPS (例えば 230400 等)
     をサポートした。

  ・ HSMS Active 接続の場合に、一旦切断を検知してから再接続処理を実行するまでの時間を、即時もし
     くは、即時もしくは、T5 時間経過後のどちらかを (SECSMODE&0x00010000) で選択可能とした。

  ・ SML 形式メッセージ定義ファイルのメッセージ定義行で flag として 'H'、'E' のどちらも指定しない
     ケースにおいて、'D' のみを指定（即ち "D" もしくは "WD"）した場合に、メッセージ自体が有効にな
     らず、'D' 指定も有効にならない問題を解決。



■ V18.020 : 2018/02/10

  ・ SECS メッセージの構築処理において、メッセージ定義ファイルで定義するメッセージの不定個数リスト
     内に @TIME 項目が存在した場合、その項目が現在時刻に変換されない問題を解決。

  ・ SML 形式ファイルにおける L[0|n] 形式をサポートした。
     これにより、LIST 項目に単一項目だけでなく、0個もしくは n個の異なるデータ項目を指定可能とした。

  ・ 上記 L[0|n] のサポートにより、SML 形式メッセージ定義ファイルのサンプル "SemiStandard.sml" を
     一部改訂。



■ V18.031 : 2018/03/23

  ・ SECS-1 接続時に受信エラーが発生した場合に異常終了する場合がある問題を改訂

  ・ 通信トレース出力の受送信マーク 受信 "<"、送信 ">" を逆にした。
     即ち、受信 ">"、送信 "<" とし、直感性を向上した。



■ V18.032 : 2018/03/28

  ・ 英語版を "tdlSSimE.exe" としてリリースした。



■ V18.041 : 2018/04/23

  ・ 指定の .ini ファイル等のパス名称が長い (概ね 120バイト超) 場合に、バッファオーバーランが発生
     し、動作が不定あるいは不安定になる場合がある問題を改訂。

  ・ スクリプト実行時に、論理積 (&) 演算がうまく動作しない場合がある問題を改訂。



■ V18.050 : 2018/05/28

  ・ DeviceID として 0x0000 を使用する場合に、.ini ファイルの DEVID の先頭として指定しなければいけ
     ないという制限を撤廃し、DEVID のどの位置にでも指定できるようにした。これにより、通信トレース
     ファイルの名称等の識別が、"0000" でないものも使用できるようになり、柔軟性を向上させた。

  ・ HSMS Active 接続時に発行する Select.Request に対する Passive 側からの Select.Responce の応答
     がとても速い場合に、Select 状態に移行せず T7TO を発生してしまう場合がある現象を回避。



■ V18.070 : 2018/07/01

  ・ SECS-1 接続時における以下の問題を解決。
    ・ .ini に T1=0 として指定されていると、通信エラーが発生した場合でのエラーの後処理時に、永久に
       待ち状態となってしまう。
    ・ 通信トレース出力において、メッセージ定義を使用したメッセージ名称、項目名称の表示を指示して
       いるにも関わらず、送信メッセージの表示に、メッセージ名称、項目名称が表示されない。
    ・ 通信トレース出力では、送信時のトレースを送信前に出力するため、BLOCK に関する表示は常に =0
       で表示していたが、送信データ長から BLOCK 値を計算して、送信するであろう最終 BLOCK の値を
       出力するように変更。

  ・ SECS-1 接続時における MULTI BLOCK メッセージの受信処理での以下の状態を .ini での SECSMODE の
     指定により、制御可能とした。(詳細は TDS.pdf を参照)
    ・ MULTI BLOCK メッセージ受信途中で、送信要求を受け付けた場合、タイミングによっては、その送信
       要求を優先して送信処理に入るが、このような場合でのデフォルト動作を、送信処理を MULTI BLOCK
       メッセージ受信での最終 BLOCK の受信後に開始するように変更し、(SECSMODE&0x10000000)!=0 の指
       定により、従来通りの動作をするように改訂。
    ・ 先頭 BLOCK の BLOCK 番号が任意のものであっても受信を許可するモード ((SECSMODE&0x200000000)
       !=0) を追加。
    ・ 受信した BLOCK 番号値が、受信を期待している番号と異なっている場合に、NAK 応答をして、送信
       側に再送を促すモード ((SECSMODE&0x400000000)!=0) を追加。



