Текущее время: Пт, мар 29 2024, 02:27

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


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 22 ]  На страницу Пред.  1, 2
Автор Сообщение
 Заголовок сообщения: Re: Как определить позицию поля в отчете (gui scripting)
СообщениеДобавлено: Вт, окт 16 2018, 14:29 
Ассистент
Ассистент

Зарегистрирован:
Чт, июн 01 2017, 12:58
Сообщения: 31
Besa,
транзакция - любая которая выдает отчет не в ALV-grid, а в таком как на скриншоте, я думаю это не принципиально.
В таком виде отчета можно как либо узнать позицию заголовка колонки (1ый, 2ой и тд)?

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

pberezin написал: написал(а):
..и собрать из этого постраничного контрола все данные нужных колонок путём циклического пролистывания.
Отставить извращения, данные просто сохраняются через стандартый диалог сапа в .csv

pberezin написал: написал(а):
ну а в vba-отладчике посмотреть проперти контрола-контейнера?
session.findById("wnd[1]/usr/ssubRAHMEN:SAPLCNFA:0111/subALLE_FELDER:SAPLCNFA:0130/tblSAPLCNFATC_ALLE_FELDER")
И? Это таблица с пулом колонок из которых можно выбрать. Вопрос в том, можно ли выбрать не скроля эту таблицу?

pberezin написал: написал(а):
кстати, у автора в коде не наблюдается принципиально важной для гуискриптинга в продуктиве "супрессилки" неожиданно абы-где всплывающих окон SM02/SBWP.
.TestToolMode = 1 ?
Так тут и выбора коннекшена/сессии нет, если что.
Вопрос предельно конкретный


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как определить позицию поля в отчете (gui scripting)
СообщениеДобавлено: Вт, окт 16 2018, 14:37 
Старший специалист
Старший специалист

Зарегистрирован:
Чт, мар 29 2007, 11:51
Сообщения: 330
Откуда: Yugorsk.RU
Пол: Мужской
pberezin написал:
Вопрос в том, можно ли выбрать не скроля эту таблицу?

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

pberezin написал:
Отставить извращения, данные просто сохраняются через стандартый диалог сапа в .csv

На любителя решение. По мне так лишние дисковые/файловые операции это всегда менее надёжно, чем напрямую контролы опросить. :)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как определить позицию поля в отчете (gui scripting)
СообщениеДобавлено: Вт, окт 16 2018, 15:41 
Ассистент
Ассистент

Зарегистрирован:
Чт, июн 01 2017, 12:58
Сообщения: 31
pberezin написал: написал(а):
Полагаю нет. ..
Ок. Спасибо.
Есть идеи можно ли выяснить позицию колонки в отчете?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как определить позицию поля в отчете (gui scripting)
СообщениеДобавлено: Ср, окт 17 2018, 13:49 
Старший специалист
Старший специалист

Зарегистрирован:
Чт, мар 29 2007, 11:51
Сообщения: 330
Откуда: Yugorsk.RU
Пол: Мужской
user0 написал(а):
Он не хаотично меняется, просто каждый пользователь может настроить у себя любое кол-во колонок и их порядок, либо они могут тупо сброситься после очередного обновления сапа.

А не проще тогда будет обратную задачу решить? Настроить под эту скриптовую обработку свой фиксированный формат 1 раз, и перед началом обработки выводить msgbox, требовать чтобы пользователь выбрал этот формат в качестве дефолтового.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как определить позицию поля в отчете (gui scripting)
СообщениеДобавлено: Ср, окт 17 2018, 14:33 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
pberezin написал:
user0 написал(а):
Он не хаотично меняется, просто каждый пользователь может настроить у себя любое кол-во колонок и их порядок, либо они могут тупо сброситься после очередного обновления сапа.

А не проще тогда будет обратную задачу решить? Настроить под эту скриптовую обработку свой фиксированный формат 1 раз, и перед началом обработки выводить msgbox, требовать чтобы пользователь выбрал этот формат в качестве дефолтового.

Именно для этого я и спрашивал имя отчета, чтобы посмотреть по конкретному отчету, если там такая или подобная функция.
Только не заставлять пользователя выбрать, а выбирать самому.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как определить позицию поля в отчете (gui scripting)
СообщениеДобавлено: Ср, окт 17 2018, 19:40 
Ассистент
Ассистент

Зарегистрирован:
Чт, июн 01 2017, 12:58
Сообщения: 31
pberezin написал:
А не проще тогда будет обратную задачу решить? Настроить под эту скриптовую обработку свой фиксированный формат 1 раз..
Так я же вроде написал, что сейчас именно так и происходит, скрипт принудительно вызывает окно выбора полей, они сбрасываются и выбираются необходимые в корректном порядке.
Но чтобы избежать таких манипуляций каждый раз, я и хочу добавить проверку на порядок заголовков колонок в отчете. Проверка на кол-во всех заголовков уже есть (через ../lbl[х,х]").Text ).

Besa написал:
Именно для этого я и спрашивал имя отчета, чтобы посмотреть по конкретному отчету, если там такая или подобная функция.
Транзакция кастомная. Посмотрите, если не сложно, любую транзакцию, которая выдает отчет в таком же формате как на скрине (классический, не интерактивный).

Чтот не вижу ничего полезного в свойствах классов SapLabel и SapUserArea (TextRectangle выглядит интересно)
хм.. а можно передать всю строку с заголовками (8ая сверху) в массив, что-то типа?
Code:
Dim a() As String
a = Split(session.findById("wnd[0]/usr/???, " ")


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как определить позицию поля в отчете (gui scripting)
СообщениеДобавлено: Вс, окт 21 2018, 06:36 
Ассистент
Ассистент

Зарегистрирован:
Чт, июн 01 2017, 12:58
Сообщения: 31
Может еще какие-нибудь идеи будут как определить позицию того или иного столбца в отчете?


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 22 ]  На страницу Пред.  1, 2

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


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

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