MMPLib2

MMPLib2.fmp12(fp7) を利用する事でメールの受信スクリプトがカンタンになります。
既存のファイルメーカーのファイルへの組み込みも容易になります!

MMPLib2.fmp12(fp7) は、Mail_template8[MMPLib2] 内に含まれます。


スクリプト名:受信[1アカウント]

変数を設定 [$appVer; 値:Get ( アプリケーションバージョン )]
レイアウト切り替え [「Mail_account」 (Mail_account)]
変数を設定 [$AccountTitle; 値:Mail_account::AccountTitle]
スクリプト実行 [「login(hostname,port,SSL,username,password,SaveDirectory,remove)」 , ファイル: 「MMPLib」; 引数: Mail_account::POP_Server & ¶ & 
Mail_account::POP_Port & ¶ & 
Mail_account::POP_SSL & ¶ & 
Mail_account::POP_Username & ¶ & 
Mail_account::POP_Password & ¶ & 
Mail_account::SaveDirectory & ¶ & 
Mail_account::サーバーから削除する受信後何日 ]
フィールド設定 [SYSTEM::gER; Get(スクリプトの結果)]
If [Left ( SYSTEM::gER ; 1 ) ≠ "+"]
#[+]を返さない場合は、ログインに失敗しているので、ログアウト処理は、しない。
//  スクリプト実行 [「logoff」 , ファイル: 「MMPLib」]
現在のスクリプト終了 [結果: "$AccountTitle=" & Quote ( $AccountTitle ) &  ";$ERROR=" & Quote ( SYSTEM::gER )]
End If
#
レイアウト切り替え [「List」 (Mail)]
変数を設定 [$ERROR; 値:""]
Loop
スクリプト実行 [「ReceiveMail」 , ファイル: 「MMPLib」]
変数を設定 [$Result; 値:Evaluate ( "Let ( [" & Get ( スクリプトの結果 ) & "] ; 0 )" )]
#変数に値が格納されます。|$er|$Subject|$bodyText|$bodyHTML|$From|$ReplyTo|$To|$Cc|$Date|$Date_Convert|$UIDL|$header|$Character_code|$Item_count|$MailFilePath
Exit Loop If [$er = 0]
If [$er = 1]
新規レコード/検索条件
フィールド設定 [Mail::受信TimeStamp; Get(タイムスタンプ)]
フィールド設定 [Mail::受信Mail_Account; $AccountTitle]
フィールド設定 [Mail::UIDL; $UIDL]
フィールド設定 [Mail::header; $header]
フィールド設定 [Mail::Subject; TextStyleAdd ( $Subject; 太字)]
フィールド設定 [Mail::From; $From]
フィールド設定 [Mail::To; $To]
フィールド設定 [Mail::Cc; $Cc]
フィールド設定 [Mail::ReplyTo; $ReplyTo]
フィールド設定 [Mail::Date変換前; $Date]
フィールド設定 [Mail::Date変換後; $Date_Convert]
フィールド設定 [Mail::bodyText; $bodyText]
フィールド設定 [Mail::bodyHTML; $bodyHTML]
フィールド設定 [Mail::MailPath; $MailFilePath]
フィールド設定 [Mail::読込文字コード; $Character_code  /*読込文字コード */]
フィールド設定 [Mail::アイテム数; $Item_count  /*アイテム数*/]
#添付ファイル取得
変数を設定 [$n; 値:1]
Loop
Exit Loop If [$n>10]
スクリプト実行 [「Get_AttachedFile(Number)」 , ファイル: 「MMPLib」; 引数: $n]
フィールド設定 [Mail::body添付ファイル[$n]; Get ( スクリプトの結果 )]
#取得 Content-ID
スクリプト実行 [「Get_AttachedFile_ContentID(Number)」 , ファイル: 「MMPLib」; 引数: $n]
フィールド設定 [Mail::body添付ファイル_Content_ID[$n]; Get ( スクリプトの結果 )]
#取得 FileName
スクリプト実行 [「Get_AttachedFile_FileName(Number)」 , ファイル: 「MMPLib」; 引数: $n]
フィールド設定 [Mail::body添付ファイル_FileName[$n]; Get ( スクリプトの結果 )]
変数を設定 [$n; 値:$n+1]
End Loop
フィールドへ移動 []
Else If [$er = "+UserCancel"]
#MMPWindowの[キャンセル]ボタンを押した
Exit Loop If [1]
Else
#エラー
変数を設定 [$ERROR; 値:$ERROR & If ( IsEmpty ( $ERROR ) ; $er ; ¶ & $er )]
End If
End Loop
If [PatternCount ( $appVer ; "Pro" )   > 0]
スクリプト一時停止/続行 [間隔(秒): 1]
End If
#ログアウト
スクリプト実行 [「logoff」 , ファイル: 「MMPLib」]
If [ not IsEmpty ( $ERROR )]
If [PatternCount ( $appVer ; "Pro" )   > 0]
カスタムダイアログを表示 ["ERROR!"; "[ERROR:5]以上の場合、メールの受信ができていません。¶¶" &  $ERROR]
End If
End If
フィールドへ移動 []
レイアウト切り替え [元のレイアウト]
現在のスクリプト終了 [結果: "$AccountTitle=" & Quote ( $AccountTitle ) &  ";$ERROR=" & Quote ( $ERROR )]


Comments