2016-08-20 78 views
1

我是一個新用戶,那麼請去呵護我。展望的VBScript運行作爲規則

我創建了運行以下腳本寫一些電子郵件屬性到SQL表Outlook規則。

連接工作正常,當我運行,這個是一個選擇的消息宏,它工作正常......但是當我把它作爲一條規則運行,它只是不斷寫當前選定的電子郵件...

我想不通我要去哪裏錯了...

代碼如下:

Sub TEST_TO_SQL(Item As MailItem) 

Dim sSubject As String 
Dim sTo As String 
Dim sFrom As String 
Dim sMsgeID As String 
Dim sRcvd As Date 

Set Item = Application.ActiveExplorer.Selection.Item(1) 
sSubject = Item.Subject 
sTo = Item.ReceivedByName 
sFrom = Item.SenderEmailAddress 
sMsgID = Item.EntryID 
sRcvd = Item.ReceivedTime 

Const adOpenStatic = 3 
Const adLockOptimistic = 3 
Set objConnection = CreateObject("ADODB.Connection") 
Set objRecordSet = CreateObject("ADODB.Recordset") 

objConnection.Open _ 
    "Provider=SQLOLEDB;" & _ 
    "Data Source=SQLSERVER\SQLEXPRESS;" & _ 
    "Trusted_Connection=Yes;" & _ 
    "InitialCatalog=SQLDB;" & _ 
    "User ID=sa;Password=password;" 
objRecordSet.Open _ 
    "INSERT INTO [SQLDB].[dbo].[EMAIL_Log] (LogCompanyID, LogSubject, LogStartDate, LogEndDate, LogShortDesc, LogLongDesc, LogFrom, LogTo, LogMessageID, LogCategory1)" & _ 
    "VALUES ('11'," & "'" & sSubject & "'" & ", " & "'" & Format(sRcvd, "yyyy-mm-dd hh:mm:ss", vbUseSystemDayOfWeek, vbUseSystem) & "'" & ", '', 'short desc', 'Long Desc', " & "'" & sFrom & "'" & ", " & "'" & sTo & "'" & ", " & "'" & sMsgID & "'" & ", '47')", objConnection, adOpenStatic, adLockOptimistic 
End Sub 

回答

0

你總是使用當前選定的郵件項目。刪除行:

Set Item = Application.ActiveExplorer.Selection.Item(1) 

然後Item將是一個在傳遞到Sub