2015-05-27 9 views
5

के साथ आर में Outlook के माध्यम से ईमेल अटैचमेंट भेजना मैं एक दैनिक विश्लेषण चला रहा हूं जो एक फ़ाइल को थूकता है जिसे मैं अपने दृष्टिकोण ईमेल के माध्यम से भेजना चाहता हूं। कोड मैं इस्तेमाल किया यहाँ चित्रित किया है, और शानदार काम करता है लेकिन इसके बारे में लगाव हिस्सा कभी नहीं काम करता है ...आरडीकॉम क्लाइंट

library(RDCOMClient) 


OutApp <- COMCreate("Outlook.Application") 


outMail = OutApp$CreateItem(0) 

outMail[["To"]] = "[email protected]" 
outMail[["subject"]] = "Bruh" 
outMail[["body"]] = "Tester" 
outMail[["Attachments"]]$Add("L:/Document.csv") 

outMail$Send() 

मूल यहाँ है:

Sending email in R via outlook

कोड लगाव हिस्सा जब तक काम करता है , और ईमेल भी भेजता है, बिना किसी अटैचमेंट के। यह इस त्रुटि को बाहर करता है:

<checkErrorInfo> 80020009 
No support for InterfaceSupportsErrorInfo 
checkErrorInfo -2147352567 
Error: Exception occurred. 

कोई विचार?

+0

आपको एक पूर्ण पथ निर्दिष्ट करने की आवश्यकता है। क्या 'एल:/document.csv' एक पूर्ण पथ है? क्या 'एल 'एक स्थानीय ड्राइवर है या आपने नेटवर्क ड्राइवर मैप किया है? यदि बाद में मामला है तो आपको वास्तविक नेटवर्क पथ निर्दिष्ट करने की आवश्यकता है। –

+0

कोड कब और कहाँ चलाते हैं? –

उत्तर

0

Add अटैचमेंट क्लास की विधि चार तर्क स्वीकार करती है। मैं उन्हें स्पष्ट रूप से निर्दिष्ट करने का सुझाव देना चाहूंगा।

अनुलग्नक का स्रोत एक फ़ाइल (फ़ाइल नाम के साथ पूर्ण फ़ाइल सिस्टम पथ द्वारा प्रतिनिधित्व किया जा सकता है) या एक आउटलुक आइटम जो अटैचमेंट का गठन करता है। सुनिश्चित करें कि फ़ाइल सुलभ है।

-1

आप इस

L:\\Document.csv

मेरे लिए काम किया है जैसे कि यह सब करने की ज़रूरत। दो बैकस्लाश का प्रयोग करें।

+0

2 बैकस्लेश। मुझे यकीन नहीं है कि केवल 1 स्लैश क्यों दिखाई देता है। – Martin

0

जवाब यह है कि मदद की मुझे टिप्पणी में डेविड Arenburg द्वारा प्रदान किया गया:

आप एक पूर्ण पथ निर्दिष्ट करने के लिए की जरूरत है। एल है: /Document.csv एक पूर्ण पथ? क्या एल एक स्थानीय ड्राइवर है या आपने नेटवर्क ड्राइवर मैप किया है? यदि बाद में केस है तो आपको वास्तविक नेटवर्क पथ निर्दिष्ट करना होगा।

उदाहरण: \\ dfwcot \ होम $ \ लैंडो \ bb8 \ 2015/12/24 डेली Report.xlsx

1

स्लैश रिवर्स और उन्हें भागने।

समस्या यह है कि पथ आर में बनाया जा रहा है, जो आगे की स्लैश पसंद करता है (चूंकि बैकस्लैश बचने वाला चरित्र है), लेकिन इसका आउटलुक द्वारा व्याख्या किया जा रहा है, जो केवल बैकस्लाश लेता है।

उदाहरण के लिए, सम्मिलित फ़ाइल संवाद में पथ चिपकाकर Outlook ईमेल में अनुलग्नक जोड़ने का प्रयास करें, लेकिन स्लेश को आगे बढ़ाने के लिए बैकस्लैश को बदलें। यह इसे स्वीकार नहीं करता है। और यह अनिवार्य रूप से आप क्या करने की कोशिश कर रहे हैं।

तो उन्हें बैकस्लाश बनाने के लिए विपरीत, फिर उनसे बचने के लिए प्रत्येक को अतिरिक्त बैकस्लैश जोड़ें। उदाहरण के लिए:

C:\\Users\\MyFiles\\Documents\\document.txt 

आर भागने वाले पात्रों को हटा देगा और Outlook के लिए एक साफ पथ पारित करेगा।