CftClub.ru
Клуб специалистов ЦФТ-Банк

Как отловить момент окончания формирования excel

 
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Уроки ЦФТ-Банк для начинающих
Предыдущая тема :: Следующая тема  
Автор Сообщение
dark_horse
Участник


Вступление в Клуб: 05.08.2021
СообщениеЧт Сен 16, 2021 06:18   Как отловить момент окончания формирования excel Ответить с цитатой
Полезность: Нет оценки
Подскажите, пожалуйста, как можно мою проблему победить: я вызываю операцию, которая формирует xlsx файл на клиенте. Мне необходимо взять полученный файл, отправить на сервер, положить в архив с другими файлами. Проблема в том. что, похоже, когда я обращаюсь к файлу , он еще формируется, не доступен. Следует каким-то образом отследить момент, когда на клиенте xlsx-файл будет готов.
Volod
Эксперт


Вступление в Клуб: 19.09.2007
СообщениеЧт Сен 16, 2021 09:17    Ответить с цитатой
Полезность: Нет оценки
OOXML? Клиент-скрипт?
Эмиралька
Эксперт


Вступление в Клуб: 09.11.2015
СообщениеЧт Сен 16, 2021 10:59   Re: Как отловить момент окончания формирования excel Ответить с цитатой
Полезность: Нет оценки
Цитата:
Подскажите, пожалуйста, как можно мою проблему победить: я вызываю операцию, которая формирует xlsx файл на клиенте. Мне необходимо взять полученный файл, отправить на сервер, положить в архив с другими файлами. Проблема в том. что, похоже, когда я обращаюсь к файлу , он еще формируется, не доступен. Следует каким-то образом отследить момент, когда на клиенте xlsx-файл будет готов.

вариант 1) Формируйте файл на сервере, потом отправляйте на клиент, там открывайте.
вариант 2) после того, как вызвали операцию, можно скомандовать excel сохранить файл, потом его забрать на сервер, и всё это в синхронном режиме. Но нужно более детально погрузиться в проблему. Расскажете?
dark_horse
Участник


Вступление в Клуб: 05.08.2021
СообщениеПт Сен 17, 2021 09:45    Ответить с цитатой
Полезность: Нет оценки
За формирование файла отвечает операция, которую я вызываю. лезть в нее и править нельзя. сам xls формируется на клиенте клинт-скриптом. и даже сохраняется на локальной машине( где и как я могу задавать параметрами операции). Проблема в том, что после вызова операции, формирующей xls, при попытке перенести файл, появляется сообщение, что заданного файла нет. (видимо, еще не закончил формирование). События на сервере и на локале не синхронны. Синхронный режим - это как?
Эмиралька
Эксперт


Вступление в Клуб: 09.11.2015
СообщениеПт Сен 17, 2021 09:55    Ответить с цитатой
Полезность: Нет оценки
Цитата:
За формирование файла отвечает операция, которую я вызываю. лезть в нее и править нельзя. сам xls формируется на клиенте клинт-скриптом. и даже сохраняется на локальной машине( где и как я могу задавать параметрами операции). Проблема в том, что после вызова операции, формирующей xls, при попытке перенести файл, появляется сообщение, что заданного файла нет. (видимо, еще не закончил формирование).
Я поняла.
Не очень поняла, где вы ищете файл - не локальной станции или на сервере. И как он должен был попасть туда, где вы его ищете.
Может быть, вам может помочь расширение операции?

Цитата:
События на сервере и на локале не синхронны.
Ну не совсем. Всё синхронизируется, если понимать, какие действия стоят за инструкциями.
Но чтобы вам что-то посоветовать, мне нужны детали. Имена операций. Желательно - исходники.

Цитата:
Синхронный режим - это как?
Это я подумала над вмешательством в работу операции, чтобы обратиться к файлу именно тогда, когда он создан и ещё не удалён. И именно на той стороне, где он есть.
Volod
Эксперт


Вступление в Клуб: 19.09.2007
СообщениеПт Сен 17, 2021 11:23    Ответить с цитатой
Полезность: Нет оценки
м.б. в цикле с таймаутом пробовать переносить файл?
dark_horse
Участник


Вступление в Клуб: 05.08.2021
СообщениеВт Сен 21, 2021 11:49    Ответить с цитатой
Полезность: Нет оценки
Решением проблемы будет запуск PLPCALL'ом сначала операции. формирующем xls из клиент-скрипта. и потом вызов тем же plpcall' ом копирования на сервер. Но теперь у меня все уперлось в то, что первая операция списочная. Пытаюсь вызвать ее таким образом: Делаю переменную типа массив ссылок(V_ARR), и вызываю так: <% PLPCALL %VAR%.V_ARR.[Операция печати]() %>. Операция не запускается. Что не так?
dark_horse
Участник


Вступление в Клуб: 05.08.2021
СообщениеВт Сен 21, 2021 14:26    Ответить с цитатой
Полезность: Нет оценки
вопрос снят, нужно было добавить массив на э.ф.
Показать сообщения:   
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Уроки ЦФТ-Банк для начинающих Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Рейтинг@Mail.ru