サポートチーム便り2014.07.23
SNDUSRMSGで送った平仮名のうち、特定のものだけが別の平仮名に変換される
Question
SNDUSRMSGコマンドを利用してCLを組もうと思っています。コマンド内でテスト的に平仮名をいくつか打ったところ、「あいうえお」が「ぎぐげござ」になり、「かきくけこ」が「じずぜぞこ」となりました。「さしすせそ」は「さしすせそ」のまま送られました。
これは何が原因と考えられるでしょうか。
Answer
SNDUSRMSGコマンドにパラメータTRNTBL(*NO)を付け加えてください。
このパラメータにはデフォルトでQSYSTRNTBLが入っており、このテーブルは、16進数でX'81(a)~X'A9(z)の範囲内で表される英小文字をすべてX'C1(A)~X'E9(Z)範囲内の英大文字に変換します。
たとえば、平仮名の「あ」は16進数でX'4481となります。この「81」がaと認識され、変換テーブルにより、Aにあたる「C1」に変換されます。そのため、TRNTBLパラメータをデフォルトのままSNDUSRMSGを利用すると、「あ」がX'44C1の「ぎ」になってしまいます。