スポンサーサイト

一定期間更新がないため広告を表示しています

[Google PR]

Twitterはじめました。プラプラ | Twitter

【Access】メール送信機能(帳票自動添機能付)を追加する

(2008/07/16 追記)
Vectorで公開されました。以下からダウンロードできます。
AcessReportMail 1.0.0

システムからの出力結果をメール送信したいケースって結構あるかと
思います。

そういうケースでは、
1 ファイルを出力する
2 メーラーを起動し、添付処理をする
の2段階の手順を踏まないといけませんが、ちょっとめんどくさいです。

また、メールにファイルを添付し忘れる可能性もあります。

そこで、ファイル出力(snp形式)、添付までを自動で行うことのできる
「メール送信フォーム」を作ってみました。

特徴として、呼出1回のみでメール送信準備が完了し、
送信ボタンを押せば、そのままメール送信処理が実行されます。

このメール送信フォームは、既存のAccessシステムに組み込むことが前提なのですが、
帳票レポートの名称を引数として本フォームを呼び出すと、
1 指定帳票のスナップショットファイルを自動作成し、
2 ファイルが添付された状態でメール送信フォーム(Accessで作成)が起動します。
(メールの各項目については、マスタより初期値がセットされています。)メール送信画面(Access)

そして、送信ボタンを押すとメール送信が実行されますが、
送信処理自体は、外部のフリーのメール送信プログラム「Bsmtp.dll」を
使用することにより、他のメーラーを起動することなく、
Accessのみでメール送信を行うことを実現しています。
(「Bsmtp.dll」は、Tatsuo Babaさま作成の非常に使いやすくて実績のある
フリーソフトです。無料かつ商用利用もOKです。Baba Centerfolds

また、本メール送信フォームは、帳票ファイルを自動作成・添付するのが特徴ですが、
添付なしの通常のメール送信フォームとしても使えます。

設定については、送信元、送信先、メールテンプレートをマスタで管理しているため、
設定の変更が簡単です。
【送信元設定】
自社(送信元)マスタメンテナンス画面

【送信先設定】
送信先マスタメンテナンス画面

【メールテンプレート設定】
メールテンプレート画面

本メール送信機能を既存システムに組み込むには、

1 マスタテーブル(MST_JISYA、MST_KEIYAKUKAISYA、MST_MAIL_TEMPLATE、TBL_SAMPLE)を組み込み先のAccessシステムへインポートします。

2 フォーム (Fm_MAIL_SEND)を組み込み先のAccessシステムへインポートします。
マスタメンテナンスについては必要ならば組み込んで下さい。

3 メール送信を行いたいレポートの名称を引数として、フォーム「Fm_MAIL_SEND(メール送信画面)」を呼び出す処理を記述します。

●コード記述例)
 レポート(Rp_Sample)をプレビュー後、メール送信画面起動 

'レポートをプレビュー表示します。
DoCmd.OpenReport "Rp_Sample", acViewPreview

'メール送信画面を呼び出します。
DoCmd.OpenForm "Fm_MAIL_SEND", , , , , , "Rp_Sample"

こんな感じになります。

あと、ポート設定が必要な場合、サーバー名の後ろにコロンでつなげてポート番号を
入れてください。例)サーバー名:587
詳しくは、
・【Access】AccessReportMailメール送信時のポートを25から587へ (2009/03/17)
[Google PR]

Twitterはじめました。プラプラ | Twitter

スポンサーサイト

[Google PR]

Twitterはじめました。プラプラ | Twitter

<< 【雑記】キャッシュカード盗難対策。3回間違えさせる方法を考える。
【Access】スナップショットビューアーにセキュリティーホールが存在! >>

[関連エントリ 最新5]

[Google PR]


[最新エントリ 5]

>>トップページ

コメント
コメントする(お気軽にどうぞ)









この記事のトラックバックURL
トラックバック
カテゴリー
プロフィール
links
recent comment
  • 【Access】コンボボックス対応版。超簡単な帳票フォームでの矢印上下キー行移動。
    山田 裕樹 (04/28)
  • 【Access】vbaでhmacが正しく計算できた!!
    まさ (06/01)
  • 【Access】AccessReportMailメール送信時のポートを25から587へ
    わら (05/31)
  • 【SQLServer】超シンプル!再帰CTE(共通テーブル式)で連続データを作成する。
    sazi (09/08)
  • 【あまっちゃお】Amazon商品検索「あまっちゃお」プロジェクト始動。Ver00-06-00 β
    カメちゃん (07/31)
  • 【Access】あれ?DoCmd.RunCommand acCmdSaveRecordの内部仕様が変わった?
    花姉 (03/17)
  • 【Access】実行中のmdb(自分自身)をバックアップコピーする方法。
    亀 (02/06)
  • 【雑記】Amazonでの注文時、TMGさん発送にご注意を。納期を守れない可能性あり!
    管理人 (01/31)
  • 【雑記】Amazonでの注文時、TMGさん発送にご注意を。納期を守れない可能性あり!
    あ (01/31)
  • 【雑記】Amazonでの注文時、TMGさん発送にご注意を。納期を守れない可能性あり!
    K (11/13)
recent trackback
  • 【Access】2003安全でない式がブロックされていませんとセキュリティーレベル。
    awgs Foundry (10/29)
  • 【VAIOtypeP】液晶保護シートは、新車のカバーではない。レイアウト社液晶/天板保護フィルムセットRT-VP1FS1
    XMLがキライ。 (04/09)
  • Vistaから、LinkStation(NAS)にアクセスできません。
    そのほかいろいろ (09/06)
sponsored links