1.3

2013/03/10 23:02 に joymate tomida が投稿
MMPLib2(.fp7|.fmp12)のスクリプト:ReceiveMail 変更。

以下を追加。
#Log記録|MMPLib_Log
フィールド設定 [ Log::ERROR; Log::ERROR & If ( IsEmpty ( Log::ERROR ) ; "" ; ¶ ) & Get ( タイムスタンプ ) & "|" & "受信 +OK|Retry:" & Log::CountError ]


スクリプト実行 [ 「GetMailIndex(Server,Account)」 , ファイル: 「Log」; 引数: MMPLib::gServer & ¶ & MMPLib::gAccount ]
変数を設定 [ $argu; 値:Get(スクリプトの結果) ]
変数を設定 [ $UIDL; 値:GetValue ( $argu ; 1 ) ]
変数を設定 [ $index; 値:GetValue ( $argu ; 2 ) ]
変数を設定 [ $RecID; 値:GetValue ( $argu ; 3 ) ]
If [ IsEmpty ( $UIDL ) or IsEmpty ( $index ) or $RecID = 0 ]
現在のスクリプト終了 [ 結果: "$er=" & Quote ( 0 ) ]
End If
スクリプト実行 [ 「lib_初期化[MailTemp]」 ]
レイアウト切り替え [ 「MMPLib」 (MMPLib) ]
フィールド設定 [ MMPLib::gUIDL; $UIDL ]
フィールドへ移動 [ ]
#ここから「MMPLib_Log.fp7」への設定が可能
#[Log::CountError]の初期化は スクリプト:「login(hostname,port,SSL,username,password,SaveDirectory,remove)」で実行している
#[Log::CountError]が5回以上の場合、このメールの受信をスキップ
If [ Log::CountError ≥ 5 ]
フィールド設定 [ Log::CountError; Log::CountError+1 ]
#Log記録|MMPLib_Error_Log
スクリプト実行 [ 「Add_log($TimeStamp,$Log)」 , ファイル: 「MMPLib_Error_Log」; 引数: "$TimeStamp=" & Quote ( Get ( タイムスタンプ ) ) & ";$Log=" & Quote ( "受信 -ER|受信できませんでした!" & "|Retry:" & Log::CountError & "|index:" & $index & "|UIDL:" & MMPLib::gUIDL & "|" & MMPLib::gAccount & "/" & MMPLib::gServer ) ]
フィールドへ移動 [ ]
現在のスクリプト終了 [ 結果: "$er=" & Quote ( "ERROR:" & Log::CountError & "|" & Log::ERROR& "|スクリプト:" & Get ( スクリプト名 ) ) ]
End If
#mailファイル保存用フルパス作成
スクリプト実行 [ 「lib_MailPath設定(id)」; 引数: $RecID ]
フィールドへ移動 [ ]
#受信
変数を設定 [ $Result; 値:iill_GetMail_Binary2( $index ; MailTemp::MailPath ) ]
フィールド設定 [ MMPLib::gER; $Result ]
フィールドへ移動 [ ]
If [ $Result = MailTemp::MailPath ]
#受信成功
フィールド設定 [ Log::Receive_TimeStamp; Get ( タイムスタンプ ) ]
If [ Log::CountError > 0 ]
#エラーの後で、受信が成功した場合、Log記録
#Log記録|MMPLib_Error_Log
スクリプト実行 [ 「Add_log($TimeStamp,$Log)」 , ファイル: 「MMPLib_Error_Log」; 引数: "$TimeStamp=" & Quote ( Get ( タイムスタンプ ) ) & ";$Log=" & Quote ( "受信 +OK|Retry:" & Log::CountError & "|index:" & $index & "|UIDL:" & MMPLib::gUIDL & "|" & MMPLib::gAccount & "/" & MMPLib::gServer ) ]
#Log記録|MMPLib_Log
フィールド設定 [ Log::ERROR; Log::ERROR & If ( IsEmpty ( Log::ERROR ) ; "" ; ¶ ) & Get ( タイムスタンプ ) & "|" & "受信 +OK|Retry:" & Log::CountError ]
End If
フィールドへ移動 [ ]
Else If [ $Result = "+UserCancel" ]
#MMPWindowの[キャンセル]ボタンを押した
現在のスクリプト終了 [ 結果: "$er=" & Quote ( $Result ) ]
Else
#エラー
#Log記録|MMPLib_Error_Log
スクリプト実行 [ 「Add_log($TimeStamp,$Log)」 , ファイル: 「MMPLib_Error_Log」; 引数: "$TimeStamp=" & Quote ( Get ( タイムスタンプ ) ) & ";$Log=" & Quote ( "受信 -ER|" & $Result & "|Retry:" & Log::CountError & "|index:" & $index & "|UIDL:" & MMPLib::gUIDL & "|" & MMPLib::gAccount & "/" & MMPLib::gServer ) ]
#Log記録|MMPLib_Log
フィールド設定 [ Log::ERROR; Log::ERROR & If ( IsEmpty ( Log::ERROR ) ; "" ; ¶ ) & Get ( タイムスタンプ ) & "|" & $Result & "|スクリプト:" & Get ( スクリプト名 ) ]
フィールド設定 [ Log::CountError; Log::CountError+1 ]
フィールドへ移動 [ ]
現在のスクリプト終了 [ 結果: "$er=" & Quote ( "ERROR:" & Log::CountError & "|" & "index:" & $index & "|" & $Result ) ]
End If
#
フィールド設定 [ MailTemp::UIDL; $UIDL ]
スクリプト実行 [ 「lib_Mail読込解析」 ]
スクリプト実行 [ 「lib_header情報取得」 ]
スクリプト実行 [ 「lib_Body設定」 ]
フィールドへ移動 [ ]
#受信メールがある場合、結果($er)に「1」を返す。
変数を設定 [ $return; 値:"$er=" & Quote ( 1 ) & ";$Subject=" & Quote ( MailTemp::Subject ) & ";$bodyText=" & Quote ( MailTemp::bodyText ) & ";$bodyHTML=" & Quote ( MailTemp::bodyHTML ) & ";$From=" & Quote ( MailTemp::From ) & ";$ReplyTo=" & Quote ( MailTemp::ReplyTo ) & ";$To=" & Quote ( MailTemp::To ) & ";$Cc=" & Quote ( MailTemp::Cc ) & ";$Date=" & Quote ( MailTemp::Date変換前 ) & ";$Date_Convert=" & Quote ( MailTemp::Date変換後 ) & ";$UIDL=" & Quote ( MailTemp::UIDL ) & ";$header=" & Quote ( MailTemp::header ) & ";$Character_code=" & Quote ( MailTemp::読込文字コード ) & ";$Item_count=" & Quote ( MailTemp::アイテム数 ) & ";$MailFilePath=" & Quote ( MailTemp::MailPath ) ]
現在のスクリプト終了 [ 結果: $return ]
Comments