|
Блокировка документа Excel | ☑ | ||
---|---|---|---|---|
0
DJZT
09.10.13
✎
14:46
|
Во время заполнения Excel документа из 1С юзверг может клацать по ячейкам в доке и тем самым сбивая заполнение. Сразу же вылетает ошибка. Как можно заблокировать документ на время выполнения? Visible не предлагать!
|
|||
1
dk
09.10.13
✎
14:56
|
Попытка
Скрипт=СоздатьОбъект("MSScriptControl.ScriptControl"); Скрипт.language="javascript"; AppExcel=Скрипт.Eval("new ActiveXObject('Excel.Application')"); Исключение Попытка AppExcel=СоздатьОбъект("Excel.Application"); Исключение Сообщить("Не удалось открыть Excel"); Возврат; КонецПопытки; КонецПопытки; |
|||
2
Рэйв
09.10.13
✎
14:58
|
(0)А зачем ты его в открытом виде заполняешь? Заполни и в конце открой. И пусть себе клацает сколько хочет.
|
|||
3
Fish
09.10.13
✎
15:00
|
(2) +100. ИМХО это изврат, заполнять документ, который открыт у пользователя.
|
|||
4
DJZT
09.10.13
✎
15:02
|
(2) пользователи нынче нервные. Документ заполняется долго. может достигать 20-25 минут. Хотят видеть, что происходит. Служебных сообщений им видите ли не хватает))
(1) Интересная штука. Такого не видел. AppExcel - Это я так понял ссылка на эксель? Я делаю Эксель = Новый COMОбъект("Excel.Application"); Так прокатит? |
|||
5
DJZT
09.10.13
✎
15:05
|
(1) Чёт я вообще не понял. Это не блокировка. Это просто открытие. Только через "другое место".
|
|||
6
Рэйв
09.10.13
✎
15:05
|
(4)Мало ли что они хотят. Ты им еще код выведи на экран пусть любуются раз такие любопытные:-)
Сделай в строке состояния строку "Идет заполнение документа "+счетчик. Пусть медитируют |
|||
7
Fish
09.10.13
✎
15:07
|
(4) "Документ заполняется долго. может достигать 20-25 минут" - это что же за документ такой? Может, лучше подумать над оптимизацией заполнения?
|
|||
8
DJZT
09.10.13
✎
15:08
|
(6) Да есть такое дело. И счетчиков много)) Бухгалтера - они же нервные)) ладно. Что нить придумаю с Visible.
|
|||
9
DJZT
09.10.13
✎
15:09
|
(7) Оптимизация - это одно. А вот заполнение 1200+ ячек через термина это другое. Сервера разнесены.
|
|||
10
DJZT
09.10.13
✎
15:10
|
(7) И это только шаблон. ещё есть вспомогательный. ТВ нем примерно (5000+)*5
|
|||
11
Рэйв
09.10.13
✎
15:10
|
(8)Я обычно стараюсь для самых нервных делать не просто счетчик, а типа
"Обработано "+ТекСчетчик+" из "+Всего Тогда они хоть видят сколько осталось и не бухтят так |
|||
12
Сисой
09.10.13
✎
15:10
|
(0) У меня на этот случай есть форма с индикатором процесса.
Пока идет заполнение пользователь видит изменение индикатора с комментариями. И все нормально. |
|||
13
DJZT
09.10.13
✎
15:11
|
(11) У меня и так 2 счетчика. Один в строке состояния - другой в виде служебных сообщений. В служебке инфа про что ,что и где заполняется. В строке сост - просто процентное состояние
|
|||
14
Fish
09.10.13
✎
15:12
|
(9) И что? У меня есть отчёт, выгружается в Эксель на 13 листов. При этом данные собираются с 5-ти файловых баз по ОЛЕ + ещё куча всяких постобработок напихана. И то отрабатывает максимум за 5 минут.
|
|||
15
Рэйв
09.10.13
✎
15:12
|
(13)Ну тогда их нервность- их проблемы. Забей и делай как правильно.
|
|||
16
DJZT
09.10.13
✎
15:12
|
(12) А индикатор будет работать? Во время обработки у меня вся форма виснет. То есть не отвечает как бы. единственные динамичные места - "Окно служебных сообщений" и Строка состояния
|
|||
17
DJZT
09.10.13
✎
15:13
|
(14) 97 листов олололол
|
|||
18
Fish
09.10.13
✎
15:13
|
(16) "Во время обработки у меня вся форма виснет." Значит, ты что-то делаешь не так.
|
|||
19
Сисой
09.10.13
✎
15:14
|
(16) А это уж как обработка написана.
|
|||
20
Масянька
09.10.13
✎
15:14
|
(16) Вообще-то - окно служебных сообщений добавляет тормоза.
|
|||
21
DJZT
09.10.13
✎
15:14
|
(14) + учти это не локально на одном компе. БД на одном сервере. Сервер 1С - на другом. Клиент на терминале на третем.
|
|||
22
Fish
09.10.13
✎
15:15
|
(21) Ты не поверишь :)
|
|||
23
DJZT
09.10.13
✎
15:15
|
(18) (19) Я думал попробывать через модуль обработки написать, но уже поздно. Да и не дружу с этими модулями. В общем всё в форме напихано
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |