Re: Прошу помощи в реализации проекта

inter1292

Настройки SMTP есть, как закрепить их в форме что бы каждый раз не вводит?

Проще всего настройки прописать в скрипте, тогда не будет необходимости из закреплять на форме.

например:

SendMail('smtp.mail.ru', 'login', 'password', 465, 'yourmail@mail.ru', 'tomail@gmail.com', 'Тема письма', 'Сообщение', '');

также для корректной работы с почтовым сервером mail.ru пожалуйста скачайте снова последнюю версию программы, добавил поддержку SSL, которая требует данный SMTP сервер (как и многие другие )
http://myvisualdatabase.com/thank_you_f … ading.html

Dmitry.

Re: Прошу помощи в реализации проекта

Здраствуйте Дмитрий! И снова у меня проблема, немогу сделать зависимое поле в форме frmReestrVidmovu (поле ComboBox1 зависит от поля cbAdvokat). И подскажите пожалуйста как сделать чтобы данные введенные в  frmReestrVidmovu автоматично отправлялись на указаный в ComboBox1 електронный адрес? Возножно ли это сделать? Огромное списибо за столь прекрасную программу!!!

Post's attachments

Attachment icon kontrol.rar 46.42 kb, 426 downloads since 2015-07-26 

Re: Прошу помощи в реализации проекта

Создайте событие OnAfterClick для кнопки "Зареєструвати відмову"

procedure frmReestrVidmovu_Button2_OnAfterClick (Sender: string);
var
    email,msg: string;
begin
    // узнаем email выбранного адвоката в cbAdvokat    
    email := SQLExecute('SELECT email FROM Rejestr_advokatov WHERE id='+frmReestrVidmovu.cbAdvokat.sqlValue);

    // если e-mail есть, то формируем сообщение и отправляем
    if email <>'' then 
    begin
        msg := 'Дата відмови: ' + DateToStr(frmReestrVidmovu.DateTimePicker1.DateTime)+#13;
        msg := msg + 'Час відмови: ' + TimeToStr(frmReestrVidmovu.DateTimePicker2.DateTime)+#13;
        msg := msg + 'Реєстраційний номер відмови: '+ frmReestrVidmovu.edIdYear.Text+#13;
        msg := msg + 'Орган повідомлення' + frmReestrVidmovu.ComboBox3.Text;
        SendMail('smtp.mail.ru', 'login', 'password', 465, 'yourmail@mail.ru', 'tomail@gmail.com', 'Тема письма', msg, '');
    end;

end;

нет необходимости в ComboBox1 на форме.

Dmitry.

29 (edited by inter1292 2015-07-27 11:48:29)

Re: Прошу помощи в реализации проекта

DriveSoft wrote:

Создайте событие OnAfterClick для кнопки "Зареєструвати відмову"

procedure frmReestrVidmovu_Button2_OnAfterClick (Sender: string);
var
    email,msg: string;
begin
    // узнаем email выбранного адвоката в cbAdvokat    
    email := SQLExecute('SELECT email FROM Rejestr_advokatov WHERE id='+frmReestrVidmovu.cbAdvokat.sqlValue);

    // если e-mail есть, то формируем сообщение и отправляем
    if email <>'' then 
    begin
        msg := 'Дата відмови: ' + DateToStr(frmReestrVidmovu.DateTimePicker1.DateTime)+#13;
        msg := msg + 'Час відмови: ' + TimeToStr(frmReestrVidmovu.DateTimePicker2.DateTime)+#13;
        msg := msg + 'Реєстраційний номер відмови: '+ frmReestrVidmovu.edIdYear.Text+#13;
        msg := msg + 'Орган повідомлення' + frmReestrVidmovu.ComboBox3.Text;
        SendMail('smtp.mail.ru', 'login', 'password', 465, 'yourmail@mail.ru', 'tomail@gmail.com', 'Тема письма', msg, '');
    end;

end;

нет необходимости в ComboBox1 на форме.

Всё сделал как вы написали, но постоянно выдает таймаут подлючения и начала глючить кнопка ввода телефона на форме frmReestrVidmovu (кнопка "+" без названия, под гридом).

Re: Прошу помощи в реализации проекта

Не совсем понял, какой таймаут?

Dmitry.

Re: Прошу помощи в реализации проекта

При нажатии кнопки "+" и при реестрации отказа(

Post's attachments

Attachment icon Pri_najatie_+.png 16.7 kb, 225 downloads since 2015-07-27 

Re: Прошу помощи в реализации проекта

Данный таймаут говорит о том, что при попытке отправки емейла не удалось соединиться с сервером, проверьте ваши настройки SMTP сервера в функции SendMail, также возможно фаервол на компьютере блокирует соединение.

Dmitry.

Re: Прошу помощи в реализации проекта

DriveSoft wrote:

Данный таймаут говорит о том, что при попытке отправки емейла не удалось соединиться с сервером, проверьте ваши настройки SMTP сервера в функции SendMail, также возможно фаервол на компьютере блокирует соединение.

SMTP настроил но он отправляет дважды емейл первый раз перед добавлением номера, а второй раз после регистрации отказа. Как можно ето исправить?

И подскажите как бороться из крякозябрами в сообщении? (Скриншот прилагаю)

Post's attachments

Attachment icon Krakoziabru.png 15.72 kb, 227 downloads since 2015-07-27 

Re: Прошу помощи в реализации проекта

inter1292
Поправил кодировку, скачайте пожалуйста бета версию 1.53
https://www.dropbox.com/s/x8fmbj7mycf0u … 3.zip?dl=0

Dmitry.

Re: Прошу помощи в реализации проекта

DriveSoft wrote:

inter1292
Поправил кодировку, скачайте пожалуйста бета версию 1.53
https://www.dropbox.com/s/x8fmbj7mycf0u … 3.zip?dl=0

Из кодировкой всё ОК, спасибо, но остался баг из задваиванием отправки писем (первый раз перед добавлением номера, а второй раз после регистрации отказа) форма frmReestrVidmovu, кнопка Button2 и Button6.

Re: Прошу помощи в реализации проекта

inter1292
Дело в том, что перед добавлением номера, автоматически нажимается кнопка "Сохранить запись", т.к. номер не может быть добавлен без сохранения родительской записи. Поэтому и срабатывает событие OnAfterClick


поэтому можно организовать отправку E-mail отдельной кнопкой, либо скачайте проект, поправил чтобы такого не происходило.

Post's attachments

Attachment icon kontrol_fixed.zip 68.13 kb, 396 downloads since 2015-07-28 

Dmitry.