Текущее время: Чт, авг 28 2025, 00:27

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: Как скопировать фильтр в другую книгу
СообщениеДобавлено: Чт, июл 05 2012, 11:24 
Начинающий
Начинающий

Зарегистрирован:
Чт, мар 29 2012, 15:16
Сообщения: 13
Добрый день!

Имеется следующая проблема: Есть отчёт со статусами, из которого надо проваливаться в рабочую книгу планирования.

Пытаюсь реализовать данную задачу с помощью функции открытия Run("BExAnalyzer.xla!runWorkbook", "GRQJBG1PWJ68QSLVALHYHWLYA").

Но как передать туда текущий фильтр? Как я понимаю, нужно скопировать значения в рабочую книгу, а потом считать их с помощью SAPBEXsetFilterValue??? Кто-нибудь знает другой способ или может привести примеры правильного использования SAPBEXsetFilterValue, а то по стандартному описанию как-то непонятно, как он работает

Заранее спасибо!


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как скопировать фильтр в другую книгу
СообщениеДобавлено: Чт, июл 05 2012, 15:06 
Младший специалист
Младший специалист

Зарегистрирован:
Пт, мар 23 2012, 11:54
Сообщения: 58
Пол: Мужской
Вроде как такие штуки только в 3.x работали. Была еще такая функция BexJump, она вызывала книгу и передавала параметры.
есть такие варианты:

1. В RSBBS настраиваете переход к ABAP программе. В эту абап программу вам передадутся все значения из исходной книги. Далее в программе вызываете функциональный модуль RSAH_LAUNCH_EXCEL (как-то так) и ему подаете id целейвой книги и параметры. Но когда я делал такую реализацию у меня не передавались параметры в книгу (гуглил, нашел информацию, что в каком-то gui патче не работало), пришлось их писать в Zтабличку, а в рабочей книге каждый нужный признак ограничивать user-exit переменной, которая считывает эти параметры из таблицы.

2. Можно через VBA вызывать RFC фм и передавать ему фильтр и из фм вызывать рабочую книгу через RSAH_LAUNCH_EXCEL.

Разница 2х способов в том, что в одном надо в отчете тыкать "Перейти к: имя программы", а в другом макрос с вызовом ФМ можно на кнопку повесить


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как скопировать фильтр в другую книгу
СообщениеДобавлено: Ср, окт 17 2012, 15:10 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, июн 02 2009, 22:28
Сообщения: 228
Откуда: MOW
Пол: Мужской
У меня получалось, но довольно криво.

Идея такая - в вызываемой книге:
1. Делается книга с одним запросом, у книги убирается галочка автоматического обновления
2. Делается кнопка Bex, которая берет команды из области
3. В области пишутся команды, запускающие определенный запрос с определенными параметрами (это можно, см. пример в книге)
4. Пишется макрос при обновлении книги, сохраняющий Range запроса (по сути из одной строчки)
5. Пишется макрос со входными параметрами, совпадающими с параметрами запроса. Этот макрос делает следующее:
а. Пишет в нужные места области команд кнопки значения параметров
б. Инициирует нажатие кнопки через макрос (это можно, зная лист и имя кнопки, его можно найти путем исследования)
в. Возвращает Range, сохраненный макросом обновления, или его массив значений (сохранен в пункте 4)

В вызывающей книге пишется открытие нужной книги по техническому ID через API и через Run запускается макрос.

После этого с книгой можно сделать все что угодно - или получить значения и использовать их в текущей книге
(таким образом получив модульность использования запроса) или просто открыть книгу, как-нибудь ее активировав.

В моем примере мне нужно было получить значения, а просто открыть еще проще - я наоборот еще мучился чтобы ее корректно
закрыть без следов.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 3 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB