Symptoms
We are facing one issue regarding approval email notification. We noticed its working for one process and not working for another process.
Then checked in Process overview and noticed the User AD account is showing different for 2 processes. Actual User AD account : denallixusername.tan1. but in k2 workspace it showing different AD accounts. In one process its denallixusername.tan1 (which is sending approver email) and other process its denallixusername.tan (which is not sending approver email ).
Diagnoses
1. You are using email address to set the destination user. While this is allowed in K2, we do not recommend our customers to do this.
2. The reason for this is how K2 actually resolves the destination user from the email address you specified.
3. In your case, denallixusername.tan1's email address is username.tan@denallix.com. When you passed that in as destination user, K2 will use the portion of the email before the '@' symbol, and append it to your domain, so the destination user becomes denallixusername.tan, not denallixusername.tan1.
4. Your other users may not have this issue because their email addresses most likely resolve to the correct domain user name.
Resolution
Since you are already using a data field to store your approver's email, you can make a modification to your destination rule in your workflow so that the email address resolve to the correct username.
a. On the Destination Rules, open the Context Browser > Environment > SmartObject Server(s) > SmartObject Server to locate your AD User smartobject. If you do not have a AD User smartobject, you can create one easily through the SmartObject Service Tester.
b. Drag this to the Destination Users field and use the created data field as the input parameter
c. After that, you will have to save and deploy your workflow again.