Есть у меня такая конструкция...
try
....
MyADOSP.ExecProc;
except
CheckADOError ( MyADOSP.Connection);
end;
В CheckADOError написано примерно следующее
Case ADOConnection.Errors[i].NativeError of
170, 207: Str := 'Неправильно записан SQL оператор';
229: Str := 'Вы не имеете прав для выполнения этой операции';
233, 515: Str := 'Не заполнено одно из полей';
547: Str := 'Нарушение ссылочной целостности';
2627, 2601: Str := 'Нарушение уникальности записи';
50000: Str := ADOConnection.Errors[i].Description;
...
end;Т.е. допустим в ХП я втавляю в таблицу новую запись с ключом, который уже есть. В результате пользователь увидит "Нарушение уникальности записи".
Причем в какой бы справочник он не вставлял это, все равно бутет одно и тоже сообщение, т.к везде ХП вызываются так, как указано выше.
Собственно вопрос. Как народ делает обработку таких ошибок? Заморачивается ли для каждого объета выводить что-то более понятное типа "Пользователь с таким таб номером уже есть", "Такой инвентарный номер уже есть", если да, то как покрасивей это реализовать?