Отправить письмо только один раз, когда флажок обновляется с помощью хранимой процедуры - PullRequest
0 голосов
/ 04 октября 2018

У меня есть хранимая процедура, которая уведомляет получателей по электронной почте об обновлении формы.Когда флажок установлен в форме, я хотел бы отправить его в определенный отдел.Это работает нормально.Проблема в том, что когда этот отдел завершает свою задачу, они устанавливают другой флажок, который уведомляет следующий отдел и так далее.Проблема в том, что запись обновляется, и по-прежнему отмечается первый флажок, который дважды отправляет электронное письмо первому отделу.Есть ли способ, которым я могу только отправить электронное письмо каждому отделу только один раз?Ниже то, что я использую в своей хранимой процедуре для логики.

IF @HRApproval = 1
BEGIN
    DECLARE @EmailAdd NVARCHAR(100);
    DECLARE @Body NVARCHAR(2000) = '';
    DECLARE @Subject NVARCHAR(250) = '';

    SET @Body = @Body + '<p>New Employee Request Form has been approved'
    SET @Body = @Body + '<br /><p><a href="titleofwebpage.aspx?nhId=' + CAST(@IDNumber AS NVARCHAR(255)) + '">Link to NER</a></p>';

    EXEC msdb.dbo.sp_send_dbmail 
              @profile_name = 'MainProfile',
              @recipients = 'emailaddress',
              @from_address = 'emailaddress',
              @subject = @Subject,
              @body_format = 'HTML',
              @body = @Body;
END
...