![]() |
|
Хочу откорректировать ексель | ☑ | ||
---|---|---|---|---|
0
lamme
16.02.19
✎
19:22
|
УФ
на сервере ФайлA= получитьимявременногофайла("xls"); МакетA = получитьобщиймакет("A_xls"); МакетA .Записать( ФайлA); Эксель = Новый COMОбъект("Excel.Application"); Эксель .WorkBooks.Open(ФайлPromUA); ======= ошибка Произошла исключительная ситуация (Microsoft Excel): Приложению Microsoft Excel не удается получить доступ к файлу "C:\TMP\МакетPromUA.xls". Это может быть вызвано одной из следующих причин. • Указан несуществующий файл или путь. • Файл используется другой программой. • Имя книги, которую вы пытаетесь сохранить, совпадает с именем другой книги, открытой в данный момент. почему? сервер - локалхост один комп я на рдп полодил файл на C:\TMP\ Перерулил открытие файла напрямую тз этой папки результат тот же что я делаю не так? |
|||
1
RomanYS
16.02.19
✎
19:26
|
Так файлы разные)))
|
|||
2
Василий Алибабаевич
16.02.19
✎
19:31
|
(0) Странно... Записываем
получитьимявременногофайла("xls"); а открываем "C:\TMP\МакетPromUA.xls" где логика? |
|||
3
lamme
16.02.19
✎
19:33
|
стоп
это ошибка именно тут в коде - это один файл тут не закоментирован |
|||
4
George Wheels
16.02.19
✎
19:44
|
Где-то ранее через COMОбъект("Excel.Application"); этот файл уже был открыт. Или просто в Excell открыт файл. (Или злобный юзер нашёл способ добраться до сервера и отслеживать новые файлы - а вдруг там что-то интересное).
|
|||
5
RomanYS
16.02.19
✎
19:45
|
(3) если файл существует просто открой его экселем, может узнаешь подробности какие. Но придется это делать на сервере
|
|||
6
George Wheels
16.02.19
✎
19:50
|
Посмотри через Диспетчер задач - в процессах висит незавершённый EXCEL.EXE
|
|||
7
Casey1984
16.02.19
✎
19:52
|
Я не понял, как ты его на сервере открываешь? Весь код в процедуре &НаСервере ?
|
|||
8
Casey1984
16.02.19
✎
19:53
|
(7) А вижу, один комп :-/
|
|||
9
lamme
16.02.19
✎
20:01
|
6
не висит 7 один комп 5 файл существует и открывается нормальноэексель лицензионный |
|||
10
lamme
16.02.19
✎
20:01
|
4
нет я ему посовываю файл из темпа не открывает файл чистый |
|||
11
RomanYS
16.02.19
✎
20:03
|
(10) Эксель не умеет открывать даже разные файлы, если они одинаково называются
|
|||
12
lamme
16.02.19
✎
20:10
|
11
не уловил |
|||
13
lamme
16.02.19
✎
20:25
|
я ему четко указываю
C:\TMP\МакетPromUA.xls |
|||
14
lamme
16.02.19
✎
20:25
|
ФайлPromUA = "C:\TMP\МакетPromUA.xls";
Эксель = Новый COMОбъект("Excel.Application"); Эксель .WorkBooks.Open(ФайлPromUA); |
|||
15
RomanYS
16.02.19
✎
20:30
|
(12)(13) Если уже открыт файл МакетPromUA.xls из любой другой папки, получишь ошибку
|
|||
16
lamme
16.02.19
✎
20:32
|
Он не открыт нигде
точкой останки становлюсь на Эксель .WorkBooks.Open(ФайлPromUA); смотрю в диспетчере задач екселей нет открытых приложений |
|||
17
RomanYS
16.02.19
✎
20:36
|
(16) ты на сервере смотришь?
|
|||
18
Василий Алибабаевич
16.02.19
✎
20:45
|
(16) Смотреть нужно процессы. А не "открытых приложений".
После вот этого : Эксель = Новый COMОбъект("Excel.Application"); Excel уже должен быть в памяти. Вместо вот так : " Эксель = Новый COMОбъект("Excel.Application"); Эксель .WorkBooks.Open(ФайлPromUA); " Сделай : Эксель = Новый COMОбъект("Excel.Application"); Эксель.Visible = Истина; Эксель .WorkBooks.Open(ФайлPromUA); и здраво содрогнись. |
|||
19
Василий Алибабаевич
16.02.19
✎
20:46
|
+ (18) Скорее всего там висит вопрос за открытие файла из неизвестного источника. Ну или что-то типа того.
|
|||
20
lamme
16.02.19
✎
21:09
|
18
сделал в ошибку уходит на экране ничего не открывается |
|||
21
lamme
16.02.19
✎
21:29
|
17
на сервере где ж еще |
|||
22
Casey1984
16.02.19
✎
21:32
|
Не может Макет держать файл? По идее 1С-ка должна освобождать если не используется :-/
|
|||
23
lamme
16.02.19
✎
21:35
|
а вот тут тогда кто держит что
ФайлPromUA = "C:\TMP\МакетPromUA.xls"; Эксель = Новый COMОбъект("Excel.Application"); Эксель .WorkBooks.Open(ФайлPromUA); |
|||
24
lamme
16.02.19
✎
21:37
|
хех
а тупо наклиенте - работает |
|||
25
lamme
16.02.19
✎
21:37
|
ну и ...
какие идеи? |
|||
26
lamme
16.02.19
✎
21:38
|
те
&НаСервере Процедура Команда1НаСервере() ТУТ НЕ РАБОТАЕТ // Вставить содержимое обработчика. ФайлPromUA = "C:\TMP\МакетPromUA.xls"; Эксель = Новый COMОбъект("Excel.Application"); Эксель .WorkBooks.Open(ФайлPromUA); КонецПроцедуры &НаКлиенте Процедура Команда1(Команда) ТУТ РАБОТАЕТ ФайлPromUA = "C:\TMP\МакетPromUA.xls"; Эксель = Новый COMОбъект("Excel.Application"); Эксель .WorkBooks.Open(ФайлPromUA); Команда1НаСервере(); КонецПроцедуры |
|||
27
lamme
16.02.19
✎
21:39
|
тогда точно - сервер не имеет доступа к этому файлу
|
|||
28
lamme
16.02.19
✎
21:40
|
тогда почему тут не работает
ФайлA= получитьимявременногофайла("xls"); МакетA = получитьобщиймакет("A_xls"); МакетA .Записать( ФайлA); Эксель = Новый COMОбъект("Excel.Application"); Эксель .WorkBooks.Open(ФайлPromUA); |
|||
29
Casey1984
16.02.19
✎
21:40
|
(25) вот здесь после 3-й картинки на твое похоже: http://catalog.mista.ru/public/196323/
|
|||
30
lamme
16.02.19
✎
21:40
|
это же все на сервере крутиться
|
|||
31
Casey1984
16.02.19
✎
21:43
|
(24) потому что на клиенте не процесс службы сервера 1С см (29)
|
|||
32
lamme
16.02.19
✎
22:03
|
права дал как в 29
не взлетело |
|||
33
Casey1984
16.02.19
✎
22:04
|
(32) права до картинки, а после папка создать, я пишу после картинки ;-)
|
|||
34
Casey1984
16.02.19
✎
22:06
|
(32) Необходимо создать папку
для Windows Server x64 C:\Windows\SysWOW64\config\systemprofile\Desktop для Windows Server x86 C:\Windows\System32\config\systemprofile\Desktop |
|||
35
lamme
16.02.19
✎
22:30
|
34
а если это вин10 ? |
|||
36
lamme
16.02.19
✎
22:31
|
во бл...
для Windows Server x86 C:\Windows\System32\config\systemprofile\Desktop заработало на вин10 |
|||
37
Casey1984
16.02.19
✎
22:43
|
Открываю курсы гугления!
|
|||
38
lamme
16.02.19
✎
22:45
|
щас другой трабл
Книга.SaveAs(ФайлИтоговый,-4143); висит .. а висит на каком то вопросе скорее всего им файла новое - только что полученное |
|||
39
lamme
16.02.19
✎
22:48
|
ну да .. там вопрос о совместимости висит .. но это уже решаемо
|
|||
40
Fram
16.02.19
✎
23:01
|
При записи ничего не забыл?
|
|||
41
lamme
16.02.19
✎
23:56
|
40
нет - все работает указали имя нового тмп файла записали ексель объект закрыли всем спасибо огромное спасибо - 34 |
|||
42
Фокусник
17.02.19
✎
07:57
|
(41) обращения через номер поста лучше в скобках указывать, тогда справа ссылка будет ;)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |