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;