Skip to forum content
My Visual Database
A Simple Solution for Creating Databases
You are not logged in. Please login or register.
Active topics Unanswered topics
Search options
Добрый вечер! Подскажите как можно сделать проверку на дубликаты? Чтобы если такая запись уже есть в БД то ее нельзя было повторно добавить?
Добавил такой код:
function CheckDublicate (Action, sTable, sField, sValue: string; id: integer;): boolean;
var
s: string;
sIdSQL: string;
arrFields: array of string;
arrValues: array of string;
sWhere: string;
i,c: integer;
begin
result := False;
arrFields := SplitString(sField, ';');
arrValues := SplitString(sValue, ';');
if Length(arrFields) <> Length(arrFields) then exit;
sWhere := '';
c := Length(arrFields)-1;
for i := 0 to c do
begin
if arrValues[i] <> 'NULL' then
sWhere := sWhere + arrFields[i]+' LIKE ' + arrValues[i] + ' AND '
else sWhere := sWhere + arrFields[i]+' IS NULL AND '
end;
if sWhere<>'' then SetLength(sWhere, Length(sWhere)-4);
if Action = 'NewRecord' then
begin
s := SQLExecute ('SELECT Count(*) FROM '+sTable+' WHERE '+sWhere);
if StrToInt(s) > 0 then result := True;
end;
if Action = 'ShowRecord' then
begin
if id <> -1 then sIdSQL := ' AND (id <> '+ IntToStr(id) +')';
s := SQLExecute ('SELECT Count(*) FROM '+sTable+' WHERE ('+ sWhere +') ' + sIdSQL);
if StrToInt(s) > 0 then result := True;
end;
end;
procedure frmRegDoruchenia_Button4_OnClick (Sender: string; var Cancel: boolean);
var
sFields, sValues: string;
begin
sFields := 'NumberDoruchenia;DataDoruchenia';
sValues := frmRegDoruchenia.Edit1.sqlValue+';'+frmRegDoruchenia.DateTimePicker1.sqlDate;
if CheckDublicate(frmRegDoruchenia.dbAction, 'Doruchenia', sFields, sValues, frmRegDoruchenia.Button4.dbGeneralTableId) then
begin
ShowMessage('Доручення з таким номером вже зареєстровано!');
Cancel := True;
end;
end;
но он у меня не работает. База данных на MySQL
Скажите пожалуйста как можно сделать автообновление для своего проекта?
Из кодировкой всё ОК, спасибо, но остался баг из задваиванием отправки писем (первый раз перед добавлением номера, а второй раз после регистрации отказа) форма frmReestrVidmovu, кнопка Button2 и Button6.
DriveSoft wrote:Данный таймаут говорит о том, что при попытке отправки емейла не удалось соединиться с сервером, проверьте ваши настройки SMTP сервера в функции SendMail, также возможно фаервол на компьютере блокирует соединение.
SMTP настроил но он отправляет дважды емейл первый раз перед добавлением номера, а второй раз после регистрации отказа. Как можно ето исправить?
И подскажите как бороться из крякозябрами в сообщении? (Скриншот прилагаю)
При нажатии кнопки "+" и при реестрации отказа(
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 (кнопка "+" без названия, под гридом).
Здраствуйте Дмитрий! И снова у меня проблема, немогу сделать зависимое поле в форме frmReestrVidmovu (поле ComboBox1 зависит от поля cbAdvokat). И подскажите пожалуйста как сделать чтобы данные введенные в frmReestrVidmovu автоматично отправлялись на указаный в ComboBox1 електронный адрес? Возножно ли это сделать? Огромное списибо за столь прекрасную программу!!!
DriveSoft wrote:inter1292 wrote:Доброго времени суток! Как можно сделать настрйки почтовика поумолчании и скрытную отправку почты на выбраный автоматически адрес??? Заранее большое спасибо!
Приветствую,
чтоб вы имеете ввиду под настройками по умолчанию?
вам необходим SMTP сервер для отправки e-mail сообщений, обычно каждый почтовый сервер предоставляет такой доступ, например тот же mail.ru
http://help.mail.ru/mail-help/mailer/popsmtp
Настройки SMTP есть, как закрепить их в форме что бы каждый раз не вводит?
Доброго времени суток! Подскажите как можно сделать настрйки почтовика по-умолчании и скрытную отправку почты на выбраный автоматически адрес??? Заранее большое спасибо!
DriveSoft wrote:inter1292 wrote:Уважаемый DriveSoft подскажите пожалуйста как можно реализовать отправку электронной почты адвокату (у каждого своя электронная почта) из уведомлением о внесение его в реестр отказов, при нажатие кнопки "Зареєструвати відмову" и если да, то как сделать настраиваемый шаблон сообщения?
У вас есть доступ к SMTP серверу для отправки E-mail сообщений?
Нужен обязательно свой смтп или имеется в виду какойто почтовый сервер?
Уважаемый DriveSoft подскажите пожалуйста как можно реализовать отправку электронной почты адвокату (у каждого своя электронная почта) из уведомлением о внесение его в реестр отказов, при нажатие кнопки "Зареєструвати відмову" и если да, то как сделать настраиваемый шаблон сообщения?
DriveSoft wrote:inter1292
но у меня нет данного отчета, чтобы я смог исправить его, приложите последнюю версию вашего проекта.
DriveSoft wrote:inter1292
К сожалению не вижу в отчете задваивания заголовков, можно скрин?
DriveSoft wrote:inter1292 wrote:форма frmChoice, кнопка Роздрукувати звіт далі форма frmZvit кнопка Сформувати журнал відмов
Готово.
Спасибо за помощь, но немогу убрать задваивание зоголовка в данном отчете! Помогите пожайлуста!
форма frmChoice, кнопка Роздрукувати звіт далі форма frmZvit кнопка Сформувати журнал відмов
Помогите пожалуйста из формированием отчета!
Как сделать что бы в отчете не дублировались поля, а выводилась информация только та что внесенная в форме frmJurnal (таблица Jurnal)?
Отчет - JurnalVidmov.fr3
Огромное спасибо за помощь! Сам бы не додумался!
Программа просто супер!
Что бы в форме frmReestrVidmovu в поле ComboBox1 выбирался адвокат, а в поле ComboBox2 можно было выбрать номер телефона принадлежащий даному адвокату на который был осуществлем звонок (таких номеров может быть несколько), и запись всех етих данных в базу с последюющим просмотром через форму frmJurnal.
Форма frmReestrVidmovu, что бы при выборе фамилии адвоката можно было выбрать от 1 до N-го количества записаных рание номеров, а в случае отсутвствие телефона - добавить его.
P.S. (login - almin? pass - admin)
Немогу реализовать что бы при реестрации отказза адвоката можна было выбрать несколько телефонов и в случае отсутствия такого добавить новый. Прошу Вашей помощи в реализации даной задумки)
Posts found: 21