送受信日付/時刻はヘッダのどこになるのでNo.30526
kiwikazuya さん 07/03/06 18:12
 
中国在住のkiwikazuyaです。
いつもお世話になります。

さて、秀丸メールの情報アイテムを使用し、業務日誌をその
アイテムとしてつけ始めたのですが、一覧で日付順で日誌管理、
スレッドでアイテムごとに連結してタスク管理と便利この上なしです。

そこで、最近仕事の時間についてもメール上に表示したいと
考え、Dateヘッダと送受信日付/時刻の時間を返信あるいは、
転送時にヘッダ情報として新規メールに書き込めるといいなと
思いました。

Dateヘッダはマクロでも取り出せるみたいですが、
送受信日付/時刻についてはどのようにしたら取り出せるのでしょうか?
あるいは、ヘッダのどのへんになるのでしょうか?

よろしくお願いいたします。

[ ]
RE:30526 送受信日付/時刻はヘッダのどこNo.30529
Iranoan さん 07/03/06 18:43
 
 kiwikazuya さん今日は、Iranoan です。
 念の為お断りしておくと、開発者とは何の関わりも無い単なる一ユーザです。
> 送受信日付/時刻についてはどのようにしたら取り出せるのでしょうか?
> あるいは、ヘッダのどのへんになるのでしょうか?
 ヘッダにはないので、マクロを使うとしたら GetMailTransmitDate() を
使ってください。例えば、日時を省いて日付だけなら
$s = leftstr( dllfuncstr("GetMailTransmitDate"), 11 );
となります。

[ ]
RE:30529 送受信日付/時刻はヘッダのどこNo.30532
kiwikazuya さん 07/03/06 20:50
 
>$s = leftstr( dllfuncstr("GetMailTransmitDate"), 11 );
>となります。
ありがとうございます。
下のようなマクロを使って、メール一覧から選択したメールの
本文の1行目に送受信日時を挿入することができました。

loaddll "tkinfo.dll";
#n = dllfunc("BeginEditMail");
#r = readonly;
#b = browsemode;
if( #r ) readonlyswitch;
if( #b ) browsemodeswitch;
gofiletop;
$s = leftstr( dllfuncstr("GetMailTransmitDate"), 16 );
insert $s + "\n";
#n = dllfunc("SaveEditMail", 0, 1 );
if( #r ) readonlyswitch;
if( #b ) browsemodeswitch;

さらにFormatDate関数で日付の形式を変えようと試みましたが、
できませんでした。
2007/03/06という形式ですが、2007-03-06という形式か、
Dateヘッダと同じ形式にしたいのですが、
何か方法はあるでしょうか?
よろしければ教えていただけると幸いです。

よろしくお願いいたします。


[ ]
RE:30532 送受信日付/時刻はヘッダのどこNo.30533
Iranoan さん 07/03/06 21:26
 
 kiwikazuya さん今日は、Iranoan です。
> 2007/03/06という形式ですが、2007-03-06という形式か、
 こちらなら簡単ですね。(Date ヘッダと同じ形式となると、曜日の計算が必
要になって面倒くさい。)
 前回同様、日付だけなら次の通りです。
$s = dllfuncstr( "GetMailTransmitDate" );
$s = leftstr( $s, 4 ) + "-" + midstr( $s, 5, 2 ) + "-" + midstr( $s, 8, 2 );

[ ]
RE:30533 送受信日付/時刻はヘッダのどこNo.30534
kiwikazuya さん 07/03/06 21:38
 
> 前回同様、日付だけなら次の通りです。
>$s = dllfuncstr( "GetMailTransmitDate" );
>$s = leftstr( $s, 4 ) + "-" + midstr( $s, 5, 2 ) + "-" + midstr( $s, 8, 2 );

マクロを使うと色々できますね。
思うような形式にできました。
本当にありがとうございました。


[ ]