База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Почему обработка Excel не работает на типовой конфигурации 1С, а на самописных р
- В этой теме 1 ответ, 2 участника, последнее обновление 1 неделя назад сделано
Odin — Одинэсник.
-
АвторСообщения
-
-
21 октября 2025 в 15:15 #33788
OdineskiУчастникесть такая проблема: сделал обработку, которая читает файлы, в частности эксель. Когда запускаю её на типовой конфигурации, нифига не работает. Просто не заходит в процедуру чтения. Когда запускаю обработку на пустой конфигурации или иной самописной, нетиповой, то всё нормально работает. Что за фигня? Попробовал отладчиком пробежать и заметил, что на типовой действие уходит в какие-то служебные процедуры и просто перескакивает через распознавание
-
21 октября 2025 в 15:15 #33789
Odin — ОдинэсникУчастникПричина, по которой обработка не заходит в процедуру чтения Excel-файлов на типовой конфигурации, а на пустой или самописной — работает нормально, связана с особенностями работы типовых конфигураций 1С и их встроенной системой безопасности и обработкой событий.
Основные причины и рекомендации:
1. **Обработка перехватывается системой безопасности или встроенными обработчиками типовой конфигурации**
В типовых конфигурациях часто реализованы дополнительные механизмы контроля и фильтрации запуска обработок, особенно если они работают с внешними файлами или COM-объектами. Это может приводить к тому, что вызов вашей процедуры чтения перехватывается или блокируется, либо происходит переход в служебные процедуры, минуя ваш код.2. **Обработка запускается в другом контексте или с другими правами**
В типовой конфигурации могут быть ограничения на запуск внешних обработок или на доступ к COM-объектам (Excel.Application). Например, если обработка запускается в фоновом режиме или от имени пользователя с ограниченными правами, то COM-объект может не создаваться, и код просто пропускается.3. **Конфликт имен или объектов**
В типовой конфигурации могут быть объекты, процедуры или модули с такими же именами, что и в вашей обработке, и из-за этого происходит конфликт, и вызывается не ваш код, а системный.4. **Особенности запуска и контекста обработки**
В типовой конфигурации обработка может запускаться в другом режиме (например, в режиме ограниченного доступа, или с отключённым доступом к внешним ресурсам), что приводит к тому, что код чтения Excel не выполняется.5. **Отладка и трассировка**
При отладке в типовой конфигурации вы видите переход в служебные процедуры — это может быть механизм защиты или логирования типовой конфигурации, который перехватывает вызовы.—
### Что делать?
— **Проверьте права пользователя и режим запуска обработки**
Убедитесь, что обработка запускается от пользователя с достаточными правами, и не в фоновом режиме, если используете COM-объекты.— **Используйте внешние обработки, зарегистрированные в конфигурации**
Если обработка внешняя, попробуйте зарегистрировать её в конфигурации через «Внешние обработки» и запускать оттуда.— **Проверьте уникальность имен процедур и объектов**
Переименуйте процедуры, чтобы исключить конфликты с типовой конфигурацией.— **Логируйте вход в процедуру**
Добавьте в начало процедуры чтения запись в журнал регистрации или вывод сообщения, чтобы точно понять, вызывается ли она.— **Используйте альтернативные методы чтения Excel**
Если COM-объект Excel не создаётся, попробуйте использовать ADO или другие методы чтения Excel, которые менее зависимы от контекста.— **Проверьте настройки безопасности и политики запуска**
В типовой конфигурации могут быть ограничения на использование COM-объектов, особенно на сервере.— **Обратитесь к документации и сообществу**
Часто типовые конфигурации имеют свои особенности, описанные в документации или на форумах (Infostart, 1C:Forum).—
### Итог
Типовая конфигурация 1С имеет встроенные механизмы безопасности и обработки, которые могут блокировать или перехватывать вызовы внешних обработок, особенно при работе с COM-объектами Excel. В пустой или самописной конфигурации таких ограничений нет, поэтому код работает нормально.
Рекомендую проверить права, режим запуска, уникальность имен, а также использовать логирование для точного определения точки входа в процедуру.
Рекомендую посмотреть здесь:
https://infostart.ru/public/196323/
https://infostart.ru/public/551404/
https://infostart.ru/public/20090/
-
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.