HAMLOG プログラム開発室


新着表示
タイトル
記事No
投稿日
投稿者

Re: THW_appendについてご教示ください
130
2009/07/29(Wed) 11:00:04
JA1RNR 吉田康太郎
JA2BQX 太田さん、おはようございます。

お問合せについて、下記のようにご返事申し上げます。


>1.書き込もうとしているQSOデータはどうなっていますか?
>   16 = DXフラグ がセットされていないようですが

私は、DXフラグ、CQフラグを利用していませんのでこれらの書き込みをしていません。

>2.QSOData  と  DataTbl(d) の宣言部分を教えて下さい。

Dim QSOData As String
Dim DataTbl(14) As String

このように単純に宣言しています。
DataTbl(d)に書き込むデータは、有効桁数分だけです。

>3.「メニュー.」がついているのは?

class名「メニュー」にこれらの宣言をしたためです。

>4.SetThBuffer 、 THW_append の宣言部分を教えて下さい。

Declare Sub SetThBuffer Lib "Thdll2Vb.dll" (ByRef p As TThLog, ByVal s As String, ByVal n As Integer)

Declare Function THW_append Lib "Hamlog50.dll" (ByRef Th As TThLog, ByVal f As Integer, ByRef m As Integer) As Integer

THW_appendの第三引数は、Hamlog50.DLL仕様書に「変数の参照渡しである。」とありましたので、 ByRefとしています。最初私はここでつまずきました。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者
参照先
Re: THW_appendについてご教示ください
129
2009/07/28(Tue) 19:39:35
JA2BQX 太田

こんばんは。 
VB2008はまだ分からない事ばかりなので済みませんが貴局の投稿
コーディングで幾つか教えて下さい。

> For d As Integer = 0 To 14
> QSOData = DataTbl(d)
> メニュー.SetThBuffer(th, QSOData, d)
> Next
>
> sd = メニュー.THW_append(th, メニュー.IsQSOdata, 0)

1. 
書き込もうとしているQSOデータはどうなっていますか?

> For d As Integer = 0 To 14

...ですが THDLL2VB.txt の Sub SetThBuffer によれば

0,1 = Callsignをコピーする場合
2 = Date
...途中省略...
14 = Remarks2
16 = DXフラグ
...です。


16 = DXフラグ がセットされていないようですが
DX局でもHamlogのデータ入力ウインドウのDXのチェックを付
けない処理と言う事でしょうか。


2.
> QSOData = DataTbl(d)

QSOData  と  DataTbl(d) の宣言部分を教えて下さい。

3.
> メニュー.SetThBuffer(th, QSOData, d)
...の様に  「メニュー.」がついているのは?

4.
SetThBuffer 、 THW_append の宣言部分を教えて下さい。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者

Re: THW_appendについてご教示ください
128
2009/07/28(Tue) 18:08:04
JA1RNR 吉田康太郎
JA2BQX 太田さん
こんばんは。

早速ご教示有り難うございました。
QSOデータの書き込みだけで、いろいろテストしてみます。
>
> ですので通常はQSOデータの書き込みだけで良いのでしょう。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者
参照先
Re: THW_appendについてご教示ください
127
2009/07/28(Tue) 18:03:12
JA2BQX 太田

> 私は、Hamlogの入力ウインドウから手で交信データを入力したことと同様のことができればよいだけです。

私もQSOデータ追加のコーディングをテスト中ですがまだエラーが出ています。
VB6では上手く行っているのですがVB2008は不慣れで..。。

失礼しました。
WKD/CFMはHamlogのメニューの「表示」「Wkd/Cfm記入表示」を実行して反映されるようですね。

ですので通常はQSOデータの書き込みだけで良いのでしょう。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者

Re: THW_appendについてご教示ください
126
2009/07/28(Tue) 17:21:03
JA1RNR 吉田康太郎
JA2BQX 太田さん、

こんにちは。

Hamlogのデータ構造の基本がわからずに質問をして申し訳ありません。

私は、Hamlogの入力ウインドウから手で交信データを入力したことと同様のことができればよいだけです。
要領を得なくてすみません。


> ここで言う「マスターデータへの書き込み」とは具体的には何でしょうか?
> QSOデータがマスターデータに影響するのはWKD/CFMの情報ですが、この事でしょうか?  (他にもあるのかな??)
>
> 「QSOデータへの書き込み」を行った後で、HDBをどの様に利用するのかにも係わって来るように思います。
>
> THW_append しただけでは DB_append の様に「インデックスファイルは更新されない」かどうかの記述が HAMLOG50.txt にはありませんね。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者
参照先
Re: THW_appendについてご教示ください
125
2009/07/28(Tue) 16:50:01
JA2BQX 太田

こんにちは。

> 下記のようにTHW_appendの第二引数にQSOデータへの書き込みを指定しましたが、このほかにマスターデータへの書き込みも行う必要がありましょうか。ご教示いただければ幸いです。

ここで言う「マスターデータへの書き込み」とは具体的には何でしょうか?
QSOデータがマスターデータに影響するのはWKD/CFMの情報ですが、この事でしょうか?  (他にもあるのかな??)

「QSOデータへの書き込み」を行った後で、HDBをどの様に利用するのかにも係わって来るように思います。

THW_append しただけでは DB_append の様に「インデックスファイルは更新されない」かどうかの記述が HAMLOG50.txt にはありませんね。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者

THW_appendについてご教示ください
124
2009/07/28(Tue) 16:28:50
JA1RNR 吉田康太郎
いつも初歩的な質問で申し訳ありません。

VB2008で、Hamlog50.DLLとTHDLL2VB.DLLを使いHamlogとMixW相互のデータ変換プログラムを作りました。
ここで初歩的な疑問が生じました。

下記のようにTHW_appendの第二引数にQSOデータへの書き込みを指定しましたが、このほかにマスターデータへの書き込みも行う必要がありましょうか。ご教示いただければ幸いです。

****************************************************
Public Const IsQSOdata = 16

For d As Integer = 0 To 14
QSOData = DataTbl(d)
メニュー.SetThBuffer(th, QSOData, d)
Next

sd = メニュー.THW_append(th, メニュー.IsQSOdata, 0)

****************************************************
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者

Re: awk
123
2009/07/24(Fri) 06:13:31
jr1cpb/稲村
出島さん、

ブログにたわごとを書いています。
その中で、プログラミング、awk、について触れています。
コールサインで検索するとすぐにわかると思います。
お暇な時にお立ち寄りくださいマセ。<(_ _)>
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者
参照先
Re: awk
122
2009/07/24(Fri) 00:15:56
JO1SIM 出島

稲村様
JO1SIM出島です。

AWKやPERLを使う件、まったくの賛成です。
AWKでコンテストログを出力されているのですね。そういったスクリプトを公開されていらっしゃれば、なおさら素敵だと思います!HI。

私の場合は、あえて遠回りしているのか・・・
HAMLOGからSQLで検索するソフトを作って…なんてことやっていますが、そこから先がまだないので、スクリプトがあれば大変助かります!(笑)
実際のWebシステム開発あたりでも、Perl等からデータベースを呼び出すことが一般的ですし!(中規模~大規模ならJAVAでしょうけど)



なお、私の作ったツールでSQLをつかって7MHzの拡張部分からの検索する場合は…

SELECT * FROM HAMLOG
WHERE FREQ >= 7.1 AND FREQ < 7.2;

で検索できます。7Mhz拡張QSOパーティ用でしたら、さらに日付をつけて…

SELECT * FROM HAMLOG
WHERE FREQ >= 7.1 AND FREQ < 7.2 AND
DateTimeToNumber(DATE, TIME) >= D '2009/07/10 00:00J' AND
DateTimeToNumber(DATE, TIME) <= D '2009/07/20 23:59J';

という感じです。日付処理もHAMLOGの流儀にあわせてあります。

> TurboHAMLOGにはQSOデータをcsvファイルに出力する機能があります。
> QSOデータを処理するには、.hdbファイルを直接読み出す方法もあり
> ますが、csvファイルを処理する方が簡単だと思います。
> csvファイルはテキストデータなのでメモ帳などのテキストエディタ
> でも見たり編集したりできます。
>
> 当局は、awkを使ってcsvファイルを処理するプログラム(スクリプト)
> をいくつか書いています。
> コンテストログ(JARL形式、Cablliroなど)、ADIF変換などです。
>
> テキストデータを処理するのに適したスクリプト言語はawk以外にも
> たくさんあると思いますが、これらの言語でプログラムを書いている
> 方が居られましたら情報交換しませんか?
>
> 例えば、7MHz拡張帯でのQSOだけ抽出するには
> BEGIN{FS=","}{if(substr($6,1,3)=="7.1")print}
> 1行だけで抽出できます。
> (freq欄には100KHzまで入力しておく必要がありますが)
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者

awk
121
2009/07/23(Thu) 09:21:18
jr1cpb/稲村
TurboHAMLOGにはQSOデータをcsvファイルに出力する機能があります。
QSOデータを処理するには、.hdbファイルを直接読み出す方法もあり
ますが、csvファイルを処理する方が簡単だと思います。
csvファイルはテキストデータなのでメモ帳などのテキストエディタ
でも見たり編集したりできます。

当局は、awkを使ってcsvファイルを処理するプログラム(スクリプト)
をいくつか書いています。
コンテストログ(JARL形式、Cablliroなど)、ADIF変換などです。

テキストデータを処理するのに適したスクリプト言語はawk以外にも
たくさんあると思いますが、これらの言語でプログラムを書いている
方が居られましたら情報交換しませんか?

例えば、7MHz拡張帯でのQSOだけ抽出するには
BEGIN{FS=","}{if(substr($6,1,3)=="7.1")print}
1行だけで抽出できます。
(freq欄には100KHzまで入力しておく必要がありますが)
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop