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

Работа с макросами в OOXML

 
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Разработка в PL/PLUS. Оптимизация запросов Oracle
Предыдущая тема :: Следующая тема  
Автор Сообщение
danzki
Участник - экстремал


Вступление в Клуб: 30.09.2010
СообщениеСр Окт 15, 2014 11:18   Работа с макросами в OOXML Ответить с цитатой
Полезность: Нет оценки
Коллеги,
собственно вопрос в теме. Как выполнять макросы при работе с OOXML?

В пакете EXCEL есть процедура cmd. И любой макрос запускался как
Код:
EXCEL.cmd('xls.Run "mcr2"');


Кроме того в операции [SHABLON_DOC].[LOAD_TMPL] есть кусочек кода
Код:

:'DEFAULT':
      P_FILE.[SRC_TYPE]   := false;
      P_FILE.[DST_TYPE]   := true;
      P_FILE.[SRC_MASK]   := 'Excel Files (*.xlsx)|*.xlsx|Word Files (*.docx)|*.docx||';
      P_FILE.[DST_PATH]   := [SYSTEM_PARAMS]::[GET]('PATH',null);      


Выходит шаблон с макросом даже нельяза загрузить.

Есть ли какие-то обходные пути?
danzki
Участник - экстремал


Вступление в Клуб: 30.09.2010
СообщениеСр Окт 15, 2014 16:43    Ответить с цитатой
Полезность: 2
Отсюда
https://social.msdn.microsoft.com/Forums/office/en-US/19032efe-80af-4a16-b954-1f5a6d2f2236/open-xml-sdk-v2-faq-part-1?forum=oxmlsdk
Цитата:

27.Can I add or run macro in Word document using SDK 2.0?

No, Open XML SDK doesn’t support macro. It is a collection of classes that let you create and manipulate Open XML documents.
Random
Эксперт


Вступление в Клуб: 27.06.2011
СообщениеЧт Окт 16, 2014 05:56    Ответить с цитатой
Полезность: Нет оценки
danzki пишет:
Отсюда
https://social.msdn.microsoft.com/Forums/office/en-US/19032efe-80af-4a16-b954-1f5a6d2f2236/open-xml-sdk-v2-faq-part-1?forum=oxmlsdk
Цитата:

27.Can I add or run macro in Word document using SDK 2.0?

No, Open XML SDK doesn’t support macro. It is a collection of classes that let you create and manipulate Open XML documents.


И это правильно.
Вон html - сколько веб-разработчики бьются, чтобы страничка отображалась примерно одинаково в разных браузерах...
у javascript - совершенно разные DOM-модели. У меня есть код для Opera, есть для MS IE, есть для Firefox.

А OOXML открывается и Microsoft Excel, и Open Office Calc и Libre Office Calc - выбирай, банк, какой пакет тебе по душе.
Ну какие тут макросы ещё.
danzki
Участник - экстремал


Вступление в Клуб: 30.09.2010
СообщениеЧт Окт 16, 2014 08:00    Ответить с цитатой
Полезность: Нет оценки
Random пишет:
danzki пишет:
Отсюда
https://social.msdn.microsoft.com/Forums/office/en-US/19032efe-80af-4a16-b954-1f5a6d2f2236/open-xml-sdk-v2-faq-part-1?forum=oxmlsdk
Цитата:

27.Can I add or run macro in Word document using SDK 2.0?

No, Open XML SDK doesn’t support macro. It is a collection of classes that let you create and manipulate Open XML documents.


И это правильно.
Вон html - сколько веб-разработчики бьются, чтобы страничка отображалась примерно одинаково в разных браузерах...
у javascript - совершенно разные DOM-модели. У меня есть код для Opera, есть для MS IE, есть для Firefox.

А OOXML открывается и Microsoft Excel, и Open Office Calc и Libre Office Calc - выбирай, банк, какой пакет тебе по душе.
Ну какие тут макросы ещё.


Согласен с тобой.
Но тогда если старый функционал заменяется новым, в котором нет части реализации старого, этот самый старый нужно оставить (я ж так понимаю со временем библиотека EXCEL пропадет?)...
Нет, не так?
Или логика в том, что пофигу на часть клиентов, зато открывается все в Open Office Calc и Libre Office Calc, которые, думаю мало где используется
Alkov
Профи


Вступление в Клуб: 23.09.2010
СообщениеЧт Окт 16, 2014 09:29    Ответить с цитатой
Полезность: Нет оценки
danzki пишет:

Но тогда если старый функционал заменяется новым, в котором нет части реализации старого, этот самый старый нужно оставить (я ж так понимаю со временем библиотека EXCEL пропадет?)...

Что мешает вынести в локал?

Как вариант можно сохранить макрос в vbs и потом попробовать
запустить через к-с Runtime.Shell excel.xe *.vbs
danzki
Участник - экстремал


Вступление в Клуб: 30.09.2010
СообщениеЧт Окт 16, 2014 10:20    Ответить с цитатой
Полезность: Нет оценки
Alkov пишет:

Что мешает вынести в локал?

Как вариант можно сохранить макрос в vbs и потом попробовать
запустить через к-с Runtime.Shell excel.xe *.vbs


Уточнил в ЦФТ. RUNTIME.EXCEL не будет поддерживаться, но на схеме останется
Random
Эксперт


Вступление в Клуб: 27.06.2011
СообщениеЧт Окт 16, 2014 13:10    Ответить с цитатой
Полезность: Нет оценки
danzki пишет:
Но тогда если старый функционал заменяется новым, в котором нет части реализации старого, этот самый старый нужно оставить (я ж так понимаю со временем библиотека EXCEL пропадет?)...
Нет, не так?
Или логика в том, что пофигу на часть клиентов, зато открывается все в Open Office Calc и Libre Office Calc, которые, думаю мало где используется


Да с чего ей пропадать.
Если банк захочет, так он может и копию себе оставить, снять прям щас, пока есть, и сделать локальный объект, и всё равно выводить в MS Excel с макросами.

Логика в том, что MS Excel - платный.
Довольно много банков хотят снизить свои издержки и не платить в МС за лицензии, и пересаживают, кого могут, на бесплатный продукт.
Есть отчёты, которые запускают все, кому не лень, или очень часто - их и переводят в первую очередь - это быстрее всего окупается.
А если у тебя отчёт, который нужен двум человекам раз в месяц - то банк купит им лицензию - да на здоровье.
Тем более, что пакет OOXML от ЦФТ - тоже платный.

Что касается "мало где используется" - вот ошибаетесь Вы, ошибаетесь.
danzki
Участник - экстремал


Вступление в Клуб: 30.09.2010
СообщениеЧт Окт 16, 2014 14:44    Ответить с цитатой
Полезность: Нет оценки
Random пишет:
Тем более, что пакет OOXML от ЦФТ - тоже платный.


Вы имеете в виду, что каждое отдельное приложение с использованием OOXML стоит отдельных денег?
Или что сам пакет и соответственно его использование стоит денег? Можно ссылку на каталог?

Random пишет:
Что касается "мало где используется" - вот ошибаетесь Вы, ошибаетесь.

Ок. Спорить не буду. Сужу со своей колокольни
Random
Эксперт


Вступление в Клуб: 27.06.2011
СообщениеПт Окт 17, 2014 04:59    Ответить с цитатой
Полезность: Нет оценки
danzki пишет:
Random пишет:
Тем более, что пакет OOXML от ЦФТ - тоже платный.


Вы имеете в виду, что каждое отдельное приложение с использованием OOXML стоит отдельных денег?
Или что сам пакет и соответственно его использование стоит денег? Можно ссылку на каталог?

Токарю на заводе по барабану, сколько стоит самолёт, к которому он приложил руку, где находится каталог самолётов, да и есть ли у него туда доступ. Зато по цеху ходят слухи. Насколько мне известно, API OOXML является платным. Но уточнять мне лень. Про способы металлообработки я б поговорил, а лицензии, каталоги, стоимость - не моё. Хотя, может, я и вру.
kai
Профи


Вступление в Клуб: 16.08.2012
СообщениеПт Апр 10, 2015 15:42    Ответить с цитатой
Полезность: Нет оценки
Random пишет:
danzki пишет:
Random пишет:
Тем более, что пакет OOXML от ЦФТ - тоже платный.


Вы имеете в виду, что каждое отдельное приложение с использованием OOXML стоит отдельных денег?
Или что сам пакет и соответственно его использование стоит денег? Можно ссылку на каталог?

Токарю на заводе по барабану, сколько стоит самолёт, к которому он приложил руку, где находится каталог самолётов, да и есть ли у него туда доступ. Зато по цеху ходят слухи. Насколько мне известно, API OOXML является платным. Но уточнять мне лень. Про способы металлообработки я б поговорил, а лицензии, каталоги, стоимость - не моё. Хотя, может, я и вру.


Random, ох, врёшь, ох, врёшь...
OOXML::API_XL - это сервис ПЯ. Право его использовать отдельно покупать не нужно, как и любой другой сервис ПЯ.
Random
Эксперт


Вступление в Клуб: 27.06.2011
СообщениеПн Апр 13, 2015 07:01    Ответить с цитатой
Полезность: Нет оценки
kai пишет:
Random пишет:
danzki пишет:
Random пишет:
Тем более, что пакет OOXML от ЦФТ - тоже платный.


Вы имеете в виду, что каждое отдельное приложение с использованием OOXML стоит отдельных денег?
Или что сам пакет и соответственно его использование стоит денег? Можно ссылку на каталог?

Токарю на заводе по барабану, сколько стоит самолёт, к которому он приложил руку, где находится каталог самолётов, да и есть ли у него туда доступ. Зато по цеху ходят слухи. Насколько мне известно, API OOXML является платным. Но уточнять мне лень. Про способы металлообработки я б поговорил, а лицензии, каталоги, стоимость - не моё. Хотя, может, я и вру.


Random, ох, врёшь, ох, врёшь...
OOXML::API_XL - это сервис ПЯ. Право его использовать отдельно покупать не нужно, как и любой другой сервис ПЯ.


Ну что ж, значит, я наврал.
Хорошо, если так, как-то на душе легче Smile
Показать сообщения:   
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Разработка в PL/PLUS. Оптимизация запросов Oracle Часовой пояс: GMT + 3
Страница 1 из 1

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