« QSL発行不要局等リスト | トップページ | 2019年もよろしくお願いします »

2018.11.27

HAMLOGのQSL定義でカード不要局等に対応(1枚1QSO印刷用)

<追記>忘れてました。
まとめ印刷(1枚のQSLカードに複数のQSO印刷)をしている人が以下のルーチンを入れると、コンテストがらみでたとえば最大3QSOのまとめ印刷時、普通QSO⇒コンテストQSO⇒普通QSOとある場合、本来なら3QSOで1枚のカードで済むところが、コンテストQSOのところで印刷せず紙を排出してしまうのでそれぞれ1QSOが1枚のカード2つになってしまいます。結局余計にカードが増えるという。coldsweats01

対策としてはコンテスト交信が終わるごとにカードをまめに印刷するとか、コンテストのみ印刷しないを使わずすべて印刷しないにしちゃうかなぁ・・・。もしくは一般交信とコンテストは別々にまとめ印刷を行う。先に印刷設定で印刷除外に「T」を入れて一般交信をすべてまとめ印刷してから、それを消してコンテスト関係をまとめ印刷する。
でも、それもまたカードが増えますよね(^^;

1枚1QSOの人や、コンテストがらみを印刷しない関係を使わない人には関係ありません。

まとめ印刷のループ内にコンテストQSOをはじいて排出せずに次を読むというルーチンもつくっているのですが、QSLカードのマークの問題があるのと、当然ややこしいので、既存のものに簡単に追加とはいきません。
ただ、紙がもったいないのは事実なので何らかの形で公開してご参考になるように出来ればなとは思っています。
<追記終了>


意外と反響があったので、ちょっと分かる方あてに少しきちんとした構文を書きます。
私の使っているQSL定義ファイルからの部分切り出しです。

以前blogに書いた方法だと印刷していないものにも印刷済みマークが入ってしまうのですが、#Mark = ""を入れておくと回避できます。あとどうしても文が長くなるのですっきりさせるために変数を使います。

ちょっと説明しておきます。HAMLOGのQSLの項目の説明です。
Qsl
これのQSLの項目で左からQSLカードの経由先(Jと入っているところ)、QSL発行済み(Aと入っているところ)/QSL受領済み(Nと入っているところ)になります。上記の例では受領済みマーク=N、経由先=Jになります。


全体の条件として

1.受領済みマークに「N」を入力したものには一切カードを発行しない
(QSLカード到着したけど、そのQSLカードには折り返し不要と書いてあった!と言うときに使います)
(QSLカードの到着時受領済みマークを入力するときに、折り返し不要のもののみ「*」をいれずに、「N」を受領済みマークにして入力・登録すれば、印刷を回避できます。受領時済みチェックにINSERTキー押すと*が入りますが、SHIFTキー+Nキーを押すとNが受領済みマークの文字で入力されます。)

2.コンテスト時のカードも基本的にはすべて発行する
(発行したくない場合は定義文のコメントアウトを外してください)
(発行したくない方は、コンテストの実際の交信時、ログを入力する画面のQSL欄のところで「QSLの経由先(一番左の文字、たいてい「J」になっててnoQSLの場合「N」になったりしているところ)」にコンテストの交信時のみ例えば「T」を入れるようにして分けたらよいと思います。別のコンテストログからインポートした場合は、オプション(O)-データの保守(D)-文字列の置換(P)で、該当の部分を一括で「T」とかに置き換えればよいかと思います。)
その上で印刷の設定のところの印刷除外にTを入れておけば、基本的にコンテスト時のQSLは発行しないようにできますよね。


3.QSLの受領済みマーク欄に「S」が入っているものは印刷する。
(ただし、印刷設定で「未発行局を印刷」がチェックがあって、すでに印刷済みの場合は当然再印刷はしません)

です。

その上で個別の局に対して

a.コンテスト(上記のQSLの経由先を「T」と設定してある)時印刷しない、ただしカード受領済みマーク「S」があるときは印刷する(通常交信時(QSLの経由先欄がその他の文字)は印刷する)(T)
⇒「コンテスト時のカードは不要」となっている局とかに
b.交信を印刷しない。ただし、カード受領済みマークに「S」があるときのみ印刷する(S)
⇒請求時のみ発行に対応。カードは送ってくるけど「返信不要です」とある局とかに
c.交信を印刷しない。ただし、カード受領済みマークがなんでも入っていれば印刷する(R)
⇒折り返し発行に対応、基本カードはこないけど来たら折り返し発行したい局とかに

と、設定ができます。


んで、基本はコンテスト時の交信にのみQSL経由先欄に「T」をいれて、カードの受領チェック時に普通ならカード受領済み欄に「*」を入れて、"返信不要"と記載してあるカードの受領だと「N」を入れて、"カード発行お願いします"とあれば「S」を入れてます。(ただし、印刷設定で「未発行局を印刷」がチェックがあって、すでに印刷済みの場合は当然再印刷はしません)
特定の局の設定には基本的にはa.とb.を使うのかなと思います。

下のここから~ここまでの間をコピーしてQSL印刷定義文の上部に付け加えて、コールサイン等を設定してください。ミスの無いように作成しているつもりですが、自己責任と自己判断でご使用ください。
BLOGに載せるに当たって一部変更したり、注釈を付け加えたりしているので、ミスがあるかもしれません。
転載、引用、ご利用、改変等自由ですが、トラブル等はご自身で解決されるようお願いします。
個人の個別の定義ファイル等についての質問等はお答えできません。

;-------- 30/11/26版ji4eaw
;-------- 30/11/28 一切の印刷をしないを削除しました。設定していたNをSにでも変えてください。

;--------ここから
;--------変数初期化設定
#Mov $$N="Y"


;--------カード受領「N」マークは印刷しない
? Qsl3 "N"
#Mark = ""
#ExitZ
? End

;--------コンテスト時の交信(QSL欄「T」)でカードが来ていないものはすべて印刷しない
;--------(1枚1QSO印刷以外の方が使うとカード枚数が逆に増える可能性もあります)
;--------初期は印刷するように「;」コメントアウトしています。印刷したくない場合はこの下5行の先頭「;」を消してください
;? Qsl1 "T"
;? Qsl3 " "
;#Mark = ""
;#ExitZ
;? End

;-------- 以下個別局の設定
;------ "T" コンテスト時(QSL経由先欄「T」)は印刷しないが、通常交信時(その他の文字)は印刷する
; (1枚に複数QSOを印刷される方は逆に印刷枚数が増える可能性があります)
;------ "S" 交信を印刷しない。ただし、カード受領マークに「S」があるときのみ印刷する(請求があるときのみ発行に対応、カードがくるけど"返信不要"と書いてある方など)
;------ "R" 交信を印刷しない。ただし、カード受領マークがなんでも入っていれば印刷する(折り返し発行に対応、)

;1行目の""内にコールサイン、2行目の""内に印刷をどうするかの設定の文字を入れます。
;同じコールサインを複数回書いた場合は一番下のものが優先されます。記載の順番は問わないのですが、コールサイン順に並べたほうが整理しやすいかなとは思います。

? Data1 "JH0●●●"
#Mov $$N="T"
;---
? Data1 "JS0●●●"
#Mov $$N="T"
;---
? Data1 "JP0●●●"
#Mov $$N="R"
;---
? Data1 "JQ0●●●"
#Mov $$N="S"
;---
? Data1 "JD0●●●"
#Mov $$N="R"
;---

;-------- "T" コンテスト時は印刷しないが、カード受領マークに「S」があるとき印刷する
? $$N "T"
? Qsl1 "T"
? Qsl3! "S"
#Mark = ""
#ExitZ
? End

;-------- "R" 交信を印刷しない。ただし、カード受領マークがなにか入っていれば印刷
? $$N "R"
? Qsl3 " "
#Mark = ""
#ExitZ
? End

;-------- "S" 交信を印刷しない。ただし、カード受領マークに「S」があるときのみ印刷
? $$N "S"
? Qsl3! "S"
#Mark = ""
#ExitZ
? End

;--------ここまで

|

« QSL発行不要局等リスト | トップページ | 2019年もよろしくお願いします »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/28813/67425465

この記事へのトラックバック一覧です: HAMLOGのQSL定義でカード不要局等に対応(1枚1QSO印刷用):

« QSL発行不要局等リスト | トップページ | 2019年もよろしくお願いします »