ブログパーツ レンタルCGI
TAKAさんの毎日が発見・ブログ
アマチュア無線の機器製作を中心にした日常の活動記録です (by Taka JA2GRC、このブログはFC2_BLOGを使わせていただいてます。)
≪05月   2017年06月   07月≫
1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  
JT_Linkerバグ対応
 少し前に、ユーザーの方から指摘を受けていたJT_Linkerのバグですが、ちょうど良い時間が出来ましたので、対応してみました。
 JT65-HF HB9HQX-Editonをリンクした場合に、コールの頭が数字の時にエラーになると言う指摘がありました。 JA2GRCみたいなコールでは問題ないのですが、数字で始まる7N3XYZみたいなコールの場合にエラーになってしまうと言うことで、全然気がつきませんでした。 指摘いただいたユーザーの方から、親切にもSQLiteの使い方に問題があるのではとの指摘までも頂いていたのですが、コールサイン入力を工夫することで、当面は回避できるというレポートも頂いていましたのと、身の回りがばたばたしていたので、そのままにしておきました。 先週に身の回りのばたばたも一段落して、しばらくは安静が必要と言うことで、ちょうど時間が出来ましたので、この問題をみてみることにしました。 何せ、しばらくコードも見ていないので、忘れてしまって、纏まった時間がある時に、じっくりとコードを見直してみないと手を付ける訳には行きません。

 さて、試しにJT65-HF HB9HQX-Editonに架空の7N3XYZというコールを入れてログを作り、JT_Linkerにリンクしてみましたら、レポートを頂いたとおりエラーが出ました。 こういう再現性のあるエラーは対応しやすいです。

160427_jt_linker_01.jpg

 JT65-HF HB9HQX-EditonのログはSQLiteのデータベース形式で作成されていて、(コール)_(グリッドロケータ)の様に7N3XYZ_PM74がテーブル名になるようですが、SQLiteの場合テーブル名の先頭は英字でなくてはならないというルールがあります。 それで、エラーになっているみたいです。 でも、アマチュア無線のコールサインをログファイル名に使っている訳なんで、どうしても頭が数字のコールもある訳で、これはまずい訳です。 それで、どうしても、先頭に数字のあるテーブル名を使いたい場合は、例外的に、そのテーブル名をダブルクオートまたはスクエアブラケットで囲んでテーブル名として使えば、エラーにならずに受け入れてくれるみたいです。

160427_jt_linker_02.jpg

 早速、コードの該当箇所を探して、テーブル名の部分を修正してみました。 VB.netの場合、文字列の表現もダブルクオートで囲みますので、ダブルクオートを文字列として表現するには、” ” ” ”と4つ並べなくてはならず、紛らわしいので、スクエアブラケット[ ]で囲むことにしました。

160427_jt_linker_03.jpg

 これで、7N3XYZのような頭に数字のあるコールサインでも問題なく動作する様になりました。

160427_jt_linker_04.jpg

 さて、上手く行っている様なんで、直ぐにリリースしても良いのですが、もう一つ気になっている問題を解決してから、纏めてリリースしようと思っています。
コメント
この記事へのコメント
URL :
コメント :
パスワード :
管理者にだけ表示を許可する
 
トラックバック
この記事のトラックバックURL
Template designed by アクセラと+αな生活

Powered by まとめ .