I would like to set up a mass email to a number of patients that have a certain disease. I have the following set up.  My Objects are:  Disease__c:  Name, Category  Contact: Name, Email  Patient: Contact Lookup, Disease Master-Detail (where disease__c is master)  So, I now want to send an email to all Patients that have disease x. Here is my code so far:  List &lt;Id&gt; targetObjects = new List &lt;Id&gt;; List &lt;Id&gt; whatids = new List &lt;Id&gt;; //I know this query is totally wrong! targetObjects = [SELECT Id FROM Contact WHERE Contact.Name == Patient.Name &amp;&amp; Patient.Disease = 'x']; for {Disease__c d : disease) {   Messaging.Massemailmessage email = new Messaging.Massemailmessage();   email.setDescription('Send disease information');   email.setTargetObjectIds(targetObjects);   //I guess here I want to also add the IDs of Disease__c and Patient__c as I want to include merge fields from those objects?   email.setWhatIds(whatids); }   I know how to do this successfully using single email, but I just cannot get it right using mass email.  Thanks in advance.
I am new to Force.com and trying to learn some concepts.  Currently I am using Single Email Message to send my emails, but I need to change that to mass email, but I don't quite understand how to do that.   I have also created a Visualforce email template, which I would like to use, but it doesn't seem to work.   It would be great if someone could help me out.  //email_disease_map contains pairs of email address and disease ID for (Id id : email_disease_map.keySet())   {     Messaging.SingleEmailMessage mail = new Messaging.SingleEmailMessage();     String[] defaultAddresses = new String[] {'id@test.com'};      List&lt;String&gt; toAddresses = new List &lt;String&gt; (email_disease_map.get(id));      if (!toAddresses.isEmpty())       {         //set addresses for email to be sent         mail.setToAddresses(defaultAddresses);         mail.setCcAddresses(toAddresses);         mail.setTemplateId(Notification);         //set up remaining email         mail.setReplyTo('test@mail.com');          mail.setSenderDisplayName('Ms Test');          Messaging.sendEmail(new Messaging.SingleEmailMessage[] { mail });       }  }
Installing Broadcom Wireless Drivers Can NDSolve handle discontinuous data? I'm trying to prove  the following claim:     If $f$ is continuous  and $\displaystyle\int_a^\infty |f(x)|\;dx$ is finite then $\lim\limits_{ x \to \infty } f(x)=0$.   Here the counter example of all these sine functions won't do, since  their infinite integral does not converge absolutely.   Any hints for a proof? How to list the properties of a JavaScript object? AudioSessionSetActive and AudioSessionSetProperty is deprecated in iOS 7 How many rectangles or triangles. Marketing Cloud contact builder shows 9 times more contacts Java : How to determine the correct charset encoding of a stream Do the Faceless Men take more than just a face? How to find the best route through multiple points? I am using postgreSQL, postGIS and pgrouting. Now I am really confused on how am I going to find the shortest path between multiple points.   I know how to find it between two points through dijkstra but I am confused how to accomplish the same result with more than two points.   I have done some research and found this:    But still I did not understand if its the right way and how to install it. Bravo for allowing comment editing, but what's the explanation for enforcing a five-minute window?  I think this might be over-engineering. If I have a spelling mistake or an inaccuracy I'd like to fix, I don't think the fact that five minutes has elapsed should prevent me from fixing it.  Further, if you are worried people will edit their comments in a way that makes the comment thread nonsensical, they can already do this by deleting their comment. So, limiting the ability to edit isn't really helping much in that regard.  Update  If people don't like this idea, I'm definitely open to hearing your reasons. For now, it seems like an unnecessary limitation of a quite awesome feature.  Update 2  Regarding John's scenario...     Me: Obama is cool!   You: You are right, man!      My edit: Obama is an idiot!   You: You are right, man!   ...this problem can still occur with deletions...     user1: Obama is cool!   user2: No, McCain is cool!   you: You are right, man!        user1: Obama is cool!   ---- deleted -----   you: You are right, man!     So, yes, editing could be abused as you suggest, but discontinuities can occur already because of deletions (and as someone else mentioned, because upvoted comments get prioritized upward).  As for Jeff's argument about rate limiting, I agree that is important, but I don't understand why you can't just use a CAPTCHA to prevent too many edits in a short period of time. Is there a bulletproof way to know a file has been successfully decrypted? I am wondering whether there is a bulletproof way to know if one is successful in decrypting a file.   As an example, say I encrypt a text file and protect it with a 3 letter password. I use brute force to decrypt it, but two different passwords lead to a file that contains English intelligible text. Is there a way for me to know which one is the original one? In other words, is there an infallible way to know I've entered the password correctly? How to make DNS server propagate faster if you are a site owner? It's often the case that I want to change name servers because my site is messed up.  Well, it takes a very long time for the name server to propagate.  Is there something in DNS, or registrar or anything I can do to speed that up.  Flushing my dns server using  and it rarely works Vectorization operator I have edited a script that creates some nodes, but the only problem is, it always created a new material. I want it to either add the nodes on the existing material, or a pre-defined material. Here is the script base I am using.    Thanks for the help in advance! :D Evaluate the integral $\int e^{-x}x^n dx$ Evaluating the integral $\int_{0}^{\infty}  e^{-x}x^n dx$ where n=0,1,2 ...   1st Integration by part: let $a=x^n$, $da= nx^{n-1} dx$, Also $db=e^{-x}$, $b=-e^{-x}$ We have $$ -x^n e^{-x} + n\int x^{n-1}e^{-x} dx$$  2nd: let $a=x^{n-1}, da= (n-1)x^{n-2}, db= e^{-x}, b= -e^{-x}$ We have $$-x^n e^{-x} + n\left[x^{n-1}(-e^{-x}) - \int(n-1)x^{n-2}\cdot -e^{-x}\right]$$  How would you find the general form? What would it be? Fundamental Theorem of Algebra - an elementary complex analysis proof? We begin by assuming that a non-constant complex polynomial $$p(z)=a_n z^n+a_{n-1}z^{n-1}+...+a_1 z+a_0,$$ where $a_0 \neq 0$, doesn't vanish in $\mathbb{C}$. Therefore $1/p$ is also an analytical function everywhere. Note that $(p(z)-a_0)/z$ is a polynomial and therefore, due to Cauchy's theorem, the following integral must be zero.  $$\int_{S_r^1}\frac{(p(z)-a_0)/z}{p(z)}dz=\int_{S_r^1}\frac{a_nz^{n-1}+a_{n-1}z^{n-2}+...+a_1}{a_nz^n+a_{n-1}z^{n-1}+...+a_1 z+a_0}dz=0.$$  On the other hand  $$\int_{S_r^1}\frac{a_nz^{n-1}+a_{n-1}z^{n-2}+...+a_1}{a_nz^n+a_{n-1}z^{n-1}+...+a_1 z+a_0}dz$$  $$=\int_{0}^{2\pi}\frac{a_n(re^{i\theta})^{n-1}+a_{n-1}(re^{i\theta})^{n-2}+...+a_1}{a_n(re^{\theta})^n+a_{n-1}(re^{i\theta})^{n-1}+...+a_1 (re^{i\theta})+a_0}(ire^{i\theta})d\theta$$  $$=\int_{0}^{2\pi}i d\theta - \int_{0}^{2\pi}\frac{a_0 i}{a_n(re^{i\theta})^n+a_{n-1}(re^{i\theta})^{n-1}+...+a_1 (re^{i\theta})+a_0}d\theta$$ $$=2\pi i -\int_{0}^{2\pi}\frac{a_0i}{p(re^{i\theta})}d\theta.$$  Let $r \rightarrow \infty$ and the integral approaches value $2\pi i$ - a contradiction. Therefore $1/p$ can't be entire and $p$ must vanish somewhere in the complex plane.  EDIT: I have changed this post and deleted the idea that the integral $\int_{\partial D_r}\frac{(p(z)-a_0)/z}{p(z)}dz=0$ could be evaluated with the fundamental theorem of calculus. Now, as it stands, this proof is essentially the same as the one that Mr. José Carlos Santos points out in his comment. How to retrieve checkboxes values in jQuery Friendly error page to replace WSOD This should be the easiest thing to do, but for some reason I just can't get it done.  I'm trying to get a friendly static error page to replace nasty 500 scenarios. For now I'm just trying to replicate a 500 situation on my local machine (Drupal 7 running on MAMP) by throwing in some crap characters on the top of my template.php in my theme, which does trigger a 500 situation, but for some reason the ErrorDocument directive in my .htaccess or Apache config file has no effect.  What I'm doing is quite simply this:  ErrorDocument 500 /500.html   And I have the simplest ever static html-page in the root of my site with the name of 500.html.  Still, when I intentionally break template.php, I get the dreaded White Screen Of Death instead of my nice friendly error page.  What am I doing wrong here? I've done this a billion times in non-Drupal setups but just can't get my head around this one. I am beginning with Abstract Algebra and I'm trying to understand Lagrange's Theorem. The theorem reads      For any finite group $G$, the order of every subgroup $H$ of $G$ should divide the order of $G$.   It seems simple and I've used it to solve some exercices but I believe I'm missing the essence of it. Is there an example that can help me understand it better, or visualize it? Is there a geometric interpretation?