K V M
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору M_Volkov Цитата: Выполнение любой процедуры, функции, или просто команды требует ресурсов системы. Поэтому, чем короче код, тем он эффективней, но не всегда. Например, нужно какому-то реквизиту нового документа при создании присваивать значения по умолчанию. Но не у всех видов документа он есть. Тогда, либо писать код проверки наличия этого реквизита, либо использовать Попытку-Исключение. Если речь об одном реквизите, то последнее предпочтительней. Если речь о группе реквизитов, например взаиморасчетных: Контрагент, договор, валюта... то эффективней сделать одну проверку, чем кучу Попыток. А если речь об общих реквизитах, то не того, ни другого делать не следует... Все по ситуации, пишутся различные варианты кода, делаются замеры производительности. | Исключения делаються при работе со сканером штрих-кода. 1С вылетала при работе. Методом проб и ошибок было выявлено что валила 1С dll-ка сканера ШК. Было решено все процедуры где идет работа с сканером ШК пустить через Исключения. Конечно такое решение не помогло. Помогла замена dll-ки на другую. Но потом начали жаловаться не на вылеты а на зависания 1С (окно 1С стает полностью белым). Паралельно заменили dll на похожей конфигурации, где были аналогичные проблемы, и которая впринципе отличаеться от проблемной только тем что на ней работает меньше народу, и сама база будет поменьше. На ней все работает теперь как часы. В итоге: было: 2 базы в которых периодически (как минимум 1-2 раза в день) вылетала 1С. сделано: замена dll сканера (на scanopos версия 8.1.4 вроде), и на одной конфигурации добавлены исключения в каждую функцию где делаеться что-нибуть со сканером. сейчас имеем: там где только dll заменили - все хорошо, где дописывали исключения - периодические зависания. Может ли такое быть от исключений или нет? Конфигурацию править буду не я, потому сначала спрашиваю. Базы работают на разных компьютерах. Все в терминальном режиме. |