
Ошибка режима доступа к файлу 1С

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

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

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

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

Блокированные и разрешенные приложения
Высока вероятность появления такой ошибки – при одновременном запуске двух программ (ЗУП и Бухгалтерии), одна из которых была базовой версией. Когда программы запустили по очереди, ошибка не появлялась.
Для решения проблемы с ошибкой доступа, как видите, потребуется немного времени, главное – понять причину и исключить ее повторение.
На локальном Пк. Можно прочитать файл.
//
ТДсXLS = Новый ТабличныйДокумент;
ТДсXLS. Прочитать(Объект. ВыборФайла, СпособЧтенияЗначенийТабличногоДокумента. Значение);
//
Почему его нельзя прочитать на сервере?
Доступ к файлу не может быть получен.
Потому что путь указывает на файл у пользователя на рабочем столе.
Подскажите пожалуйста, как это решить?
Я указываю, на файл пользователя, на сервере же. Как тут это решить?
Ложить файл в каталог на диске D: ?
Не на рабочий стол?
Ложить допустимо только в каталог на диске X:
Читать на сервере в ДД, передавать через ХЗ серверу.
А на Y точно нельзя?
На Y нельзя. В Y можно.
(0) Ты кладешь файл на сервер локально и пытаешься его прочитать в серверном коде?
Тогда проблема может быть в правах доступа. Дефолтный виндовый юзер под которым стартует сервер приложений имеет доступ только к своему каталогу.
Если мое предположение ошибочно, тогда опиши подробнее, что ты делаешь.
«Дата регистрации: 18 августа 2020; Стаж: 11 месяцев 18 дней»
бросай программирование и 1С, не выйдет из тебя ничего
Какой бросай! Вообще очумел. В 1С и так никто не идет.
Плюс в 1С очень легко быть успешным, слабо разбираясь в этих ваших компьютерах.
зря вы так
лучше мало хороших спецов, чем толпа плохих
Ути-пути. Из Garykom элитизм попер. Держите меня семеро.
Лучше провести аналогию с фильмом Аватар.
Если твой аватар ест, то ты голодным быть не перестанешь
все мы когда то были «плохими» спецами, в глазах наших старших коллег. Просто кому то надо месяц чтобы понять, а кому то и года мало. Но важен результат и желание учиться.
Но-но! Ливингстар уникален! К нему неприменимы стандартные подходы!
Ты еще его предыдущие ники посчитай
Так, можно на диск D: ?
какой к черту элитаризм
но за почти год в 1С не понять чем клиент от сервера отличается?
вроде бы одно и то же не спрашивает, значит все таки обучаем)
нахрена спрашивать когда можно книжки/учебники почитать?
зайдите на сервер и попробуйте открыть файл по вашему пути с диском D, если откроется то все можно)
Легко. Если работать на файловой, например.
файловая тоже клиент сервер есть
это так к сведению
тогда уж говори работал только с локальной файловой на одном компе
Да, диск D: нормально пошел.
Я как то сразу в панику ((((. Пробовал не от туда грузить.
у него rdp на сервере
но сервер 1С от другого юзера операционки пашет
Делаю загрузку из Excel в 1с.
Файл формата .xlsx грузит, а .xls ошибку выдает: «Доступ к файлу не может быть получен» Почему? Файл лежит на рабочем столе и при загрузке программно записывается во временные файлы. Пишет что там уже нет доступа. А вот с .xlsx все норм.
По теме из базы знаний
9.
pavel06
Сейчас в теме
Не думаю. Вроде хорошо закрыл
Чтобы точно было хорошо, надо перегрузить комп., на котором лежит файл и, конечно, никакого доступа по сети не должно быть к этой папке. На практике часто встречаешься с какими-то зависшими процессами.
Еще код не написали, версию установленного Excel, ОС и платформы.
6.
pavel06
Сейчас в теме
Наверно, ненормально закрыл файл и приложение, прежде чем открывать.
Не думаю. Вроде хорошо закрыл
Все. Вы правы были. Где-то процесс висел. Сохранил файл в xlsx и обратно в xls все заработало
2.
VmvLer
Сейчас в теме
Спасибо, очень информативное сообщение
другой формат — другие способы работы с файлом (не поддерживает некоторые функции)?
5.
VmvLer
Сейчас в теме
11.
fixin
Сейчас в теме
нужно временный файл именовать согласно формата, т.е. xlsx для xlsx и xls для xls. 1с определяет по расширению
13.
lisi4ka19
Сейчас в теме
Спасибо, добрый человек! Проблема именно в этом была.
16.
dima_home
Сейчас в теме
12.
kartoshka_s_xlebom
Сейчас в теме
Недавно столкнулся с такой проблемой.
На сервере, где происходит получение имени временного файла, вроде такого:
ИмяВрФайла = ПолучитьИмяВременногоФайла(пРасширениеФайла)
В пРасширениеФайла ОБЯЗАТЕЛЬНО необходимо писать именно то расширение, которое было у файла при выборе из диалога на клиенте. Если выбран файл «xls», то пРасширениеФайла=»xls», если «xlsx», то пРасширениеФайла=»xlsx» и т.д. Я его через реквизит формы заполнял из диалога выбора файла, а потом передавал с клиента на сервер.
14.
lisi4ka19
Сейчас в теме
Спасибо, действительно именно в этом была проблема!
15.
fixin
Сейчас в теме
все так, я как-то сам до этого дошел методом тыка.
17.
iskander3000
Сейчас в теме
Конец 2022 года, уже вышла 22-ая платформа, а требование до сих пор актуально. Спасибо!
Причем тут платформа?
15.
AntonSm
Сейчас в теме
а сам временный файл создается?
Еще может быть, что при копировании файла ничего и не происходит. Т.е. временный не является копией файла из письма.
Права на папку %темп% есть? Можно проверить создав там произвольный файл в этой же процедуре и проверить, что он действительно там создался.
16.
qux
Сейчас в теме
Временный файл создается. И от других отправителей временные файлы создавшиеся после копирования их вложений открываются.
18.
qux
Сейчас в теме
27.
пользователь
Сообщение было скрыто модератором.
28.
qux
Сейчас в теме
Вариант с переносом %temp% в другое место я так понимаю уже пробовали?
7.
qux
Сейчас в теме
Пробовал. Но, все вложения открываются, кроме этого вложения, которое приходит от одного адресата.
Т.е. все файлы находятся в одной папке, но от одного адресата вложения не открываются.
3.
SyachinS
Сейчас в теме
Юзеры работают на сервере?
Юзеры работают: Клиент — Сервер. Но и из терминальной сессии на этом файле проявляется ошибка.
4.
shnurov
Сейчас в теме
В управляемых формах нужно не забывать где выполняется код, если на клиенте то и пути к папкам доступны только клиентские, если на сервере то папки доступны только те что видит пользователь от имени которого запущена служба на сервере с самого сервера. В неуправляемых формах я честно сказать не знаю как с этим, но скорее всего у вас проблема в путях к файлу.
5.
qux
Сейчас в теме
Обработка написана на неуправляемой форме.
8.
varlon
Сейчас в теме
А знак $ только в имени этого файла присутствует?
10.
qux
Сейчас в теме
Знак $ убирал из имени файла, файл все равно не открывается.
9.
v3rter
Сейчас в теме
Может адресат присылает xlsx с расширением xls?
11.
v3rter
Сейчас в теме
12.
qux
Сейчас в теме
Антивируса на сервере нет, если не считать стандартного WinServer Defender. Переименование не помогло (
13.
KapasMordorov
Сейчас в теме
8.3.9 платформу попробуйте.
19.
qux
Сейчас в теме
Попробовал. Ошибка проявилась и в этой версии платформы.
14.
v3rter
Сейчас в теме
Может в этом файле несколько листов?
17.
qux
Сейчас в теме
Лист один, проверял эту версию одной из первых (
20.
qux
Сейчас в теме
На первый взгляд разница между файлами которые открываются и теми которые не открываются (при одинаковом количестве информации на листе Excel) в размере. Файлы которые не открываются меньше примерно в два раза.
21.
AntonSm
Сейчас в теме
а если указать СпособЧтенияЗначенийТабличногоДокумента. Текст, будет какая-либо информация прочитана из файла?
22.
v3rter
Сейчас в теме
Если открыть и сохранить в экселе — тоже?
23.
qux
Сейчас в теме
Пробовал, та же ошибка.
24.
qux
Сейчас в теме
Когда открываю этот файл (размер 6 кб) и нажимаю «Сохранить как» то выбирается следующее расширение:
Когда сохраняю с расширением:
Получается размер 7кб, но 1С не открывает все равно.
26.
AntonSm
Сейчас в теме
выкладывай тогда уж сам файл.
Все возможные предположения либо высказаны, либо ты сам уже попробовал.
32.
v3rter
Сейчас в теме
Попробуйте сохранить его как Лист(книга) эксель 97 или как просто эксель.
Немного путаницы
Не открываются файлы от одного отправителя?
или
не открываются некоторые файлы одного отправителя?
или
не открываются некоторые файлы нескольких отправителей?
По комментариям нестыковки.
Если от 1 отправителя ничего не открывается — тогда надо копать исходное письмо.
29.
qux
Сейчас в теме
Не открываются файлы от одного отправителя. Именно это утверждается во всех моих сообщениях.
«все файлы находятся в одной папке, но от одного адресата вложения не открываются.»
30.
varlon
Сейчас в теме
тогда копайте в сторону исходного письма и отправителя. Возможно там есть серьезные отличия.
31.
Xershi
Сейчас в теме
возможно он отправляет пдф через 1С, а он бывает битый вот и итог! Так что нудно знать точно что файл не битый и его расширение. Запроси у поставщика инфу и дело в с концом!
33.
PerlAmutor
Сейчас в теме
35.
PerlAmutor
Сейчас в теме
И все-таки нет. Проверил на ERP 2.4, без режима совместимости на 8.3.10. Ошибка везде одна и та же.
Была подобная ошибка, когда файл ексель был открыт другим пользователем на другом ПК. Фоновое задание должно было перезаписать данный файл.
36.
PerlAmutor
Сейчас в теме
Когда я выбираю файл через диалог выбора — он помещается в ДвоичныеДанные, оттуда во Временное Хранилище, адрес хранилища передается на сервер, там он забирается из хранилища и записывается через ДвоичныеДанные во временную папку через ПолучитьИмяВременногоФайла. Затем я уже передаю это имя в ТабличныйДокумент, который создаю через оператор Новый, затем вызываю Прочитать() и получаю ошибку. Содержимое временного файла проверял — идентичное с тем, что на клиенте. Тем же самым алгоритмом mxl файлы читаются на ура.
—
UPDATE: поборол таки. Оказывается 1С тупенькая и ей обязательно нужно сообщать расширение файла для того, чтобы она могла понять по какому алгоритму ей грузить документ:
РасположениеКопииФайла = ПолучитьИмяВременногоФайла();
Заменяем на это и все работает:
РасположениеКопииФайла = ПолучитьИмяВременногоФайла(«.xlsx»);
37.
PerlAmutor
Сейчас в теме
Причем важно указывать верное расширение, если указать «.xls» вместо «.xlsx» (если он действительно там), то метод Прочитать() также перестает работать.
40.
KirinaAS
Сейчас в теме
Вот это прям супер помогло. Спасибо!
42.
tolyan_ekb
Сейчас в теме
(36) Поставьте отметку, что это решение, пожалуйста. Это поможет быстрее найти ответ другим участникам
39.
PerlAmutor
Сейчас в теме
(38) Эту отметку может поставить только автор темы.
41.
AlexeyPapanov
Сейчас в теме
(36) Спасибо!
Тоже сидел голову ломал. Магия какая-то)





