Ошибка при вызове метода контекста найти файлы

В платформе 1С сообщения об ошибках бывают достаточно запутаны, и без должных навыков разобраться в причинах достаточно сложно. Вот и сообщение об ошибке при вызове контекста может ввести в ступор начинающего разработчика. Однако в подавляющем большинстве случаев мы видим подобное сообщение, если разработчик допустил ошибку в своем коде. Причем речь зачастую идет не об орфографических ошибках, а о логических.

Исправляем ситуацию

Чтобы избавиться от этого неприятного сообщения об ошибке при вызове метода контекста, следует понимать, что контекстом называют методы платформы 1С. Значит в определенной строке кода воспользовались методом с неверными параметрами или вызвали его не от того владельца. Всегда внимательно и полностью читайте сообщения об ошибках – часто в них содержится указание на строку и метод, вызвавший ошибку. Это поможет сэкономить время на отладку и поиск проблемного места в коде.

Рассмотрим действия разработчика на примере со специально допущенной ошибкой. Мы запускаем на исполнение нижеприведенный кусок кода с запросом, в котором забыли дописать условие отбора. Компилятор 1С пропускает такую процедуру, так как орфографических ошибок в написании команд мы не допустили. Однако в режиме предприятия нас ждет такое сообщение об ошибке:


	 Запрос = Новый Запрос;
	 Запрос.Текст =
	         "ВЫБРАТЬ
	          |        Номенклатура.Ссылка КАК Ссылка,
	          |        Номенклатура.ВерсияДанных КАК ВерсияДанных,
	          |        Номенклатура.ПометкаУдаления КАК ПометкаУдаления,
	          |        Номенклатура.Родитель КАК Родитель,
	          |        Номенклатура.ЭтоГруппа КАК ЭтоГруппа,
	          |        Номенклатура.Код КАК Код,
	          |        Номенклатура.Наименование КАК Наименование,
	          |        Номенклатура.Артикул КАК Артикул,
	          |        Номенклатура.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
	          |        Номенклатура.ТипНоменклатуры КАК ТипНоменклатуры,
	          |        Номенклатура.Предопределенный КАК Предопределенный,
	          |        Номенклатура.ИмяПредопределенныхДанных КАК ИмяПредопределенныхДанных
	          |ИЗ
	          |        Справочник.Номенклатура КАК Номенклатура
	          |ГДЕ
	          |         ";
	 РезультатЗапроса = Запрос.Выполнить();
	 ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
	 Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
	 КонецЦикла;
Рис.1 Запускаем на исполнение нижеприведенный кусок кода с запросом, в котором забыли дописать условие отбора
Рис.1 Запускаем на исполнение нижеприведенный кусок кода с запросом, в котором забыли дописать условие отбора

Приведенный текст ошибки программисту 1С скажет, что в модуле формы обработки «ЧтениеЗаписьXML на 152 строчке кода не может выполниться запрос. Причина в том, что на 17 строчке запроса нет чего-то, что ждал компилятор. Таким образом, чтобы убрать подобное сообщение, необходимо выяснить, что там должно быть и написать недостающий код.

Увидев вышеприведенный кусок кода, разработчик заметит, что в запросе есть служебное слово «ГДЕ», дающее сигнал 1С, что дальше будет условие. Но мы забыли дописать его и, естественно, система с помощью сообщения об ошибке спрашивает нас – «а где условие?». Чтобы исправить эту ситуацию необходимо либо убрать оператор «ГДЕ» из запроса, либо добавить условие.

Но ошибки могут быть не только в текстах запросов. Допустим, мы хотим выбрать всю номенклатуру и узнать, входит ли она в определенную группу. Проверка происходит с помощью метода «ПринадлежитЭлементу» и его параметра, который должен быть типа СправочникСсылка. Мы опять допускаем ошибку и вместо ссылки в параметр метода помещаем строку, содержащую имя переменной.


	 Запрос = Новый Запрос;
	            Запрос.Текст =
	                       "ВЫБРАТЬ
	                        |          Номенклатура.Ссылка КАК Ссылка,
	                        |          Номенклатура.ВерсияДанных КАК ВерсияДанных,
	                        |          Номенклатура.ПометкаУдаления КАК ПометкаУдаления,
	                        |          Номенклатура.Родитель КАК Родитель,
	                        |          Номенклатура.ЭтоГруппа КАК ЭтоГруппа,
	                        |          Номенклатура.Код КАК Код,
	                        |          Номенклатура.Наименование КАК Наименование,
	                        |          Номенклатура.Артикул КАК Артикул,
	                        |          Номенклатура.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
	                        |          Номенклатура.ТипНоменклатуры КАК ТипНоменклатуры,
	                        |          Номенклатура.Предопределенный КАК Предопределенный,
	                        |          Номенклатура.ИмяПредопределенныхДанных КАК ИмяПредопределенныхДанных
	                        |ИЗ
	                        |          Справочник.Номенклатура КАК Номенклатура
	                        |ГДЕ
	                        |          НЕ Номенклатура.ЭтоГруппа ";
	 НужнаяГруппаЭлементов = Справочники.Номенклатура.НайтиПоНаименованию("Мебель");
	 РезультатЗапроса = Запрос.Выполнить();
	 ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
	 Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
	 Сообщить(ВыборкаДетальныеЗаписи.Ссылка.ПринадлежитЭлементу("НужнаяГруппаЭлементов"));
	 КонецЦикла;
Рис.2 Мы опять допускаем ошибку и вместо ссылки в параметр метода помещаем строку, содержащую имя переменной
Рис.2 Мы опять допускаем ошибку и вместо ссылки в параметр метода помещаем строку, содержащую имя переменной

1С выдает настолько же информативное сообщение, из которого мы понимаем, что на 158 строке у 1 параметра неправильный тип. Но что же делать, если мы не знаем, какой тип должен быть? В этом нам поможет Синтакс-помощник, встроенный в платформу 1С.

Рис.3 Синтакс-помощник
Рис.3 Синтакс-помощник

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

Рис.4 Сверив пример с нашим кодом, приходит понимание, что кавычки не нужны и без них все работает
Рис.4 Сверив пример с нашим кодом, приходит понимание, что кавычки не нужны и без них все работает

Чаще всего причиной подобных ошибок выступают следующие факторы:

  1. Невнимательность;
  2. Отсутствие опыта или знаний;
  3. Несогласованность действий разработчиков друг с другом;
  4. Изменения в методах контекста в новых версиях платформы.

Но ошибки при разработке ПО случаются постоянно, поскольку иногда ошибаются даже специалисты с многолетним опытом. Самое главное – уметь исправлять их и учиться на них. Постепенно вы будете видеть сообщения об ошибках все реже и научитесь замечать подобные «опечатки» еще до запуска 1С.

Вот код

Функция ВыгрузитьТаблицуЗначенийВДеревоЗначений(Таблица, КлючСтроки = «КлючСтроки», ЗначениеПоказателя = «ЗначениеПоказателя») Экспорт

   Дерево = Новый ДеревоЗначений;

   Для Каждого Колонка Из Таблица.Колонки Цикл

       Дерево.Колонки.Добавить(Колонка.Имя, Колонка.ТипЗначения);

   КонецЦикла;

   Для Каждого СтрокаТаблицы Из Таблица Цикл

       СтрокаГруппировки = Дерево.Строки.Найти(СтрокаТаблицы[ЗначениеПоказателя], КлючСтроки,Истина);

       Если СтрокаГруппировки = Неопределено Тогда

           ЗаполнитьЗначенияСвойств(Дерево.Строки.Добавить(), СтрокаТаблицы);

       Иначе

           ЗаполнитьЗначенияСвойств(СтрокаГруппировки.Строки.Добавить(), СтрокаТаблицы);

       КонецЕсли;

   КонецЦикла;

   Возврат Дерево;

КонецФункции //ВыгрузитьТаблицуЗначенийВДеревоЗначений()

Выдает ошибку

{ОбщийМодуль.О_РаботаСДеревомЗначений.Модуль(87)}: Ошибка при вызове метода контекста (Найти)

       СтрокаГруппировки = Дерево.Строки.Найти(СтрокаТаблицы[ЗначениеПоказателя], КлючСтроки,Истина);

СтрокаГруппировки = Дерево.Строки.Найти(СтрокаТаблицы[ЗначениеПоказателя], КлючСтроки,Истина);

СтрокаТаблицы  = в отладчике —>>>

СоответствуетНормативу    Ложь    Булево

СтрокаТаблицы    СтрокаТаблицыЗначений    СтрокаТаблицыЗначений

ЕдиницаИзмерения    м2    СправочникСсылка.КлассификаторЕдиницИзмерения

ЗначениеПоказателя    99    Число

ЗначениеПоказателяПечать    99    Число

МаксЗначениеПоказателя    0    Число

МаксЗначениеПоказателяПечать    0    Число

НомерСтроки    1    Число

ПоказательАнализа    test    СправочникСсылка.О_ПоказателиАнализовНоменклатуры

Получение файла из базы

Автор fairei, 27 сен 2011, 09:22

0 Пользователей и 1 гость просматривают эту тему.

Имеется документ, в его табличной части «СканыДокументов» есть поле типа Хранилище значений — «СканДокументаХранилище»
По кнопкам организую помещение в базу через временное хранилище.
При попытке открыть файл вылетает ошибка: Ошибка при вызове метода контекста (ПолучитьФайл)
   ПолучитьФайл(Адрес,Объект.СканыДокументов[ИндексСтроки].СодержаниеФайла,Истина);
по причине:
Файл не обнаружен ‘[url=»e1c://server/dzo/46mrn/e1cib/data/%D0%94%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82.%D0%94%D0%9E%D0%93%D0%9E%D0%92%D0%9E%D0%A0%D0%9D%D0%90%D0%AF_%D0%A0%D0%90%D0%91%D0%9E%D0%A2%D0%90_%D0%94%D0%97%D0%9E.%D0%A1%D0%BA%D0%B0%D0%BD%D1%8B%D0%94%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%BE%D0%B2.%D0%A1%D0%BE%D0%B4%D0%B5%D1%80%D0%B6%D0%B0%D0%BD%D0%B8%D0%B5%D0%A4%D0%B0%D0%B9%D0%BB%D0%B0?ref=»99cf20cf30e61ece11e0e401cf955ab1″&index=0′»]e1c://server/dzo/46mrn/e1cib/data/Документ.ДОГОВОРНАЯ_РАБОТА_ДЗО.СканыДокументов.СодержаниеФайла?ref=»99cf20cf30e61ece11e0e401cf955ab1″&index=0′[/url]
по причине:
Неправильный путь к файлу ‘/e1cib/data/Документ.ДОГОВОРНАЯ_РАБОТА_ДЗО.СканыДокументов.СодержаниеФайла?ref=»99cf20cf30e61ece11e0e401cf955ab1″&index=0

Вот текст процедур:
&НаКлиенте
Процедура ПрикрепитьСкан(Команда)
   Перем ВыбранноеИмя;
   Перем АдресВременногоХранилища;
   Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
   Диалог.Выбрать();
   ВыбранноеИмя = Диалог.ПолноеИмяФайла;
   Если ПоместитьФайл(АдресВременногоХранилища, ВыбранноеИмя, ВыбранноеИмя, ЛОЖЬ, УникальныйИдентификатор) Тогда
      НовыйСкан = Объект.СканыДокументов.Добавить();
      НовыйСкан.СодержаниеФайла = ВыбранноеИмя;
      ПоместитьВБД(АдресВременногоХранилища, НовыйСкан.НомерСтроки-1);
   КонецЕсли;
КонецПроцедуры

&НаСервере
Процедура ПоместитьВБД(АдресВременногоХранилища, ИндексСтроки)
   ЭлементДокумента = РеквизитФормыВЗначение(«Объект»);
   ДвоичныеДанные = ПолучитьИзВременногоХранилища(АдресВременногоХранилища);
   ЭлементДокумента.СканыДокументов[ИндексСтроки].СканДокументаХранилище = Новый ХранилищеЗначения(ДвоичныеДанные, Новый СжатиеДанных());
   ФайлПутьНаДиске = Новый Файл(ЭлементДокумента.СканыДокументов[ИндексСтроки].СодержаниеФайла);
   ЭлементДокумента.СканыДокументов[ИндексСтроки].СодержаниеФайла = ФайлПутьНаДиске.Имя;
   ЭлементДокумента.Записать();
   Модифицированность = Ложь;
   УдалитьИзВременногоХранилища(АдресВременногоХранилища);
   ЗначениеВРеквизитФормы(ЭлементДокумента, «Объект»);
КонецПроцедуры

&НаКлиенте
Процедура ОткрытьСкан(Команда)
   ИндексСтроки = Элементы.СканыДокументов.ТекущаяСтрока;
   Адрес = ПолучитьНавигационнуюСсылку(Объект.Ссылка,»СканыДокументов.СодержаниеФайла»,ИндексСтроки);
   ПолучитьФайл(Адрес,Объект.СканыДокументов[ИндексСтроки].СодержаниеФайла,Истина);
КонецПроцедуры

где закралась ошибка?


текст процедур:
&НаКлиенте
Процедура ПрикрепитьСкан(Команда)
   Перем ВыбранноеИмя;
   Перем АдресВременногоХранилища;
   Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
   Диалог.Выбрать();
   ВыбранноеИмя = Диалог.ПолноеИмяФайла;
   Если ПоместитьФайл(АдресВременногоХранилища, ВыбранноеИмя, ВыбранноеИмя, ЛОЖЬ, УникальныйИдентификатор) Тогда
      НовыйСкан = Объект.СканыДокументов.Добавить();
      НовыйСкан.СодержаниеФайла = ВыбранноеИмя;
      ПоместитьВБД(АдресВременногоХранилища, НовыйСкан.НомерСтроки-1);
   КонецЕсли;
КонецПроцедуры

&НаСервере
Процедура ПоместитьВБД(АдресВременногоХранилища, ИндексСтроки)
   ЭлементДокумента = РеквизитФормыВЗначение(«Объект»);
   ДвоичныеДанные = ПолучитьИзВременногоХранилища(АдресВременногоХранилища);
   ЭлементДокумента.СканыДокументов[ИндексСтроки].СканДокументаХранилище = Новый ХранилищеЗначения(ДвоичныеДанные, Новый СжатиеДанных());
   ФайлПутьНаДиске = Новый Файл(ЭлементДокумента.СканыДокументов[ИндексСтроки].СодержаниеФайла);
   ЭлементДокумента.СканыДокументов[ИндексСтроки].СодержаниеФайла = ФайлПутьНаДиске.Имя;
   ЭлементДокумента.Записать();
   Модифицированность = Ложь;
   УдалитьИзВременногоХранилища(АдресВременногоХранилища);
   ЗначениеВРеквизитФормы(ЭлементДокумента, «Объект»);
КонецПроцедуры

&НаКлиенте
Процедура ОткрытьСкан(Команда)
   ИндексСтроки = Элементы.СканыДокументов.ТекущаяСтрока;
   Адрес = ПолучитьНавигационнуюСсылку(Объект.Ссылка,»СканыДокументов.СодержаниеФайла»,ИндексСтроки);
   ПолучитьФайл(Адрес,Объект.СканыДокументов[ИндексСтроки].СодержаниеФайла,Истина);
КонецПроцедуры


ЭлементДокумента.СканыДокументов[ИндексСтроки].СодержаниеФайла = ФайлПутьНаДиске.Имя;
   ЭлементДокумента.Записать();
   Модифицированность = Ложь;
   УдалитьИзВременногоХранилища(АдресВременногоХранилища);
   ЗначениеВРеквизитФормы(ЭлементДокумента, «Объект»);
КонецПроцедуры

&НаКлиенте
Процедура ОткрытьСкан(Команда)
   ИндексСтроки = Элементы.СканыДокументов.ТекущаяСтрока;
   Адрес = ПолучитьНавигационнуюСсылку(Объект.Ссылка,»СканыДокументов.СодержаниеФайла»,ИндексСтроки);
   ПолучитьФайл(Адрес,Объект.СканыДокументов[ИндексСтроки].СодержаниеФайла,Истина);
КонецПроцедуры


Аналогичная ошибка. Возникает только у одного пользователя. Стала возникать после обновления платформы.
Почистили Кэш, переустановили 1С. Заново перепрописали базу в списке баз.
Прикрепляем файл к документу, сохраняем. Пробуем открыть — ошибка. Захожу под этим пользователем со своего компа, этот же файл прикрепляю, нормально открывается. Что еще можно сделать?


Ну, может стоить проверить доступ к этой папке пользователю от которого вылетает ошибка?

Помогли, отблагодари!


Тоже думал над этим вариантом. Но загружается файл с рабочего стола в базу (пробовали и jpg, и pdf прикреплять), а при открытии из хранилища помещается в темп и оттуда открывается.
Помещенный в базу файл (тем пользователем) не открывается ни у кого. Как будто он помещает в хранилище и при сохранении файл становится «битым».


файлы загружаются C:Usersимя_пользователяAppDataRoaming1CФайлыконфигпользователь
поэтому другие не могут обратится к файлам! Как вариант поменять путь к хранению файлов на папку с общим доступам. я могу и ошибаться! Можете проверить нахождение файлов справочнике файлы!

Помогли, отблагодари!


Файлы хранятся в базе в хранилище. При открытии прикрепленного, скажем, к документу файла, он из хранилища помещается в LocalTemp папку и оттуда открывается. Опять же проблема только с 1-2 юзерами, у остальных в такой ситуации всё норм. Где бы может еще что-то почистить, переустановить у него?
Вот мысль еще есть, пользователь заходит в базу через аутентификацию винды, может здесь что-то?


Теги:

  • Форум База

  • Форум 1С — ПРЕДПРИЯТИЕ 8.0 8.1 8.2 8.3 8.4

  • Конфигурирование, программирование в 1С Предприятие 8

  • Получение файла из базы

Похожие темы (5)

Рейтинг@Mail.ru

Rambler's Top100

Поиск

Ошибка работы 1С 8 с Excel: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft Office Excel): Нет доступа к файлу

Описание ошибки:
Проявила себя в клиент-серверной базе. Релиз платформы 1С: Предприятие 8.3.13.1644.

Найденные решения:

Полная формулировка ошибки:

{Доработки Документ.УстановкаЦенНоменклатуры.Форма.Доп_ФормаИмпортXLS.Форма(83)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft Office Excel): Нет доступа к файлу ‘C:1C_ArhivТест загрузка прайсов[имя_файла].xlsx’. Это может быть вызвано одной из следующих причин.

• Имени файла или пути не существует.
• Файл используется другой программой.
• Имя книги, которую вы пытаетесь сохранить, совпадает с именем открытой в данный момент книги.

1C 8 Произошла исключительная ситуация (Microsoft Office Excel): Нет доступа к файлу .xlsx

1С 8 работа с Excel Ошибка при вызове метода контекста (Open)

При доработке в расширении для конфигурации 1С: Комплексная автоматизация 8, ред. 2, которая должна загружать данные из файлов Excel и при попытке выполнения в коде РабочаяКнига = ExcelПриложение.WorkBooks.Open(ФормаИмпортXLS.ИмяФайла);. Что удивительно, но в более ранней редакции Комплексной, 1.1, эта проблема не возникала в этом же коде, хотя обе базы на одном сервере.

Проблема оказалась нова для автора этого текста только в 2020 году, хотя самой проблеме достаточно много времени (более 5 лет на момент написания). В обсуждении данной ошибки на сайте infostart.ru «Ошибка открытия файла Excel на сервере» обсуждается несколько предложений по решению проблемы, среди которых наиболее популярный вариант решения. Так же там много попутных предложений по настройке прав на стороне сервера, если вдруг популярный вариант окажется не актуальным.

1C 8

Популярность этого варианта подтверждается исчерпывающим обсуждением и вот на этом ресурсе: «v8.x: [РЕШЕНО] Ошибка при вызове метода контекста (Open) при работе с Excel»

1C 8.2 8.3 Произошла исключительная ситуация (Microsoft Office Excel): Нет доступа к файлу

Проблема была рещена данным простым решением, но обращу внимание на то, что данное действие должно быть выполнено на сервере, а не на локальном рабочем месте.

1C 8 Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация

Оцените, помогло ли Вам предоставленное описание решения ошибки?




© www.azhur-c.ru 2014-2020. Все права защищены. Использование текстов и изображений с данной страницы без письменного разрешения владельца запрещено. При использовании материалов с данной страницы обязательно указание ссылки на данную страницу.

23-09-2020

Журавлев А.С.
(Сайт azhur-c.ru)

Загрузка падает с ошибкой

Я
   Beduin

07.05.15 — 18:58

ЗаписьXML = Новый ЗаписьXML;

ЗаписьXML.ОткрытьФайл(ИмяФайла, «UTF-8»);

{Обработка.ВыгрузкаЗагрузкаДанныхXML.МодульОбъекта(64)}: Ошибка при вызове метода контекста (ОткрытьФайл)

            ЗаписьXML.ОткрытьФайл(ИмяФайла, «UTF-8»);

по причине:

Ошибка доступа к файлу ‘C:UsersAdmin1cDesktopФайл выгрузки.xml’

Режим тонкий клиент. Бухгалтерия КОРП 3.0

В чем причина?

   Beduin

1 — 07.05.15 — 19:00

При чем, если просто открыть файл как текстовый, то все хорошо.

   mehfk

2 — 07.05.15 — 19:03

Нет доступа на запись. Пнуть сисадмина.

   Beduin

3 — 07.05.15 — 19:05

(2) Средствами 1С создал файл и записал его в это папку.

Права есть.

   Beduin

4 — 07.05.15 — 19:13

Это может из-за того что аккаунт от службы сервера не входит в группу администраторов?

   mehfk

5 — 07.05.15 — 19:17

Какое из 4-х слов в первом предложении не понятно?

  

Beduin

6 — 07.05.15 — 20:00

(5) Угу . дело было в этом. Спасибо.

TurboConf — расширение возможностей Конфигуратора 1С

ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку «Обновить» в браузере.

Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.

  1. 20.12.2016, 13:59

    #1

    lilyapo вне форума


    Иногда оказывает помощь


    По умолчанию COM-объект и Excel

    Создаю COM-объект и пытаюсь открыть файл Excel:
    ex=Новый ComОбъект(«Excel.Application»);
    ex.WorkBooks.Open(Файл);
    Файл существует, COM-объект создается, но при открытии файла Excel выдается сообщение:

    Ошибка при вызове метода контекста (Open)
    ex.WorkBooks.Open(Файл);
    по причине:
    Неизвестная ошибка
    Сталкиваюсь с этим впервые, на других компах всю жизнь все работает, с любой платформой 8.3
    Если что-то с Excel, то что?


  2. 20.12.2016, 15:25

    #2

    avm3110 вне форума


    Гордость форума PRO


    По умолчанию Re: COM-объект и Excel

    Цитата Сообщение от lilyapo
    Посмотреть сообщение

    Создаю COM-объект и пытаюсь открыть файл Excel:
    ex=Новый ComОбъект(«Excel.Application»);
    ex.WorkBooks.Open(Файл);
    Файл существует, COM-объект создается, но при открытии файла Excel выдается сообщение:

    Ошибка при вызове метода контекста (Open)
    ex.WorkBooks.Open(Файл);
    по причине:
    Неизвестная ошибка
    Сталкиваюсь с этим впервые, на других компах всю жизнь все работает, с любой платформой 8.3
    Если что-то с Excel, то что?

    Ты открываешь Апликайшон — а как ты это открываешь (интерактивно или же на сервере)? Опять же у тебя какой эксель (32-х разрядный или же 64-х разрядный) и в каком контексте пытаешься открыть (в 32-х разрядном клиенте или же на стороне 64-х разрядного сервера)?


  3. 20.12.2016, 15:55

    #3

    lilyapo вне форума


    Иногда оказывает помощь


    По умолчанию Re: COM-объект и Excel

    Все очень просто.
    Файловая база.
    Excel 2010. Файл лежит на том же диске, что и база и открывающая его обработка.
    Никакого клиент-серверного режима нет.


  4. 20.12.2016, 16:31

    #4

    avm3110 вне форума


    Гордость форума PRO


    По умолчанию Re: COM-объект и Excel

    А попробуй «завернуть» в Попытку

    Что выдаст?

    Попытка
    Excel = Новый COMОбъект(«Excel.Application»);
    Excel.WorkBooks.Open(ИмяФайла);
    Состояние(«Обработка файла Microsoft Excel…»);
    Исключение
    Сообщить(«Ошибка при открытии файла с помощью Excel! Загрузка не будет произведена!»);
    Сообщить(ОписаниеОшибки());
    Возврат;
    КонецПопытки;


  5. 20.12.2016, 17:04

    #5

    lilyapo вне форума


    Иногда оказывает помощь


    По умолчанию Re: COM-объект и Excel

    Все то же самое.
    Ошибка при вызове метода контекста (Open): Неизвестная ошибка
    ОписаниеОшибки()=»»


  6. 20.12.2016, 17:25

    #6

    avm3110 вне форума


    Гордость форума PRO


    По умолчанию Re: COM-объект и Excel

    [QUOTE=lilyapo;469920]Все то же самое.
    Ошибка при вызове метода контекста (Open): Неизвестная ошибка

    похоже у тебя проблема с com-ом. А у тебя Excel нормально в реестре зареген? Ты его видишь в com-объектах?

    Попробуй подключиться к открытому «ручками» экселю

    Как подключиться к запущенному Excel-евскому файлу в реальном времени, изменить его и даже не сохранять, а просто переключить окно на 1С и сразу же выгружать данные в табличную часть, лишь переключив окна

    Excel = ПолучитьCOMОбъект(, «Excel.Application»);
    При этом первый параметр нужно оставить пустым. В этом случае при этом подцепится тот файл экселя, который был открыт последним, даже если порядок переключения окон был таким:
    Excel1, Excel2, IE, Проводник, 1С (т.е. что-то и было открытым между 1с и экселевским файлом) — все равно откроется Excel2, потому что он был активен последним.


  7. Пользователь сказал cпасибо:


  8. 20.12.2016, 17:41

    #7

    lilyapo вне форума


    Иногда оказывает помощь


    По умолчанию Re: COM-объект и Excel

    Все получилось!
    Спасибо огромное, фантастика!:dance:


  9. 13.09.2018, 12:20

    #8

    KrisLis вне форума


    Гость форума


    По умолчанию Re: COM-объект и Excel

    Цитата Сообщение от lilyapo
    Посмотреть сообщение

    Все получилось!
    Спасибо огромное, фантастика!:dance:

    Пожалуйста. расскажите, как решили проблему.
    Такая же ситуация на одном из компьютеров. Перепробовали все рекомендации из интернета. Ничего не помогает.


  10. 13.09.2018, 13:10

    #9

    lilyapo вне форума


    Иногда оказывает помощь


    По умолчанию Re: COM-объект и Excel

    Попробуй подключиться к открытому «ручками» экселю

    Как подключиться к запущенному Excel-евскому файлу в реальном времени, изменить его и даже не сохранять, а просто переключить окно на 1С и сразу же выгружать данные в табличную часть, лишь переключив окна

    Excel = ПолучитьCOMОбъект(, «Excel.Application»);
    При этом первый параметр нужно оставить пустым. В этом случае при этом подцепится тот файл экселя, который был открыт последним, даже если порядок переключения окон был таким:
    Excel1, Excel2, IE, Проводник, 1С (т.е. что-то и было открытым между 1с и экселевским файлом) — все равно откроется Excel2, потому что он был активен последним.
    Так я справилась с проблемой


Nikoly
16.07.2011 15:31 Прочитано: 21616

При работе на сервере, регламентного задания, обработка открывает через Excel = Новый COMОбъект(«Excel.Application»); Excel.Application.Workbooks.Open(ИмяФайла) документ, мне выдается ошибка:
Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft Office Excel): Нет доступа к файлу ‘C:1СНовыйДокумент.xls’. Это может быть вызвано одной из следующих причин.
• Имени файла или пути не существует.
• Файл используется другой программой.
• Имя книги, которую вы пытаетесь сохранить, совпадает с именем открытой в данный момент книги.
Если запускаю обработку не в регламентном задании, то все выполняется без ошибок. Подскажите что это за ошибка и как мне читать данные из Excel в регламентном задании?


Изменено 16.07.11 15:32:46 по причине: Другая категория

Yandex
Возможно, вас также заинтересует

Реклама на портале

Nikoly
19.07.2011 18:27 Ответ № 1

http://forum.mista.ru/topic.php?id=522217
Создать папку C:WindowsSysWOW64configsystemprofileDesktop и C:WindowsSystem32configsystemprofileDesktop (в зависимости от разрядности вашей системы)

Подсказка: Для выделения Кода используйте (в редакторе).

Ошибка при вызове метода контекста (Прочитать)

Ошибка при выполнении файловой операции при чтении xls файла методом прочитать объекта ТабличныйДокумент. 

Скрин сообщения

oshibka-pri-vypolnenii-fajlovoj-operatsii

Rambler's Top100

Поиск

Ошибка работы 1С 8 с Excel: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft Office Excel): Нет доступа к файлу

Описание ошибки:
Проявила себя в клиент-серверной базе. Релиз платформы 1С: Предприятие 8.3.13.1644.

Найденные решения:

Полная формулировка ошибки:

{Доработки Документ.УстановкаЦенНоменклатуры.Форма.Доп_ФормаИмпортXLS.Форма(83)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft Office Excel): Нет доступа к файлу ‘C:1C_ArhivТест загрузка прайсов[имя_файла].xlsx’. Это может быть вызвано одной из следующих причин.

• Имени файла или пути не существует.
• Файл используется другой программой.
• Имя книги, которую вы пытаетесь сохранить, совпадает с именем открытой в данный момент книги.

1C 8 Произошла исключительная ситуация (Microsoft Office Excel): Нет доступа к файлу .xlsx

1С 8 работа с Excel Ошибка при вызове метода контекста (Open)

При доработке в расширении для конфигурации 1С: Комплексная автоматизация 8, ред. 2, которая должна загружать данные из файлов Excel и при попытке выполнения в коде РабочаяКнига = ExcelПриложение.WorkBooks.Open(ФормаИмпортXLS.ИмяФайла);. Что удивительно, но в более ранней редакции Комплексной, 1.1, эта проблема не возникала в этом же коде, хотя обе базы на одном сервере.

Проблема оказалась нова для автора этого текста только в 2020 году, хотя самой проблеме достаточно много времени (более 5 лет на момент написания). В обсуждении данной ошибки на сайте infostart.ru «Ошибка открытия файла Excel на сервере» обсуждается несколько предложений по решению проблемы, среди которых наиболее популярный вариант решения. Так же там много попутных предложений по настройке прав на стороне сервера, если вдруг популярный вариант окажется не актуальным.

1C 8

Популярность этого варианта подтверждается исчерпывающим обсуждением и вот на этом ресурсе: «v8.x: [РЕШЕНО] Ошибка при вызове метода контекста (Open) при работе с Excel»

1C 8.2 8.3 Произошла исключительная ситуация (Microsoft Office Excel): Нет доступа к файлу

Проблема была рещена данным простым решением, но обращу внимание на то, что данное действие должно быть выполнено на сервере, а не на локальном рабочем месте.

1C 8 Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация

Оцените, помогло ли Вам предоставленное описание решения ошибки?




© www.azhur-c.ru 2014-2020. Все права защищены. Использование текстов и изображений с данной страницы без письменного разрешения владельца запрещено. При использовании материалов с данной страницы обязательно указание ссылки на данную страницу.

23-09-2020

Журавлев А.С.
(Сайт azhur-c.ru)

Загрузка падает с ошибкой

Я
   Beduin

07.05.15 — 18:58

ЗаписьXML = Новый ЗаписьXML;

ЗаписьXML.ОткрытьФайл(ИмяФайла, «UTF-8»);

{Обработка.ВыгрузкаЗагрузкаДанныхXML.МодульОбъекта(64)}: Ошибка при вызове метода контекста (ОткрытьФайл)

            ЗаписьXML.ОткрытьФайл(ИмяФайла, «UTF-8»);

по причине:

Ошибка доступа к файлу ‘C:UsersAdmin1cDesktopФайл выгрузки.xml’

Режим тонкий клиент. Бухгалтерия КОРП 3.0

В чем причина?

   Beduin

1 — 07.05.15 — 19:00

При чем, если просто открыть файл как текстовый, то все хорошо.

   mehfk

2 — 07.05.15 — 19:03

Нет доступа на запись. Пнуть сисадмина.

   Beduin

3 — 07.05.15 — 19:05

(2) Средствами 1С создал файл и записал его в это папку.

Права есть.

   Beduin

4 — 07.05.15 — 19:13

Это может из-за того что аккаунт от службы сервера не входит в группу администраторов?

   mehfk

5 — 07.05.15 — 19:17

Какое из 4-х слов в первом предложении не понятно?

  

Beduin

6 — 07.05.15 — 20:00

(5) Угу . дело было в этом. Спасибо.

TurboConf — расширение возможностей Конфигуратора 1С

ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку «Обновить» в браузере.

Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.

  1. 20.12.2016, 13:59

    #1

    lilyapo вне форума


    Иногда оказывает помощь


    По умолчанию COM-объект и Excel

    Создаю COM-объект и пытаюсь открыть файл Excel:
    ex=Новый ComОбъект(«Excel.Application»);
    ex.WorkBooks.Open(Файл);
    Файл существует, COM-объект создается, но при открытии файла Excel выдается сообщение:

    Ошибка при вызове метода контекста (Open)
    ex.WorkBooks.Open(Файл);
    по причине:
    Неизвестная ошибка
    Сталкиваюсь с этим впервые, на других компах всю жизнь все работает, с любой платформой 8.3
    Если что-то с Excel, то что?


  2. 20.12.2016, 15:25

    #2

    avm3110 вне форума


    Гордость форума PRO


    По умолчанию Re: COM-объект и Excel

    Цитата Сообщение от lilyapo
    Посмотреть сообщение

    Создаю COM-объект и пытаюсь открыть файл Excel:
    ex=Новый ComОбъект(«Excel.Application»);
    ex.WorkBooks.Open(Файл);
    Файл существует, COM-объект создается, но при открытии файла Excel выдается сообщение:

    Ошибка при вызове метода контекста (Open)
    ex.WorkBooks.Open(Файл);
    по причине:
    Неизвестная ошибка
    Сталкиваюсь с этим впервые, на других компах всю жизнь все работает, с любой платформой 8.3
    Если что-то с Excel, то что?

    Ты открываешь Апликайшон — а как ты это открываешь (интерактивно или же на сервере)? Опять же у тебя какой эксель (32-х разрядный или же 64-х разрядный) и в каком контексте пытаешься открыть (в 32-х разрядном клиенте или же на стороне 64-х разрядного сервера)?


  3. 20.12.2016, 15:55

    #3

    lilyapo вне форума


    Иногда оказывает помощь


    По умолчанию Re: COM-объект и Excel

    Все очень просто.
    Файловая база.
    Excel 2010. Файл лежит на том же диске, что и база и открывающая его обработка.
    Никакого клиент-серверного режима нет.


  4. 20.12.2016, 16:31

    #4

    avm3110 вне форума


    Гордость форума PRO


    По умолчанию Re: COM-объект и Excel

    А попробуй «завернуть» в Попытку

    Что выдаст?

    Попытка
    Excel = Новый COMОбъект(«Excel.Application»);
    Excel.WorkBooks.Open(ИмяФайла);
    Состояние(«Обработка файла Microsoft Excel…»);
    Исключение
    Сообщить(«Ошибка при открытии файла с помощью Excel! Загрузка не будет произведена!»);
    Сообщить(ОписаниеОшибки());
    Возврат;
    КонецПопытки;


  5. 20.12.2016, 17:04

    #5

    lilyapo вне форума


    Иногда оказывает помощь


    По умолчанию Re: COM-объект и Excel

    Все то же самое.
    Ошибка при вызове метода контекста (Open): Неизвестная ошибка
    ОписаниеОшибки()=»»


  6. 20.12.2016, 17:25

    #6

    avm3110 вне форума


    Гордость форума PRO


    По умолчанию Re: COM-объект и Excel

    [QUOTE=lilyapo;469920]Все то же самое.
    Ошибка при вызове метода контекста (Open): Неизвестная ошибка

    похоже у тебя проблема с com-ом. А у тебя Excel нормально в реестре зареген? Ты его видишь в com-объектах?

    Попробуй подключиться к открытому «ручками» экселю

    Как подключиться к запущенному Excel-евскому файлу в реальном времени, изменить его и даже не сохранять, а просто переключить окно на 1С и сразу же выгружать данные в табличную часть, лишь переключив окна

    Excel = ПолучитьCOMОбъект(, «Excel.Application»);
    При этом первый параметр нужно оставить пустым. В этом случае при этом подцепится тот файл экселя, который был открыт последним, даже если порядок переключения окон был таким:
    Excel1, Excel2, IE, Проводник, 1С (т.е. что-то и было открытым между 1с и экселевским файлом) — все равно откроется Excel2, потому что он был активен последним.


  7. Пользователь сказал cпасибо:


  8. 20.12.2016, 17:41

    #7

    lilyapo вне форума


    Иногда оказывает помощь


    По умолчанию Re: COM-объект и Excel

    Все получилось!
    Спасибо огромное, фантастика!:dance:


  9. 13.09.2018, 12:20

    #8

    KrisLis вне форума


    Гость форума


    По умолчанию Re: COM-объект и Excel

    Цитата Сообщение от lilyapo
    Посмотреть сообщение

    Все получилось!
    Спасибо огромное, фантастика!:dance:

    Пожалуйста. расскажите, как решили проблему.
    Такая же ситуация на одном из компьютеров. Перепробовали все рекомендации из интернета. Ничего не помогает.


  10. 13.09.2018, 13:10

    #9

    lilyapo вне форума


    Иногда оказывает помощь


    По умолчанию Re: COM-объект и Excel

    Попробуй подключиться к открытому «ручками» экселю

    Как подключиться к запущенному Excel-евскому файлу в реальном времени, изменить его и даже не сохранять, а просто переключить окно на 1С и сразу же выгружать данные в табличную часть, лишь переключив окна

    Excel = ПолучитьCOMОбъект(, «Excel.Application»);
    При этом первый параметр нужно оставить пустым. В этом случае при этом подцепится тот файл экселя, который был открыт последним, даже если порядок переключения окон был таким:
    Excel1, Excel2, IE, Проводник, 1С (т.е. что-то и было открытым между 1с и экселевским файлом) — все равно откроется Excel2, потому что он был активен последним.
    Так я справилась с проблемой


Nikoly
16.07.2011 15:31 Прочитано: 21616

При работе на сервере, регламентного задания, обработка открывает через Excel = Новый COMОбъект(«Excel.Application»); Excel.Application.Workbooks.Open(ИмяФайла) документ, мне выдается ошибка:
Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft Office Excel): Нет доступа к файлу ‘C:1СНовыйДокумент.xls’. Это может быть вызвано одной из следующих причин.
• Имени файла или пути не существует.
• Файл используется другой программой.
• Имя книги, которую вы пытаетесь сохранить, совпадает с именем открытой в данный момент книги.
Если запускаю обработку не в регламентном задании, то все выполняется без ошибок. Подскажите что это за ошибка и как мне читать данные из Excel в регламентном задании?


Изменено 16.07.11 15:32:46 по причине: Другая категория

Yandex
Возможно, вас также заинтересует

Реклама на портале

Nikoly
19.07.2011 18:27 Ответ № 1

http://forum.mista.ru/topic.php?id=522217
Создать папку C:WindowsSysWOW64configsystemprofileDesktop и C:WindowsSystem32configsystemprofileDesktop (в зависимости от разрядности вашей системы)

Подсказка: Для выделения Кода используйте (в редакторе).

Ошибка при вызове метода контекста (Прочитать)

Ошибка при выполнении файловой операции при чтении xls файла методом прочитать объекта ТабличныйДокумент. 

Скрин сообщения

oshibka-pri-vypolnenii-fajlovoj-operatsii

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

В чем плюсы такой методики чтения

  • Всё производится встроенными средствами;
  • достаточно быстро;
  • код в 2 строки
  • данные не требуется преобразовывать, обычно всё считывается достаточно корректно, их можно проверить средствами 1С.
  • возможно считывать значения ячеек как текст (без авто-преобразования),
  • доступно на сервере, где excel вообще нельзя установить (linux, OSx).

Причина ошибки

Отличительной особенностью, вызывающей данную ошибку, является то, что 1С нужен монопольный доступ на время считывания.

Если же документ открыт, то выходит ошибка при выполнении файловой операции чтения.

COM-Объекта Excel.Application в данном ситуации просто открывает еще один экземпляр, а также  в нём можно скрыть отображение сообшения о режиме «чтения».

Другой причиной может быть: отсутствие прав на чтение этого файла

Решение:

Закрыть открытую в Excel (или другой программе) книгу, проверить права на файл (возможность открытия в его в Excel, косвенный признак его наличия)

Реклама — величайшее искусство XX века.

  1. Доброе время суток.
    Проблема заключается в следующем внешняя обработка загрузки из Эксель на личном компьютере работает нормально, но на РДП выдает ошибку «ошибка при вызове метода контекста (open)» там и там база файловая.Переделал все что нашел в инете
    — создал папку C:WindowsSysWOW64configsystemprofileDesktop ;
    — Настройки DCOM добавил пользователя;
    — И проделал «А решается это так:
    на сервере убиваем excel (taskkill /im excel.exe /f)
    открываем оснастку «Службы компонентов» (Пуск->Администрирование->Службы компонентов)
    в ней раскрываем ветку Службы компонентов->Компьютеры->Мой компьютер->Настройка DCOM
    справа в списке находим Microsoft Excel Application, открываем Свойства, вкладка Удостоверение, выбираем «Текущий пользователь», ОК.
    Готово»
    И все равно выскакиваю по ошибке.
    Есть у кого то предложение что можно сделать еще.

  2. Online

    nomad_irk
    Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    9.889
    Симпатии:
    1.029
    Баллы:
    204

    покпжите текст ошибки полностью.
    из всего там нужно только последнее действие.

    что будет, если интерактивно запустить эксель и открыть этот же файл?

  3. {ВнешняяОбработка.ВнешняяОбработка1.Форма.Форма.Форма(35)}: Ошибка при вызове метода контекста (Open)
    КНИГА = Excel.WorkBooks.Open(ИмяФайла);
    по причине:
    Неизвестная ошибка

  4. Запустил интерактивно и все равно ошибка
    Опечатки нет пере набрал Open раз 10

  5. Online

    nomad_irk
    Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    9.889
    Симпатии:
    1.029
    Баллы:
    204

    при интерактивном открытии файла, что говорит?

  6. Доброго,
    Клиент какой запускается на RDP, 32/64 бит ?

  7. Добрый день.При интерактивном открытии ничего не пишет.
    RDP клиент запускается 64 и офис 64

  8. Похожая проблема вылечилась использованием 32 битного клиента (мы можем это себе позволить),
    еще, как вариант, я делал через формирование файла на сервере и передачу его на клиента
    С.П.- : «ПоместитьВоВременноеХранилище», «ПолучитьФайлы», «ОписаниеПередаваемогоФайла»
    1.На сервере получаю макет, передаю его на клиента через «ПоместитьВоВременноеХранилище»/»ПолучитьФайлы»
    2. На клиенте формируется документ через COM : «Новый COMОбъект(«Word.Application»)»
    3. На клиенте заполняется макет, тем или иным способом

  9. Offline

    ExtreMe
    Опытный в 1С

    Регистрация:
    13 сен 2014
    Сообщения:
    89
    Симпатии:
    8
    Баллы:
    29

    мой набор: win8.1 64x, Excel 2016 64х, 1c 8.3.13.1513 64х и текст обработки

        Путь    = Объект.ИмяФайла; // тип Строка
    
        Попытка
            ОбъектExcel = Новый COMОбъект("Excel.Application");
        Исключение
            Возврат "Ошибка открытия MS Excel";
        КонецПопытки;
    
        Попытка
            ОбъектExcel.WorkBooks.Open(Путь);
        Исключение
            ОбъектExcel.DisplayAlerts = 0;
            ОбъектExcel.Quit();
            ОбъектExcel.DisplayAlerts = 1;
            ОписаниеОшибки = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке());
            Возврат ОписаниеОшибки;
        КонецПопытки;
    

    проверил Службы компонентов->Компьютеры->Мой компьютер->Настройка DCOM->Microsoft Excel Application->Свойства->Удостоверение
    Выбран «Текущий пользователь»

    Создал папку Desktop по обоим путям C:WindowsSysWOW64configsystemprofileDesktop и C:WindowsSystem32configsystemprofileDesktop

    И хренасдва. всё равно выдаёт ошибку на стройке ОбъектExcel.WorkBooks.Open(Путь); и уходит в исключение :(

    {ВнешняяОбработка.ЗагрузкаИзExcel.Форма.Форма.Форма(53)}: Ошибка при вызове метода контекста (Open)
            ОбъектExcel.WorkBooks.Open(Путь);
    по причине:
    Неизвестная ошибка
    

    — Объединение сообщений, 17 янв 2019

    попробовал под 1c 8.3.13.1513 86х, то же самое
    после каждого запуска обработки в диспетчере остаётся висеть процесс Excel’я, я его каждый раз завершаю

    Последнее редактирование: 17 янв 2019

  10. Offline

    ExtreMe
    Опытный в 1С

    Регистрация:
    13 сен 2014
    Сообщения:
    89
    Симпатии:
    8
    Баллы:
    29

    одинаковая ситуация с тонким и толстым клиентом

  11. Offline

    ExtreMe
    Опытный в 1С

    Регистрация:
    13 сен 2014
    Сообщения:
    89
    Симпатии:
    8
    Баллы:
    29

    пока решение нашёл в таком варианте:
    открыть файл Excel
    сделать поправки в коде

        Путь    = Объект.ИмяФайла; 
       
        Попытка
            //ОбъектExcel = Новый COMОбъект("Excel.Application");
            ОбъектExcel = ПолучитьCOMОбъект(, "Excel.Application");
        Исключение
            ОписаниеОшибки = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке());
            Возврат ОписаниеОшибки;
        КонецПопытки;
       
        //Попытка
        //    ОбъектExcel.WorkBooks.Open(Путь);
        //Исключение
        //    ОбъектExcel.DisplayAlerts = 0; 
        //    ОбъектExcel.Quit();
        //    ОбъектExcel.DisplayAlerts = 1;
        //    ОписаниеОшибки = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке());
        //    Возврат ОписаниеОшибки;
        //КонецПопытки;
    

    так открытый файл подхватываться и нормально все работает, но хотелось ты без этих танцев с бубном…

    — Объединение сообщений, 17 янв 2019

    не совсем понял настройки безопасности
    Службы компонентов->Компьютеры->Мой компьютер->Настройка DCOM->Microsoft Excel Application->Свойства->Безопасность
    добавляя там пользователя, у меня то проходило чтение то нет
    стабильной работы обработки при первом варианте кода не дало

    Последнее редактирование: 17 янв 2019

  12. Offline

    ExtreMe
    Опытный в 1С

    Регистрация:
    13 сен 2014
    Сообщения:
    89
    Симпатии:
    8
    Баллы:
    29

    Последнее редактирование: 20 янв 2019

  13. Offline

    evgkup

    Регистрация:
    9 авг 2019
    Сообщения:
    1
    Симпатии:
    0
    Баллы:
    1

    Была аналогичная проблема на сервере
    Помогло следующее (отображение открывающегося приложения excel)
    Попытка
    лпИмяФайла = «c:tmp1.xls»;
    лпExcel = Новый COMОбъект(«Excel.Application»);
    лпExcel.Visible = 1;
    лпExcel.DisplayAlerts = 0;
    лпExcel.WorkBooks.Open(лпИмяФайла);
    Исключение
    лпExcel.Quit();
    Сообщить(ОписаниеОшибки());
    Возврат;
    КонецПопытки;
    …набор действий

    Последнее редактирование: 9 авг 2019

1

2

Показывать по
10
20
40
сообщений

Новая тема

Ответить

Zebraaa

Дата регистрации: 16.03.2012
Сообщений: 23

Платформа 1с 8.2.15.310, релиз 1.0.12.2 При открытии стандартного отчета Карточка субконто выдается сообщение: Ошибка при вызове метода контекста (Найти поле). Если доступные поля. Найти поле(Отборы.Элементы [Я]_ Левое значение).=Неопределенно Тогда по причине Несоответствии типов (параметр номер 1) <br>Причем такая ошибка выходит только у одного пользователя, у других все нормально открывается.

Sh_S

Дата регистрации: 02.03.2007
Сообщений: 7730

где-то стоит отбор со сравнением с пустым значением, зайдите в настройку и посмотрите

Zebraaa

Дата регистрации: 16.03.2012
Сообщений: 23

А можно ,пожалуиста, по подробнее!

Sh_S

Дата регистрации: 02.03.2007
Сообщений: 7730

мне кажется теперь, что я не права. Под рукой бухгалтерии нет, но в УПП и ЗУПе если поставить отбор по пустому значению выходит просто шапка отчета. Но все-таки посмотрите внимательно на отборы в настройках.

Zebraaa

Дата регистрации: 16.03.2012
Сообщений: 23

Как я посмотрю, если я даже открыть отчет не могу.Выбираю Карточку субконто и сразу сообщение выдается, выше написанное.

Денис (САМАРА)

Дата регистрации: 09.04.2008
Сообщений: 8351

Платформу обновить до последней. Выполнить тестирование и исправление со всеми флагами.

Zebraaa

Дата регистрации: 16.03.2012
Сообщений: 23

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

Денис (САМАРА)

Дата регистрации: 09.04.2008
Сообщений: 8351

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

Zebraaa

Дата регистрации: 16.03.2012
Сообщений: 23

Кстати, самое интересное, что сохраненных настроек по этому пользователю нет, а по другим есть.

Денис (САМАРА)

Дата регистрации: 09.04.2008
Сообщений: 8351

Имеются ввиду «Сохраненные варианты отчета».

Читают тему:

Понравилась статья? Поделить с друзьями:
  • Ошибка при вызове метода контекста зарегистрироватьизменения недопустимое значение параметра
  • Ошибка при вызове метода контекста занять сканер
  • Ошибка при вызове метода контекста закрыть форму
  • Ошибка при вызове метода контекста закончитьчтение
  • Ошибка при вызове метода контекста загрузить колонку