Amigo, eu faço dessa maneira:    // FUNÇÕES CAMPOS OBRIGATÓRIOS ----------------------------------- function CampoObg(campo:string; n:integer): string; //Função para verificar uma string begin  if n = 1 then if (campo = '') then result := '- Nacionalidade'; if n = 2 then if (campo = '') then result := '- O. Emissor'; if n = 3 then if (campo = '') then result := '- Naturalidade'; if n = 4 then if (campo = '') then result := '- Nome'; if n = 5 then if (campo = '') then result := '- RG'; if n = 6 then if (campo = '') then result := '- CPF'; if n = 7 then if (campo = '') then result := '- Nascimento'; if n = 8 then if (campo = '') then result := '- Emissão';  end;  // ----------------------------------------------------------------------------- function CampoObg2(campo:boolean; n:integer): string;   //Funçao para boolean begin  if n = 1 then if (FRPessoal.DIDigital.Picture.Graphic.Empty) then result := '- Digital'; if n = 2 then if (FRPessoal.DIFoto.Picture.Graphic.Empty)    then result := '- Foto';  end;  // ----------------------------------------------------------------------------- function CampoObg3(campo,campo2:string; n:integer): string; // funçao para verificação de 2 campos begin  if n = 1 then if (campo = '') or  (campo2 = '') then result := '- Matricula'; if n = 2 then if (campo = '') and (campo2 = '') then result := '- Pai/Mãe';  end;     Verifica e chama a função assim :   if (DBEdit44.Text='')                   or (DECpf.Text='')     or  (DBEdit27.Text='')    or (DeNome.Text='')                  or (DBLookupComboBox9.Text='')    or (DBLookupComboBox6.Text='')       or ((DBEdit30.text='') and (DBEdit31.text=''))    or (DEMatricula.text='')             or (DEDigitoMat.text='')    or (DBEdit45.Text='')                or (DBEdit35.text='')    or (DIFoto.Picture.Graphic.Empty)    or (DIDigital.Picture.Graphic.Empty)     then begin       ShowMessage('Campo(s) obrigatório(s) não preenchido(s):' +#13+  Trim(CampoObg(DBLookupComboBox6.Text,1) +#13+ CampoObg2(DIDigital.Picture.Graphic.Empty,1))    +#13+  Trim(CampoObg(DBLookupComboBox9.Text,2) +#13+ CampoObg2(DIFoto.Picture.Graphic.Empty,2))       +#13+  Trim(CampoObg(DBEdit45.Text,8)          +#13+ CampoObg3(DEMatricula.Text, DEDigitoMat.Text,1)) +#13+  Trim(CampoObg(DBEdit35.text,3)          +#13+ CampoObg3(DBEdit30.text, DBEdit31.text,2))       +#13+  Trim(CampoObg(DBEdit27.Text,7)          +#13+ CampoObg(DBEdit44.Text,5))                       +#13+  Trim(CampoObg(DECpf.Text,6)             +#13+ CampoObg(DeNome.Text,4)));       Exit;     end;