5 / 5 / 2
Регистрация: 25.10.2015
Сообщений: 236
1

Подскажите, как сделать проверку, к примеру, существует ли такая компания уже или нет?

01.02.2016, 21:46. Показов 1094. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Подскажите пожалуйста, как сделать проверку к примеру существует ли такая компания уже или нет?

Пример:

1) МБА - МБА = Ошибка, такая компания уже существует
2) МБА - МБН = Все, ОК!

Сделал на набор данных что то вроде набор данных (Компании) = Набор данных (Компании), но выяснилось что делать нужно совсем не так. Подскажите пожалуйста как правильно такие вещи делать?

Если я не ошибаюсь то есть поиск по набору данных стандартная функция "Локайт" но могу путать.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.02.2016, 21:46
Ответы с готовыми решениями:

Как сделать проверку было ли уже такое имя или нет?
есть textbox и по вводу в него имени он проверяет есть ли такое имя в словаре если есть он выводит...

Подскажите возможна ли такая конфигурация или как лучше сделать
Имеем два офиса подключенных к одному провайдеру. Требуется настроить между ними VPN-туннель и...

А существует ли такая программа? Или кто может сделать?
Нужна программа следущего принципа действия: на сайте объявлений есть предложения о продаже...

Возможно ли сделать как-то проверку было ли изменение экрана или нет?
Подскажите возможно ли сделать как то проверку было ли изменение экрана или нет ...

10
5394 / 4322 / 1060
Регистрация: 29.08.2013
Сообщений: 27,128
Записей в блоге: 3
01.02.2016, 22:25 2
Delphi
1
2
3
query.sql.text:='SELECT company_name FROM table WHERE company_name='+quotedstr('AAA')
query.active:=true;
if query.recordcount>0 then showmessage('Такая или такие уже есть');
1
5778 / 4521 / 1430
Регистрация: 14.04.2014
Сообщений: 20,143
Записей в блоге: 20
02.02.2016, 06:16 3
если цель - только посчитать, не надо тянуть данные, нужно попросить количество
Delphi
1
2
3
4
query.sql.text:='SELECT count(company_name) as c FROM table WHERE company_name='+quotedstr('AAA')
query.open;
if query.FieldByName('c').asInteger>0 then 
  showmessage('Такая или такие уже есть');
1
5 / 5 / 2
Регистрация: 25.10.2015
Сообщений: 236
02.02.2016, 09:24  [ТС] 4
qwertehok, Если я правильно понимаю то
Delphi
1
quotedstr('AAA')
будет просто напросто проверять нет ли компании ААА? Если я не правильно говорю то пожалуйста расскажите что делает
Delphi
1
quotedstr('AAA')
krapotkin, Нет, не надо считать количество, нужно просто совпадение найти.
0
5394 / 4322 / 1060
Регистрация: 29.08.2013
Сообщений: 27,128
Записей в блоге: 3
02.02.2016, 09:26 5
Цитата Сообщение от Пабл0 Посмотреть сообщение
Если я правильно понимаю то
нет

quoted просто заключает текст в кавычки
все дело в запросе который из таблицы вытаскивает нужные вам данные
1
5 / 5 / 2
Регистрация: 25.10.2015
Сообщений: 236
02.02.2016, 11:37  [ТС] 6
qwertehok,

Delphi
1
2
3
4
5
6
procedure TContractRunnerDlg.sCompaniExit(Sender: TObject);
begin
    Gate.qTemp.sql.text:='SELECT Firm FROM ContractFull WHERE Firm='+quotedstr('AAA');
      Gate.qTemp.Active := True;
      if Gate.qTemp.recordcount>0 then showmessage('уже есть такая компания!');
end;
Не срабатывает
0
5394 / 4322 / 1060
Регистрация: 29.08.2013
Сообщений: 27,128
Записей в блоге: 3
02.02.2016, 11:54 7
Цитата Сообщение от Пабл0 Посмотреть сообщение
Не срабатывает

Не по теме:

Летят в самолете Петька и Василий Иванович,
Василий Иванович спрашивает: — Петька, приборы?
Петька отвечает: — 200!
Василий Иванович: — А что 200?
Петька: — А что приборы?

0
5 / 5 / 2
Регистрация: 25.10.2015
Сообщений: 236
02.02.2016, 12:10  [ТС] 8
qwertehok, А как если через хранимую процедуру это сделать ведь?
0
5394 / 4322 / 1060
Регистрация: 29.08.2013
Сообщений: 27,128
Записей в блоге: 3
02.02.2016, 12:24 9
Пабл0, вы сначала запросом это делать научитесь, а потом уже хранимкой

вы так и не писали что не срабатывает
1
5 / 5 / 2
Регистрация: 25.10.2015
Сообщений: 236
02.02.2016, 12:36  [ТС] 10
qwertehok, В запросе я сделал

Delphi
1
2
3
4
5
begin
    Gate.qTemp.sql.text:='SELECT Firm FROM [emg_test0].[dbo].[ContractFull] WHERE Firm=' + sCompani.Text;
      Gate.qTemp.Active := True;
      if Gate.qTemp.recordcount>0 then showmessage('123');
      end;
Тут просто ковычки надо.

Добавлено через 1 минуту
qwertehok, Что то вроде этого.

Delphi
1
WHERE Firm="\' + sCompani.Text";
0
5394 / 4322 / 1060
Регистрация: 29.08.2013
Сообщений: 27,128
Записей в блоге: 3
02.02.2016, 12:56 11
Лучший ответ Сообщение было отмечено Пабл0 как решение

Решение

Delphi
1
2
3
4
5
begin
   Gate.qTemp.sql.text:='SELECT Firm FROM [emg_test0].[dbo].[ContractFull] WHERE Firm=''' + sCompani.Text+'''';
   Gate.qTemp.Active := True;
   if Gate.qTemp.recordcount>0 then showmessage('123');
      end;
1
02.02.2016, 12:56
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.02.2016, 12:56
Помогаю со студенческими работами здесь

Как сделать проверку на то, открыт ли документ Word (Excel) или нет?
всем привет. как мне сделать проверку на то открыт ли документ(любой не конкретный) Word(Exel) или...

Как сделать в данной программе чтобы она определяла существует ли книга в данном году или нет?
Как сделать в данной программе что бы она определяла существует ли книга в данном году или нет то...

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

Сделать запрос в картридер на проверку вставлена карта в него или нет
Заранее извиняюсь, может не туда пишу. Хочу сделать запрос в карт ридер на проверку вставлена карта...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru