Topic: Проверка базы на условие

Добрый день!
Помогите на примере простого справочника решить следующую задачу:
При открытии формы нужно проверять базу на наличие хоть одной записи где поле ФИО = Иванов и поле Адрес = null (пусто).
Если такая запись есть то на форме компонент Кнопка становится видимой, и наоборот.
Спасибо.

Re: Проверка базы на условие

Petr wrote:

Добрый день!
Помогите на примере простого справочника решить следующую задачу:
При открытии формы нужно проверять базу на наличие хоть одной записи где поле ФИО = Иванов и поле Адрес = null (пусто).
Если такая запись есть то на форме компонент Кнопка становится видимой, и наоборот.
Спасибо.

if SQLExecute('SELECT count(id) FROM status') = '0' then // если записей нет
     begin
         //Ваши операторы
     end;
     UpdateDatabase('status'); // обновление БД

Re: Проверка базы на условие

sibprogsistem спасибо!
разобрался, работает!
Единственное с чем не справился: не могу в условии фильтра использовать пустые поля заполняемые через Combobox.
PostavsikName is NULL игнорирует. Воспринимает только конкретные значения(((
____________________________________________________________________________
procedure Pusk_OnMouseEnter (Sender: TObject);
begin
      if SQLExecute('SELECT count(Zayvka.id) FROM Zayvka JOIN Ispolnitel ON Zayvka.id_Ispolnitel=Ispolnitel.id JOIN Postavsik ON
                               Zayvka.id_Postavsik=Postavsik.id WHERE IspolnitelName="Горловецкий" AND PostavsikName="Атомпром"')='0'
      then
        begin
          Pusk.Edit1.Text := '';
        end
      else
        begin
          Pusk.Edit1.Text := 'есть заявки на согласовании';
        end;
      UpdateDatabase('Zayvka');
end;

Re: Проверка базы на условие

Petr wrote:

не могу в условии фильтра использовать пустые поля заполняемые через Combobox.

если я правильно понял вопрос, то после условия фильтра ComboBox нужно сделать обновление

Form1.ComboBox1.dbUpdate;

Re: Проверка базы на условие

уточню: мне нужно определить есть ли в базе Zayavka записи где IspolnitelName="Горловецкий" и PostavsikName is null.
IspolnitelName и PostavsikName беру из справочников.
Я думал что если при создании новой записи в Combobox ничего не выбираешь то поле остаётся пустым.
Но условие PostavsikName is null при выборке не работает (не воспринимается).
Если в выборке использовать конкретное значение (PostavsikName="Атомпром"), как выше в процедуре, то всё работает.

Re: Проверка базы на условие

создайте костыль  с помощью текстового поля в который помещайте выбранный id ComboBox  а если запись не выбрана то по условию уcтаналивайте в текстовое поле "0"
за место ComboBox в сохранении записи используйте текстовое поле

Re: Проверка базы на условие

да, это я уже сделал) не знал только что это костыль называется)))
просто хотел разобраться что не так я с форматами делаю.
ещё раз спасибо!!!