Topic: Разъясните по скрипту Tag

frmNote.ComboBox5.Tag := frmNote.ComboBox5.dbItemID;

Если так можно сохранить предыдущие состояние id, а можно и текст так проверять на изменение...

frmNote.Memo1.Tag := frmNote.Memo1.Text;

Хочу сделать условие, чтоб уменьшить кол-во обновлений базы, если содержимое не менялось.

Re: Разъясните по скрипту Tag

Для текста используйте свойство TagString

frmNote.Memo1.TagString := frmNote.Memo1.Text;
Dmitry.

Re: Разъясните по скрипту Tag

Что-то не получается...

procedure frmNote_Button17_OnClick (Sender: TObject; var Cancel: boolean);
var
    cId : string;
    tNameMaster : string = IntToStr(frmNote.ComboBox5.DbItemID);
begin
    cId:=SQLEXecute('SELECT id FROM request WHERE id='+frmMain.TableGrid1.sqlValue);

    //Запомнить текст для дальнешего сравнения
    frmNote.Memo2.TagString := frmNote.Memo2.Text;
    frmNote.Edit16.TagString := frmNote.Edit16.Text;
    frmNote.Edit17.TagString := frmNote.Edit17.Text;

    //Проверка на заполнение полей
    if (tNameMaster='-1') then ShowHint(frmNote.ComboBox5, 'Мастер не выбран') else
    if (frmNote.Memo2.Text='') then ShowHint(frmNote.Memo2, 'Заполните поле') else
    begin
        //Сравнение на изменение текста
        if (frmNote.Memo2.TagString <> frmNote.Memo2.Text) then SQLEXecute('UPDATE request SET repair="'+frmNote.Memo2.Text+'" WHERE id='+cId) else

        if (frmNote.Edit14.Text='Выполнено') or (frmNote.Edit14.Text='Диагностика') then frmNote.Button18.Click else
        begin
            if (frmNote.Edit16.Text='') then ShowHint(frmNote.Edit16, 'Заполните поле') else
            if (frmNote.Edit17.Text='') then ShowHint(frmNote.Edit17, 'Заполните поле') else
            begin
                //Сравнение на изменение текста
                if (frmNote.Edit16.TagString <> frmNote.Edit16.Text) then SQLEXecute('UPDATE request SET price1="'+frmNote.Edit16.Text+'" WHERE id='+cId);
                if (frmNote.Edit17.TagString <> frmNote.Edit17.Text) then
                begin
                    SQLEXecute('UPDATE request SET price2="'+frmNote.Edit17.Text+'" WHERE id='+cId);
                    frmNote.Edit19.Text := frmNote.Edit17.Text;
                end else
                begin
                    frmNote.Button18.Click;
                end;
            end;
        end;
    end;    
end;