Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Сбор данных --> автоматический запуск excel макроса  [new]
ArchiSQL
Member

Откуда:
Сообщений: 123
Может быть кто-то сталкивался - на сервере джобом идет сбор данных, по завершении сбора (критерии успешного окончания можно придумать) нужно чтобы автоматически запускался макрос для создания готовых отчетов на основе собранных данных.
В какую сторону копать?
8 мар 19, 16:02    [21828015]     Ответить | Цитировать Сообщить модератору
 Re: Сбор данных --> автоматический запуск excel макроса  [new]
ArchiSQL
Member

Откуда:
Сообщений: 123
другими словами - возможен ли запуск excel макроса из PL\SQL блока?
8 мар 19, 16:03    [21828016]     Ответить | Цитировать Сообщить модератору
 Re: Сбор данных --> автоматический запуск excel макроса  [new]
alex-ls
Member

Откуда: Иркутская обл - Пенза - Москва
Сообщений: 6557
исполняемый файл можно запустить, а значит можно все...
8 мар 19, 16:09    [21828018]     Ответить | Цитировать Сообщить модератору
 Re: Сбор данных --> автоматический запуск excel макроса  [new]
MazoHist
Member

Откуда:
Сообщений: 92
Макрос в excel это прямо вот "макрос-макрос, с примесью vba" ? а то есть вот такая штука тынц что можно xlsx прямо на сервере делать.
9 мар 19, 00:48    [21828220]     Ответить | Цитировать Сообщить модератору
 Re: Сбор данных --> автоматический запуск excel макроса  [new]
ArchiSQL
Member

Откуда:
Сообщений: 123
Да, макрос с vba кодом.
Инстанс БД установлен на линуксовом сервере, макрос запускается вручную с клиента под виндой.
Пока вижу только одно решение - грубо говоря, джоб стартует в 3 ночи, идет ориентировочно час, допустим в пять часов утра (беру с запасом) каждый день макрос запускается, 'спрашивает' у БД - 'все ли собралось? ', если да - выполняется, если критерии сбора не выполнены - тогда не стартует.
Интересно понять, можно ли из PL/SQL кода вызвать команду, чтобы запустить макрос, который расположен в сети/на машине клиента, то есть отсутствует лаг между концом сбора и запуском макроса.
10 мар 19, 13:02    [21828682]     Ответить | Цитировать Сообщить модератору
 Re: Сбор данных --> автоматический запуск excel макроса  [new]
-2-
Member

Откуда:
Сообщений: 14571
ArchiSQL
нужно чтобы автоматически запускался макрос
ArchiSQL
макрос запускается вручную с клиента под виндой.
Кто на ком стоял? И что такое "сбор данных"?
10 мар 19, 14:29    [21828700]     Ответить | Цитировать Сообщить модератору
 Re: Сбор данных --> автоматический запуск excel макроса  [new]
mefman
Member

Откуда:
Сообщений: 2536
dbms_excel.run_macro - спасет гиганта мысли
10 мар 19, 15:07    [21828705]     Ответить | Цитировать Сообщить модератору
 Re: Сбор данных --> автоматический запуск excel макроса  [new]
MazoHist
Member

Откуда:
Сообщений: 92
ArchiSQL
Интересно понять, можно ли из PL/SQL кода вызвать команду, чтобы запустить макрос, который расположен в сети/на машине клиента, то есть отсутствует лаг между концом сбора и запуском макроса.

Как вариант - на win машине создать schedule task запускающую макрос, а с сервера организовать запуск этой задачи (через telnet или ssh). Или даже без schedule task. Но обращаться с сервера в клиентскую подсеть недопустимо.
10 мар 19, 15:41    [21828711]     Ответить | Цитировать Сообщить модератору
 Re: Сбор данных --> автоматический запуск excel макроса  [new]
ArchiSQL
Member

Откуда:
Сообщений: 123
-2-
ArchiSQL
нужно чтобы автоматически запускался макрос
ArchiSQL
макрос запускается вручную с клиента под виндой.
Кто на ком стоял? И что такое "сбор данных"?


Есть сервер, под linux, через дблинки на сервер загружаются данные и обрабатываются, это не суть важно, просто есть сервер под linux, на котором установлен экземпляр БД.
Есть клиент - машина под win, на этой машине есть экселевский макрос, запускается вручную, устанавливается db connection, загружаются данные из БД, выводятся в виде отчета.
Задача: из pl\sql кода запустить этот макрос.
11 мар 19, 08:25    [21828872]     Ответить | Цитировать Сообщить модератору
 Re: Сбор данных --> автоматический запуск excel макроса  [new]
ArchiSQL
Member

Откуда:
Сообщений: 123
MazoHist
ArchiSQL
Интересно понять, можно ли из PL/SQL кода вызвать команду, чтобы запустить макрос, который расположен в сети/на машине клиента, то есть отсутствует лаг между концом сбора и запуском макроса.

Как вариант - на win машине создать schedule task запускающую макрос, а с сервера организовать запуск этой задачи (через telnet или ssh). Или даже без schedule task. Но обращаться с сервера в клиентскую подсеть недопустимо.


Погуглил - сходу не нашел то что нужно, почитаю еще.
11 мар 19, 08:31    [21828873]     Ответить | Цитировать Сообщить модератору
 Re: Сбор данных --> автоматический запуск excel макроса  [new]
-2-
Member

Откуда:
Сообщений: 14571
ArchiSQL
это не суть важно
После таких разъяснений "задача" продолжает выглядеть как блажь.
Что даст "автоматический" запуск. Почему он должен быть именно по инициативе сервера. Зачем вообще "макрос".
11 мар 19, 08:44    [21828883]     Ответить | Цитировать Сообщить модератору
 Re: Сбор данных --> автоматический запуск excel макроса  [new]
ArchiSQL
Member

Откуда:
Сообщений: 123
-2-
Что даст "автоматический" запуск.


Например, получением готовых отчетов к началу рабочего дня :)

-2-
Почему он должен быть именно по инициативе сервера.


Почему нет? Сбор и обработка данных происходит на сервере, логично предположить, чтобы именно оттуда шла команда на запуск макроса.

-2-
Зачем вообще "макрос".


Он уже есть, менять его трудозатратно и по сути никому не нужно.

Честно, не хочу устраивать холивар на тему - "блажь" это или нет. Хочу понять - можно ли это осуществить? Если нельзя, буду запускать на win машине в определенное время автостартом. Если можно - как это сделать.
11 мар 19, 09:20    [21828890]     Ответить | Цитировать Сообщить модератору
 Re: Сбор данных --> автоматический запуск excel макроса  [new]
-2-
Member

Откуда:
Сообщений: 14571
ArchiSQL
можно ли это осуществить
Можно ли удалять гланды через жопу? Да.
11 мар 19, 09:41    [21828898]     Ответить | Цитировать Сообщить модератору
 Re: Сбор данных --> автоматический запуск excel макроса  [new]
Alvares
Member

Откуда:
Сообщений: 15
а по файл-флагу не годится запускать?
отработала выгрузка БД - кинул файлик //share/bd_ok.ok
в запуске макроса if exist //share/bd_ok.ok then bla-bla-bla
11 мар 19, 09:48    [21828900]     Ответить | Цитировать Сообщить модератору
 Re: Сбор данных --> автоматический запуск excel макроса  [new]
ma1tus
Member

Откуда:
Сообщений: 666
1) запускать с сетевого диска из под wine %-/
2) в "наколенке" слушать порт на win, запускать по сигналу

3)
ArchiSQL
запускать на win машине в определенное время автостартом
11 мар 19, 09:49    [21828901]     Ответить | Цитировать Сообщить модератору
 Re: Сбор данных --> автоматический запуск excel макроса  [new]
Vadim Lejnin
Member

Откуда:
Сообщений: 6647
ArchiSQL,

Command-line switches for Microsoft Office products

support.office.com
...
/mmacroname


Starts Word and then runs a specific macro. The /m switch also prevents Word from running any AutoExec macros.

Example To start Word and then run the macro Salelead, type the following at the command prompt:

/mSalelead

Note: Do not include a space between the switch and the macro name.

Because macros can contain viruses, be careful about running them. Take the following precautions: run up-to-date antivirus software on your computer; set your macro security level to high; clear the Trust all installed add-ins and templates check box; use digital signatures; maintain a list of trusted publishers.
...


Как запустить задачу на MS - совсем другая задача

p.s. Обычно такие задачи решает report server ( не обязательно Oracle)
11 мар 19, 10:27    [21828925]     Ответить | Цитировать Сообщить модератору
 Re: Сбор данных --> автоматический запуск excel макроса  [new]
MazoHist
Member

Откуда:
Сообщений: 92
ArchiSQL
-2-
пропущено...
пропущено...
Кто на ком стоял? И что такое "сбор данных"?


Есть сервер, под linux, через дблинки на сервер загружаются данные и обрабатываются, это не суть важно, просто есть сервер под linux, на котором установлен экземпляр БД.
Есть клиент - машина под win, на этой машине есть экселевский макрос, запускается вручную, устанавливается db connection, загружаются данные из БД, выводятся в виде отчета.
Задача: из pl\sql кода запустить этот макрос.

А пусть этот excel и запускает этот джоб сбора данных, ждет (use_current_session=>true) и собирает свой отчет. Как правильно сказали,
автор
Обычно такие задачи решает report server ( не обязательно Oracle)
11 мар 19, 11:58    [21828991]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить