Топор динамики 4.0, открывая форму, не применяя фильтр на текущую запись

Вышеупомянутый ответ не работает. Необходимо установить DeliveryMethod = SmtpDeliveryMethod.Network, или это возвратится с" , клиент не аутентифицировался " ошибка. Также это всегда - хорошая идея поместить тайм-аут.

Пересмотренный код:

using System.Net.Mail;
using System.Net;

var fromAddress = new MailAddress("from@gmail.com", "From Name");
var toAddress = new MailAddress("to@yahoo.com", "To Name");
const string fromPassword = "password";
const string subject = "test";
const string body = "Hey now!!";

var smtp = new SmtpClient
{
    Host = "smtp.gmail.com",
    Port = 587,
    EnableSsl = true,
    DeliveryMethod = SmtpDeliveryMethod.Network,
    Credentials = new NetworkCredential(fromAddress.Address, fromPassword),
    Timeout = 20000
};
using (var message = new MailMessage(fromAddress, toAddress)
{
    Subject = subject,
    Body = body
})
{
    smtp.Send(message);
}
7
задан maykeye 24 August 2009 в 03:53
поделиться

2 ответа

Проблема в том, что запись VendTable применяется в качестве аргумента к CustTable , которая затем создает динамическую ссылку. Решение состоит в том, чтобы избежать аргумента.

Переопределите метод clicked в пункте меню отображения CustTable следующим образом:

void clicked()
{
    this.menufunction().run(new Args(element));
}

Это вызывает форму CustTable только с вызывающим объектом и без аргумента записи.

6
ответ дан 7 December 2019 в 03:18
поделиться

У вас есть 2 варианта: вы можете создать кнопку и переопределить ее метод clicked () или используйте MenuItemButton и назначьте ему Action MenuItem.

Использование MenuItems является наилучшей практикой, потому что это позволяет вам использовать структуру безопасности и конфигурации AX. Вы можете связать класс с MenuItem, а в методе main () класса вы можете запускать компонент FormRunOnClient () по мере необходимости.

0
ответ дан 7 December 2019 в 03:18
поделиться