Это вариант не очень подходит, так как в данном случае точно известно, где может в процедуре произойти исключение, и это место можно заключить в блок Try...Catch. Но если процедура будет сложной, то угадать, где же выскочит исключение - нельзя. Поэтому и хотелось бы перехватывать, как сказать на входе, всё возможные исключения...