I am trying to get all emails from constrained found set to send bcc. It only adds about 83 emails and cuts off. There should be about 1300 email addresses. What am I doing wrong? See attachment for script.
Show All records followed by "constrain" seems a inefficient way to do this. We can't see what criteria you use in the constrain. Can you confirm that this script produces the correct found set?
If it produces the correct found set, it's likely either your ISP or email service that is identifying you as a spammer and limiting the number of outgoing emails in a given time period. Note that this can get you black listed by many ISPs to the point that you can't send them any email.
Danger Will Robinson!
Sending 1300 emails (TO, CC, or BCC) will get you on a spammer's list very quickly and you will find that you can no longer send (your ISP/host) or those you wish to reach will block you. Failure to the max!
1. Get a send mail service
2. Batch send smaller groups of records (I try not to exceed 25 in a group), AND pause between groups (I may set this to be up to 5 minutes!)
You'll find other advice on this forum.
(Former ISP/Hosting provider with about 600 email clients - anti-spamming is a daily chore aided by Barracuda server.)
If you have debugged that the $List variable is being built with all of the e-mail addresses you expect then...
You are building a URL.
(1) I'm going to guess that you are using Windows.
"Microsoft Internet Explorer has a maximum uniform resource locator (URL) length of 2,083 characters".
If each e-mail address adds about 25 characters on average, then you can get around 83 e-mail addresses before reaching this limit.
(2) If these are raw e-mail addresses in the e-mail field (as I would expect), then you may be running into a problem if they are not URLEncoded. Legitimate E-mail addresses can contain characters that are invalid in a URL without URL encoding. Your formula should probably be
List ($List; GetAsURLEncoded(Students::Email_Stu...))
I would add that if you're going to do this yourself (as opposed to a mail service), I would mark the records that are to receive the email, then loop through that set 100 or less per hour, and email them individually. Even small batches (~25 records) in BCC tend to awaken the spam monster and all of your subsequent emails are blocked from the recipient. My experience has been that individual messages go through, even when there are hundreds a day. I'm recommending marking the records for email so you can set the loop with a counter, have it grab the found set, loop through ~50 records, sending email and removing the flag value so they aren't picked up the next go around. Yes, it would take a few hours to get through your record set, but the emails will reach your target.
Retrieving data ...