Как переопределить действие по электронной почте SalesOrder на экране SO30100

Я пытаюсь настроить электронную почту действия на экране Salesorder, я использую этот код, но он не работает. Не могли бы вы предложить мне мой код и настроить отправку уведомлений в Acumatica. Я использую Acumatica 4.2. Заранее спасибо.

    public CRActivityList<SOOrder>    Activity;

    public PXAction<SOOrder> notification;

    [PXUIField(DisplayName = "Notifications", Visible = false)]
    [PXButton(ImageKey = PX.Web.UI.Sprite.Main.DataEntryF)]
    protected virtual IEnumerable Notification(PXAdapter adapter,
        [PXString] string notificationCD
        )
    {
        foreach (SOOrder order in adapter.Get<SOOrder>())
        {
            if (order.OrderType == "CM")
            {
                ///my function
                EmailNotification.Send_AtNPP(order, "SO301000", "SENDRETURNSO", "[[NoiDung]]", createEmailContent(order));
            }
            yield return order;
        }
        yield return adapter.Get();
    }

person Simon Huynh    schedule 16.12.2014    source источник


Ответы (2)


Какую ошибку вы получаете? Вы пробовали убрать окончательный урожай? Последняя строка может быть

return adapter.Get();
person Chris H    schedule 16.12.2014
comment
Я удалил это, и он не может войти, когда я отлаживаю - person Simon Huynh; 17.12.2014

Я не понимаю, зачем вам нужен порядок возврата урожая, просто сделайте так, как было предложено, и верните адаптер.

foreach (SOOrder order in adapter.Get<SOOrder>())
{
   if (order.OrderType == "CM")
    {
    ///my function
      EmailNotification.Send_AtNPP(order, "SO301000", "SENDRETURNSO", "[[NoiDung]]", createEmailContent(order));
   }
   //yield return order;
}
return adapter.Get();
person xDJR1875    schedule 16.12.2014