0
- 14.02.2019 - 09:24
|
Не думал, что возникнет такая проблема. Файлов Excel перечитал уже несметное количество. У клиента из УТ11 моей обработкой закачивается прайс, все работало уже пару лет и вот после нового выдает ошибку при открытии файла. Пишет, что "неизвестная ошибка" Какие отличия от того года: 1.Обновил платформу на 8.3.12.1685(в ней появились косяки с функционированием горячих клавиш и правой кнопки мыши. На 8.3.13.1690 приложение вообще периодически вылетало). Пока вернулись к 8.3.12.1685 2. Обновили УТ до 11.4.6.188 3. Excel 2010 при открытии руками выдавал сообщение про сбой активации. Говорит, что устранил, сегодня я еще не проверял. Прайс не закачивается, ошибка не ушла У меня на компе этот же файл прекрасно обрабатывается, но у меня стоит старый, добрый Excel 2007 | |
1
- 14.02.2019 - 09:51
| Как читаешь то? ТабДок.Прочитать()? | |
2
- 14.02.2019 - 09:59
|
(1)до чтения не доходит, файл перестал открываться Попытка Excel = Новый COMОбъект("Excel.Application"); WB = Excel.Workbooks.Open(ПутьКФайлу); | |
3
- 14.02.2019 - 10:31
| Попробуй зарегистрировать comcntr.dll из 8.3.12.1685. | |
4
- 14.02.2019 - 10:34
|
(3)попробую вечером, но я ранее никогда такого не делал, без этого работало. Вот для обмена ЗУП И БП, действительно требуется регистрация | |
5
- 14.02.2019 - 10:38
| Если это означает изменение настроек запуска - то работаешь из 8.3.12.1685 а comcntr.dll из 8.3.13.1690 | |
6
- 14.02.2019 - 10:39
| C:\Program Files (x86)\1cv8\[версия платформы]\bin\comcntr.dll | |
7
- 14.02.2019 - 10:54
| 2-USSR > куда не доходит? 1С умеет читать эксель без всяких комобъектов | |
8
- 14.02.2019 - 11:07
| Ну дык от этого и плясать. мс офис просто так от нечего делать такие сообщения не станет выдавать. типа крякнул повторно еще раз :))) В идеале снести офис, слегка подчистить реестр (типа RegCleaner), перезагрузить и поставить офис заново. | |
9
- 14.02.2019 - 11:23
|
(7)я знаю, но все работало и переделывать не хочется (4)я это знаю, я же написал, попробую, но по моему не в этом дело (8)готов со всем согласиться. я не знаю как и кто там крякал )) | |
10
- 14.02.2019 - 12:02
| А может быть проблема в том, что данный файл на тот момент уже открыт? Доводилось сталкиваться с ситуацией, что открытый экселовский файл никак визуально не отображается. Приходилось открывать какой-нибудь другой экселовский файл, чтобы увидеть ранее открытый файл. После чего этот файл вручную закрывал. А дальше - все работало, как положено. | |
11
- 14.02.2019 - 12:15
| (10)в диспетчере задач Excel процесса не было | |
12
- 14.02.2019 - 12:35
|
11-USSR > Через диспетчер задач возникшую у меня проблему не рассматривал... Хохмы ради, можно открыть какой-нибудь другой экселовский файл. Если проблемный файл никак не проявит себя, то это другой случай. | |
13
- 15.02.2019 - 04:26
|
C:\Program Files (x86)\1cv8\[версия платформы]\bin\comcntr.dll - регистрация ожидаемо не помогла Установил 8.3.14, переустановил Excel, с удалением предыдущего, но без рекомендуемой уважаемыми БШ и самим Excel (не было возможности удаленно это сделать без потери связи), пока ничего не помогло. На моем компе все работает, даже на другой конфигурации. Но в реестре старый офис остался и еще кое где, начисто он не удалился | |
14
- 15.02.2019 - 17:41
| Что значит ожидаемо. Если все случилось после манипуляций с платформой то comcntr.dll первый в рядах подозреваемых. К то же начинать надо с самого простого. Дальше попробуй написать ПолучитьCOMОбъект(, "Excel.Application"). Первый параметр пустой. Если ошибка - то проблема не с файлом. Попробуй создать другие ком объекты (тот же word или 1С). Что бы уже точно понимать где ошибка. | |
15
- 15.02.2019 - 20:37
| (14)Ожидаемо - это то, что COM объект создается, но файд не открывается, я об этом сразу написал. И я никогда не регистрировал эту компоненту для целей чтения из Excel. Вот например для связи разных баз по COM - это да | |
16
- 16.02.2019 - 08:38
|
Короче, не выходит каменный цветок. С помощью MicrosoftProgram_Install_and_Uninstall вроде бы вычистил Office 2010. Снес Оffice 2007. Снова поставил. Интерактивно файлы открываются мгновенно и без проблем. Скопировал базу к себе на комп. Все работает, причем для обоих установленных у меня офисов (2003,2007). При создании COM объекта указывал и Excel.Application и Excel.Application.11 и Excel.Application.12. У проблемного человека так и не работает. При открытии файла "Неизвестная ошибка". И у него и у меня Windows 7 msx. Пока единственное отличие нашел в том, что у него есть служба Office Software Protection Control. Я ее и останавливали запускал, никакого эффекта. Надо вечером попробовать открыть файл Word. Какая то засада. В инете эта тема встречается, но она мусолится вокруг клиент-серверной 1с, у меня файловая. В службах компонентов DCOM Excel не нашел, ни по имени, ни по идентификатору продукта. У меня на компе тоже не нашел. | |
17
- 17.02.2019 - 10:07
| Сделал вариант на ADO. Визуально кажется несколько медленнее. Но причину бунта Excel.Application надо найти | |
18
- 17.02.2019 - 10:27
| Ты пробовал ПолучитьCOMОбъект(, "Excel.Application") (При включенном Excel) и ПолучитьCOMОбъект("", "Excel.Application") ? | |
19
- 17.02.2019 - 10:56
|
(18)Нет, я так не пробовал. Посмотрю на досуге. Но вариант не очень, читать из уже открытого файла. Тем более в моей обработке возможна обработка сразу с двух файлов, есть там некоторые особенности ценообразования. Хотелось бы все-таки выбрать имена файлов и просто нажать кнопочку "Заполнить", как было раньше ) Как и у меня на компе, пробовал и на другой тачке на WIN 2008 Server. | |
20
- 17.02.2019 - 11:31
| (18)Попробовал. Заполнение из открытого файла с помощью ПолучитьCOMОбъект(, "Excel.Application") работает | |
21
- 17.02.2019 - 11:38
|
(18)а так тоже не работает: Excel = ПолучитьCOMОбъект("", "Excel.Application"); WB = Excel.Workbooks.Open(ПолноеИмяФайла); | |
22
- 19.02.2019 - 14:17
| ????? | |
23
- 19.02.2019 - 14:44
| (22) ну что непонятно, время идёт, а прайсы не заканчиваются. Пришлось переделать. Но это не путь к успеху. Причина так и не выяснена | |
24
- 19.02.2019 - 15:23
| 23-USSR > если переделывать, почему не средствами 1С? | |
25
- 19.02.2019 - 16:42
|
(24)Тоже средствами 1с, но без Excel.Application Connection = Новый COMОбъект("ADODB.Connection"); и тд.) | |
26
- 19.02.2019 - 18:43
|
ADODB - средство 1С? ну-ну ЗЫ. Раз уж переписывал, переписал бы по-нормальному | |
27
- 19.02.2019 - 19:49
| (27)это вопрос терминологический. 1с под виндой позволяет мне создать этот объект, значит можно считать что средствами 1с) а как по нормальному?) Если честно, то мне больше всего нравится именно excel.applicstion, попадались прайсы, которые без него мне не обработать. | |
28
- 19.02.2019 - 21:42
| ТабличныйДокумент.Прочитать() пару лет с 8.3.8 вроде бы точно юзаем | |
29
- 19.02.2019 - 22:12
| (28)Этот пробел в знаниях обязательно закрою, но Excel.Application все равно бывает нужен ) И на чтение, и на запись. На 7.7 много чего с ним. Правда и обсуждаемый казус тоже впервые, может никогда и не повторится. | |
30
- 20.02.2019 - 09:02
| Недавно наткнулся что Табличный документ 1с 8.3.12 не прочитало, а COM Excell Application прочитал - под расширением xls была сохранена страница html. Excell ругнулся, что формат не его, но все же открыл. А так многие выгрузки переделал, в разы ж быстрее читает. | |
31
- 01.03.2019 - 16:49
|
23-USSR > Как вариант, может быть проблема заполнения шапки документа. Тоже наблюдал случай, когда Excel не мог начать чтение документа. По подозрению проблемы в шапке - очистил шапку и подменил на шапку из читаемого файла - чтение прошло нормально. - Вероятно, при формировании шапки документа, в шапку прошли недокументированные символы. | |
32
- 01.03.2019 - 17:13
| Даже пустой файл создать не может. Там проблема с разрешениями (ИМХО). Решается большим бубном. | |
33
- 01.03.2019 - 18:36
| (31)Про какую шапку Вы говорите ? я не понял. Файл вообще не открывается. Причем пробовал этот же файл читать еще на 4 компах, 3 в терминале. Все работает. Интерактивно и на проблемном компе открывается и даже читается по COM.Но только предварительно открытый | |
| Интернет-форум Краснодарского края и Краснодара |