Исправление ошибки доступа к файлу
Во время работы с программами 1С пользователи 1С Бухгалтерия или других типовых конфигураций на базе платформы 1С Предприятие получают сообщение об «Ошибке режима доступа к файлу» либо об «Ошибке совместного доступа к файлу». Это критическая ошибка, которая не позволяет использовать программу в штатном режиме. Но устранить ее достаточно просто не прибегая к услугам 1С-сервисов, которые предоставляют технические консультации по вопросам использования приложений.
Описание ошибки и способ ее устранения
Сама суть ошибки указана в системном сообщение, которое выдает программа. В случае «ошибки режима доступа» имеет место нарушение прав пользователя, прописанных в операционной системе на компьютере. Чаще всего подобное возникает в случае, если база данных была скопирована и подключена, а после запуска на экране появилось сообщение с указанием адреса объекта в локальной сети.
Чтобы исправить права доступна, необходимо открыть окно Свойства файла с базой данных. После этого найти в нем папку «Общий доступ» и проконтролировать сделанные там настройки. Доступ должен быть открыт для текущего пользователя Windows. Причем как на чтение файла, так и на запись изменений в него.
Если база данных находится не в сети, а на локальном компьютере, соответствующие права доступа размещаются на вкладке «Безопасность». Необходимо удостоверится в том, что в правах не отменено разрешение на запись данных в файл.
Кроме того, ошибки могут возникать и по другим причинам:
- Изменение настроек штатного брандмауэра операционной системы или сторонней программы, которая выполняет аналогичные функции;
- Неправильная настройка антивирусных программ, которые могут блокировать сетевые соединения к определенным объектам.
Чтобы устранить проблему, необходимо добавить файл с базой данных в исключения этих приложений, устранив блокировку.
Иногда проблема с программами 1С может быть связана с кэшем. В этом случае в диалоговом окне указывается путь доступа к папке TEMP. Решить проблему помогает удаление файлов из этой папки.
У неопытных пользователей ошибка доступа к файлу может быть обусловлена попыткой запуска сразу двух приложений на базе 1С Предприятие. Например, 1С ЗУП и 1С Бухгалтерия, одна из которых была базовой.
Если попытки справиться с проблемой не привели к положительному результату или у вас появились другие вопросы, связанные с использование программ и обновлением 1С, обращайтесь за помощью к специалистам компании «ГК в Приоритете». Телефоны для связи указаны в разделе «Контакты».
- Permalink
Загрузка файла в хранилище значений через управляемые формы осложняется тем, что реквизит с типом Хранилище значения недоступен в данных формы. То есть работать с ним напрямую не получится.
Начиная с версии 1С:Предприятие 8.3.15, доступна процедура НачатьПомещениеФайлаНаСервер(). Она позволяет с помощью диалога выбрать файл на клиенте и поместить его во Временное хранилище, чтобы потом на сервере поместить файл в Хранилище значения.
Рассмотрим пример работы с этой процедурой.
Во-первых, нам понадобится реквизит управляемой формы АдресВХранилище. Туда будет записан адрес файла во временном хранилище. Этот реквизит мы сможем прочитать и на клиенте, и на сервере.

После этого создаем кнопку, команду и процедуру НаКлиенте, которую вызывает эта кнопка (кнопку можно заменить на другой элемент управления). В процедуре размещаем следующий код:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
&НаКлиенте Процедура ЗагрузитьПодпись(Команда) Фильтр = «Все картинки (*.bmp;*.dib;*.rle;*.jpg;*.jpeg;*.tif;*.gif;*.png;*.ico;*.wmf;*.emf)|*.bmp;*.dib;*.rle;*.jpg;*.jpeg;*.tif;*.gif;*.png;*.ico;*.wmf;*.emf|» + «Формат bmp (*.bmp;*.dib;*.rle)|*.bmp;*.dib;*.rle|» + «Формат JPEG (*.jpg;*.jpeg)|*.jpg;*.jpeg|» + «Формат TIFF (*.tif)|*.tif|» + «Формат GIF (*.gif)|*.gif|» + «Формат PNG (*.png)|*.png|» + «Формат icon (*.ico)|*.ico|» + «Формат метафайл (*.wmf;*.emf)|*.wmf;*.emf|»; Диалог = новый ПараметрыДиалогаПомещенияФайлов(«Выберите файл с подписью», Ложь, Фильтр); Оповещение = новый ОписаниеОповещения(«ПослеЗакрытияДиалогаВыбораПодписи», ЭтаФорма); НачатьПомещениеФайлаНаСервер(Оповещение,,,, Диалог, УникальныйИдентификатор); КонецПроцедуры |
Здесь мы задали фильтр на тип (расширение) файла, в данном случае выбираем картинки всевозможных форматов. После этого создали Диалог помещения файла, где указали заголовок диалогового окна, запретили множественный выбор (второй параметр — Ложь) и установили заранее подготовленный фильтр. Далее создаем Описание оповещения, которое указывает на процедуру в модуле данной формы, которая будет вызвана после помещения файла во временное хранилище. При желании можно отдельными описаниями оповещения указать процедуры, которые будут вызываться в ходе выполнения помещения файла во временное хранилище, а также непосредственно перед помещением.
И, наконец, начинаем помещение файла на сервер. При этом вызывается диалоговое окно выбора файла с теми параметрами, которые мы указали.
Теперь создадим процедуру, которую будем вызывать после завершения помещения файла во временное хранилище:
|
&НаКлиенте Процедура ПослеЗакрытияДиалогаВыбораПодписи (ОписаниеФайла, ДопПараметры) Экспорт Если ОписаниеФайла.ПомещениеФайлаОтменено ТОгда Возврат; КОнецЕсли; АдресВХранилище = ОписаниеФайла.Адрес; КонецПроцедуры |
Как обычно, асинхронный метод НачатьПомещениеФайлаНаСервер() возвращает результат и дополнительные параметры. В качестве результата возвращается переменная с типом ОписаниеФайла. Дополнительные параметры мы в нашем примере не задавали.
В первую очередь проверяем, не была ли отменена процедура помещения файла во временное хранилище. Если была, прерываем дальнейшие действия. Если же все прошло хорошо, то записываем адрес временного хранилища в реквизит формы АдресВХранилище.
Теперь осталось только перед записью объекта получить файл из временного хранилища и поместить его в реквизит с типом ХранилищеЗначения.
|
&НаСервере Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи) Если ЭтоАдресВременногоХранилища(АдресВХранилище) ТОгда ТекущийОбъект.Подпись = новый ХранилищеЗначения(ПолучитьИзВременногоХранилища(АдресВХранилище)); КонецЕсли; КонецПроцедуры |
Используем обработчик события формы ПередЗаписьюНаСервере. Сначала проверяем, является ли содержимое реквизита формы АдресВХранилище адресом временного хранилища. Если да, то стандартным способом получаем файл из временного хранилища и записываем в реквизит. В нашем случае реквизит называется Подпись.
В этой статье мы расскажем об ошибке доступа к файлу 1с. Как решить возникшую проблему, что это за баг и еще немного об этом.
Ошибка доступа к файлу 1C 8.3
«1С: Предприятие» — система программ для автоматизации, улучшения и упрощения деятельности различных сфер компании, начиная от бухгалтерии и заканчивая учетом. 1С: возможности при правильной настройке безграничны . Для предпринимателя — нужно найти хороших программистов.
Нет ни одной программы в современном мире, как бы хороша она не была без ошибок и проблем. Такое случается и с нашим приложением. В ряде случаев виноват в этом криворукий программист. Многие проблемы вы не сможете решить без его участия, но некоторые, вам подсилу и самому.

Причины возникновения
Случается, что люди, которые используют данную прогу сталкиваются с проблемой при запуске программы.
Способы решения
По наименованию явившегося бага поймем что происходит с системой — нет прав для доступа к файлу. Такое случается если юзер создает копию базы и подключает ее. Также ошибка бывает в результате попытки открыть файл по сетевому доступу.
Первостепенное что мы делаем в таком случае — проверяем доступ к файлу. Правая кнопка мыши по файлу -> проверяем стоит ли галочка на «Общий доступ».


Взгляните на права пользователя под которым вы зашли в систему виндоус. У вас должны быть права и на чтение файлов и на запись.

Когда данные к которым нужно получить доступ (база) находится на удаленном (локальном) персональном компьютере — смотрим закладку «Безопасность». В безопасности вы должны убедиться что у пользователя нет запрета на запись.

Предупреждения о проблемах вылазят когда возмущается брандмауэр. Это касается сетевых объектов. Антивирусные программы препятствуют нормальной работе.
Открываем брандмауэр и антивирус и ищем в списке блокируемых программ 1С. Удаляем из списка.

Почистите кеш, ошибки также возникают из-за кеша.
Большой шанс появления ошибки, когда два синонимичных приложения запускаются вместе. К примеру, ЗУП и Бухгалтерия. Если запустить по очереди, проблема исчезнет
Дополнительный способ
Ничего не помогло — воспользуйтесь следующими методами:
Путь к имени файла должен быть допустимым в каталоге отчетов: щелкните вкладку «Вывод». Перейдите на вкладку «Параметры вывода». В поле Имя файла убедитесь, что путь действителен.
Сколько дискового пространства доступно для файла: Откройте Windows Explorer. Выберите Локальный диск (буква диска:), на котором хранится отчет. Щелкните правой кнопкой мыши на локальном диске (буква диска:) и нажмите Свойства. Откроется окно свойств. Проверьте доступное свободное пространство на этом локальном диске.
Убедитесь, что у пользователя есть разрешения на доступ к папке IO_Data: Откройте проводник Windows. Щелкните правой кнопкой мыши основную папку выберите «Свойства».
Перейдите на вкладку «Безопасность». Убедитесь, что у пользователя есть полные права на эту папку и все подпапки. Если вы не можете проверить права доступа, обратитесь к администратору.
65918
Руководитель Центра
сопровождения 1С
28 февраля 2019
Обслуживание 1С
Актуальность проверена: 26.01.2023
Получить консультацию
Бесплатно

Обслуживание 1С
Помощь персонального менеджера, оперативность сдачи отчетности, соответствие законодательству РФ
Иногда пользователь программы 1С может столкнуться с сообщениями программы «Ошибка режима доступа к файлу 1С»…

…а также «Ошибка совместного доступа к файлу» 1С 8.3.

Само название ошибки уже говорит пользователю о случившемся: в первом случае – о нарушении прав доступа. Такое сможет случиться, когда пользователь скопировал информационную базу, подключил, а при открытии по сети всплыла такого рода ошибка с указанием сетевого пути к объекту. В этом случае, первое, на что сразу надо обратить внимание – на права доступа, щелкнув правой кнопкой на свойства объекта. Нажав кнопку «Общий доступ», проверить настройки.

Доступ пользователя Windows, который запустил сеанс программы 1С, должен быть не только на чтение, но и на запись.

Если база располагается на локальном ПК, необходимо проверить на закладке «Безопасность», что для пользователя установлено разрешение на запись или не стоит запрет на запись.

Предупреждение о проблемах с совместным доступом с указанием пути к конкретному объекту, кроме сбоя сетевых настроек, может быть следствием предустановок брандмауэра, антивирусных программ, которые стопорят сетевые подключения. Необходимо открыть их настройки и посмотреть, не будет ли 1С в списке заблокированных программ. Если это так, следует удалить ее из списка или добавить файл информационной базы 1С в исключения, предотвратив его блокировку.

Если при возникновении ошибки система указывает на временные файлы, например C:Users…AppDataLocalTemp, то очистка кэш может решить проблему с ошибкой.
Высока вероятность появления такой ошибки – при одновременном запуске двух программ (ЗУП и Бухгалтерии), одна из которых была базовой версией. Когда программы запустили по очереди, ошибка не появлялась.
Для решения проблемы с ошибкой доступа, как видите, потребуется немного времени, главное – понять причину и исключить ее повторение.
Другие статьи по теме

Обновления 1С
Как обновить 1С самостоятельно. Рассмотрим пошаговые действия для обновления типовой конфигурации 1С:Предприятия 8 на примере 1С:Бухгалтерии 3.0.

Настройка 1С Бухгалтерия 8.3 с нуля
Настройка 1С:Бухгалтерия позволят задать программе конкретную функциональность, выбрать варианты ведения учета, ввести ряд конкретных значений и параметров.

Установка 1С
Начинающие пользователи программ, разработанных на платформе «1С:Предприятие», подойдя к моменту покупки «коробки» или уже приобретя ее, естественно задаются вопросом: «Как установить 1С Предприятие?»…

Ошибка совместного доступа к файлу 1C в 8.3
Ошибка, сообщающая о проблеме с доступом к файлу или совместном доступе к файлу — та неприятность, с которой нередко сталкиваются пользователи 1C 8.3. Сейчас мы расскажем о причинах появления этого бага и о том, как его устранить.
Права пользователя
Понять, с чем связана та или иная ошибка, можно по самому названию. Соответственно, надо удостовериться, что дело не в нарушении прав доступа. Ошибка с указанием сетевого пути вылезает при попытке открытия информационной базы по сети после того, как пользователь скопировал и подключил ее.
Рекомендуем проверить настройки прав доступа:
1. нажмите правой кнопкой мыши на ярлык информационной базы и откройте «Свойства»;
2. нажмите на «Общий доступ»;
3. если в настройках доступ указан лишь к чтению объекта, то надо дать разрешение и на запись.
Что касается информационной базы, расположенной на локальном ПК, то здесь необходимо удостовериться, что на вкладке «Безопасность» стоит разрешение на запись.
Настройки блокирования
Причиной нарушения совместного доступа могут служить настройки брандмауэра и антивируса, стопорящих сетевые подключения. Чтобы понять, так ли это, надо зайти в их настройки и посмотреть, имеется ли 1C в перечне заблокированных программ. При положительном ответе 1C нужно удалить из списка и добавить в исключения, чтобы предотвратить в дальнейшем ее блокирование.
Хотим обратить ваше внимание, что самостоятельно заходить и изменять настройки антивирусных программ стоит лишь в исключительных случаях. Такие программы обеспечивают безопасность ваших данных. В случае нехватки опыта в данной сфере рекомендуем обратиться к специалистам, которые помогут вам снять блокировку 1C.
Чистка кэша
В ошибке может указываться путь к временным файлам. К примеру, C:Users…AppDataLocalTemp. В таком случае советуем прибегнуть к очистке кэша.
Одновременный запуск программ 1С
Повышенный риск возникновения данной ошибки отмечается при единовременном запуске двух программ (ЗУП и Бухгалтерии), одна из которых является базовой версией. Если программы запускать поочередно, то ошибка не появится.
Заключение
Как видно, чтобы решить проблему с ошибкой доступа, совершенно необязательно тратить много времени. Достаточно понять, в чем заключается причина, и сделать все возможное для исключения ее повторения.
Если по какой-то причине вам не удалось справиться с проблемой, или же у вас возникли вопросы по использованию программ и обновлению 1C, то обратитесь к нашим специалистам.
Отзывы о компании
-
Сивелькина С. В.
ПАО «НИКО-БАНК» выражает свою благодарность за оперативную и грамотную работу.
В условиях постоянно меняющегося законодательства Банк заинтересован иметь полную и актуальную номативную базу. Это обеспечивается использованием Банком справочно-нормативной системы «Гарант».
Безусловным плюсом в работе компании «МастерСофт» является быстрое реагирование сотрудников при предоставлении документов по запросу Банка, принятых до обновления справочно-правовой системы.
-
Мордвинцев С. П.
Коллектив компании «АЭРОПОРТ ОРЕНБУРГ» выражает благодарность за взаимовыгодное сотрудничество с МастерСофт-ИТ. Оперативная поставка антивирусных программ Dr. Web обеспечила надежную защиту нашей компьтерной сети.
Особая благодарность сотрудникам Департамента продаж СЦ ИТ за профессиональный подход в решении всех возникающих задач.
-
Ряховская Н. А.
ООО «Орский Вагонный Завод» выражает искреннюю благодраность за качество обслуживания вашими специалистами. Консультации и поставка антивирусов всегда проходят оперативно и на высоком профессиональном уровне.
Уверены, что и в дальнейшем наше сотрудничество на взаимовыгодных условиях продолжится.
-
Кетерер Т. М.
Главный бухгалтер муниципального бюджетного учреждения дополнительного образования «Дворец творчества детей и молодёжи» Кетерер Татьяна Михайловна выражает благодарность специалистам МастерСофт:
«Я хотела бы объявить благодарность вашим сотрудникам. Работает с нами по программе «1С: Бухгалтерия бюджетного учреждения 8» непосредственно Шевлягина Юлия.
Так же огромная благодарность за отзывчивость, терпение и квалифицированную, своевременную помощь Набокиной Олесе и Ерёменко Татьяне (они нас сопровождают по программе «Зарплата и Кадры»).
Им очень с нами тяжело, но они терпеливо продолжают сотрудничать. С вами очень надёжно. Конечно же наши ошибки есть и без вас мы бы вообще о них не знали и в суде, наверное, судились бы. А сейчас мы решаем вопросы…».
Как выбрать файл, а затем переместить его (Ошибка совместного доступа к файлу). |
Я |
02.07.15 — 09:30
Задача: дать пользователю выбрать файл. Переместить выбранный файл в другой каталог.
Код кратко:
ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
Если ДиалогОткрытияФайла.Выбрать() Тогда
СтароеПолноеИмяФайла = ДиалогОткрытияФайла.ПолноеИмяФайла;
ДиалогОткрытияФайла = Неопределено;
ПереместитьФайл(СтароеПолноеИмяФайла, НовоеПолноеИмяФайла);
КонецЕсли;
Получаю ошибку: Ошибка совместного доступа к файлу.
Получается метод ДиалогОткрытияФайла.Выбрать() блокирует файл.
Как решить эту проблему?
1 — 02.07.15 — 09:33
Либо прав нет, либо кто-то ещё его держит
2 — 02.07.15 — 09:35
1 Проверь уровень доступа к файлу (Если нет прав можно получить их FSO = Новый COMОбъект("Scripting.FileSystemObject"); FileFSO = FSO.GetFile(ИмяФайлаПриемника); FileFSO.Attributes=0;) 2 КопироватьФайл(ИмяФайлаИсточника, ИмяФайлаПриемника);
3 — 02.07.15 — 09:50
Права есть. файл доступен для удаления до вызова
ДиалогОткрытияФайла.Выбрать()
Блокировка снимается только после закрытия сессии 1С.
4 — 02.07.15 — 09:52
ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
Если ДиалогОткрытияФайла.Выбрать() Тогда
СтароеПолноеИмяФайла = ДиалогОткрытияФайла.ПолноеИмяФайла;
ДиалогОткрытияФайла = Неопределено;
FSO = Новый COMОбъект("Scripting.FileSystemObject");
FileFSO = FSO.GetFile(ФайлПользователяПолноеИмя);
FileFSO.Attributes=0;
ПереместитьФайл(СтароеПолноеИмяФайла, НовоеПолноеИмяФайла);
КонецЕсли;
Что это дает?
Проблема осталась.
5 — 02.07.15 — 09:53
ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
Если ДиалогОткрытияФайла.Выбрать() Тогда
СтароеПолноеИмяФайла = ДиалогОткрытияФайла.ПолноеИмяФайла;
ДиалогОткрытияФайла = Неопределено;
FSO = Новый COMОбъект("Scripting.FileSystemObject");
FileFSO = FSO.GetFile(СтароеПолноеИмяФайла);
FileFSO.Attributes=0;
ПереместитьФайл(СтароеПолноеИмяФайла, НовоеПолноеИмяФайла);
КонецЕсли;
Что это дает?
Проблема осталась.
6 — 02.07.15 — 09:53
>Получается метод ДиалогОткрытияФайла.Выбрать() блокирует файл.
настроить Process Monitor и посмотреть что происходит
7 — 02.07.15 — 09:56
Если ДиалогОткрытияФайла.Выбрать() Тогда
СтароеПолноеИмяФайла = ДиалогОткрытияФайла.ПолноеИмяФайла;
ДиалогОткрытияФайла = Неопределено;
КонецЕсли;
ПереместитьФайл(СтароеПолноеИмяФайла, НовоеПолноеИмяФайла);
если так?
8 — 02.07.15 — 09:56
9 — 02.07.15 — 09:57
(8) нету уже давно никакого filemon
10 — 02.07.15 — 09:59
(7) В полном коде у меня примерно так и есть.
Не то.
11 — 02.07.15 — 09:59
12 — 02.07.15 — 10:05
(3) Выбрать() ни чего не блокирует. Просто у тебя там вокруг еще какой-то код есть, который ты не показываешь и который, собственно, виноват в просиходящем
13 — 02.07.15 — 10:06
ПереместитьФайл() за конструкцию Выбрать(), не?
14 — 02.07.15 — 10:06
(12) ОК. Сейчас попробую выполнить краткий пример.
15 — 02.07.15 — 10:06
(11) ага
16 — 02.07.15 — 10:07
(13) Да. Удаление файлов у меня отложено до других событий.
17 — 02.07.15 — 10:17
смотри код, у меня всё рабоатет, только я вот это
18 — 02.07.15 — 10:17
(+17) ДиалогОткрытияФайла = Неопределено; — закомментировал
19 — 02.07.15 — 10:19
(+18) да оно даже и не имеет значения.
20 — 02.07.15 — 10:28
(12) Выполнил тестовый пример.
ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие); Если ДиалогОткрытияФайла.Выбрать() Тогда// при этом блокирует выбранный файл СтароеПолноеИмяФайла = ДиалогОткрытияФайла.ПолноеИмяФайла; ДиалогОткрытияФайла = Неопределено; КонецЕсли; НовоеПолноеИмяФайла = СокрЛП(Константы.КаталогОбщихФайлов.Получить()) + "1.jpg"; ПереместитьФайл(СтароеПолноеИмяФайла, НовоеПолноеИмяФайла); Действительо работает! Буду дальше смотреть что его блокирует.
По результату отпишу.
Всем спасибо.
21 — 02.07.15 — 11:54
Опытным путем установил что блокировка файла происходит при выполнении
ДиалогОткрытияФайла.Выбрать()
если установлено свойство
ДиалогОткрытияФайла.ПредварительныйПросмотр = Истина;
22 — 02.07.15 — 11:57
Релиз 8.3 (8.3.5.1517)
Возникает вопрос как совместить предварительный просмотр при открытии файла и отсутствие блокировки для последующего перемещения выбранного файла.
23 — 02.07.15 — 12:36
(21) возможно, у тебя в проводнике включено окно автопросмотра. Позакрывай все окна с расположением твоего файла и смотри на его перемещение, например, через TotalCommander.
24 — 02.07.15 — 13:00
(23) Именно так. Включено окно автопросмотра. Файл блокируется в момент отображения в окне предпросмотра.
Fedor-1971
25 — 02.07.15 — 13:07
(24) я про другое, если открыта папка (не из 1С, а просто так с винды) с твоим файлом и в ней указан автопросмотр, то он блокирует твой файл, даже если ничего не показывает.
Признак сей бороды у (17) работает, правда он не указал версию 1С (на 8.2 работает без проблем и с автопросмотром и без оного)