Hola de nuevo aqui vuelvo con otro problema

, estoy tratando de comprobar si los datos entre dos campos son iguales segun lo que digita el usuario para poder avisarle al usuario que esos datos ya existen, aqui codigo:
Código Delphi
[-]procedure TFTramite.BitBtn1Click(Sender: TObject);
begin
if MessageDlg('¿Está seguro que desea Guardar?', mtConfirmation,
[mbYes, mbNo], 0) = mrYes then
begin
if (dbModal.Text=ZTramite.FieldByName('tipo_tra').Value) and (dbTramite.Text=ZTramite.FieldByName('tramite_no').Value) then
begin
ShowMessage('Tramite ya exise');
end else begin
If (dbArea.Text = '') OR
(dbModal.Text = '') OR
(dbTramite.Text = '') OR
(dbRubro.Text = '') OR
(dbfechacre.Text = '') OR
(dbRespon.Text = '') OR
(dbfechaent.Text = '') OR
(DBComboBox1.Text = '') OR
(dbStatus.Text = '') then
MessageDlg('Hay Casillas sin Llenar Por Favor Llenarlo',mtError,[mbOK],0)
else
begin
ZTramite.post;
ZTramite.insert;
end;
end;
end;
end;
y lo unico que hace es tirarme el showmessage

, si no me explique muy bien, por favor diganmelo que no tengo ningun problema en explicarlo de nuevo.
Saludos.