मेरे पास एक टेबल है जहां प्रत्येक रिकॉर्ड में एक ईमेल पता और एक तिथि होती है। मुझे तालिका के माध्यम से एक प्रश्न करने की आवश्यकता है जहां यदि तिथि एक दिन से कम है तो मुझे उस रिकॉर्ड से जुड़े ईमेल पते पर भेजने की आवश्यकता है।
मैंने ईमेल भेजने की स्थापना की जो परीक्षणों के लिए काम कर रहा है लेकिन मैं अपनी जरूरत की जानकारी को पुनः प्राप्त करने और कई पते पर भेजने में विफल रहा हूं। क्वेरी की प्रत्येक पंक्ति में एक ईमेल पता होगा जिसे प्राप्तकर्ता सूची में जोड़ने की आवश्यकता है। क्या कोई कृपया मदद कर सकता है?
मेरे पास अब तक का कोड है।
मैंने पहले से ही एक बयान की कोशिश की है, जहां अगर सच है तो रिकॉर्ड से ईमेल पुनर्प्राप्त करें और प्राप्तकर्ता सूची में जोड़ें
$Username = "moc";
$Password = "xxxxxx";
function Send-ToEmail([string]$email){
$message = new-object Net.Mail.MailMessage;
$message.From = "moc@company.com";
$message.To.Add($email);
$message.Subject = "New Items Item Request";
$message.Body = "You have new items in the Request App";
$smtp = new-object Net.Mail.SmtpClient("hq", "host");
$smtp.EnableSSL = $false;
$smtp.Credentials = New-Object System.Net.NetworkCredential($Username, $Password);
$smtp.send($message);
write-host "Mail Sent" ;
}
Send-ToEmail -email "test@market.com","test@market.com";
फिर से मैं उपरोक्त कोड के साथ एक परीक्षण ईमेल पते पर ईमेल भेजने में सक्षम हूं, लेकिन मुझे प्रत्येक पंक्ति से पते पुनर्प्राप्त करने और उन्हें प्राप्तकर्ता सूची में जोड़ने में कठिनाई हो रही है।
1 उत्तर
सबसे पहले, ईमेल पतों की एक सरणी को स्वीकार करने के लिए अपने फ़ंक्शन हस्ताक्षर को संशोधित करें:
function Send-ToEmail([string[]]$emailAddresses){
फिर जोड़ने के लिए, इन सभी पतों पर पुनरावृति करें, प्रत्येक को जोड़ें:
$emailAddresses | foreach {$message.To.Add($_)}