Текущее время: Чт, июл 18 2019, 00:34

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 13 ] 
Автор Сообщение
 Заголовок сообщения: Вывод данных на экран во время выполнения кода в START-OF-SELECTION.
СообщениеДобавлено: Ср, июл 03 2019, 23:33 
Начинающий
Начинающий

Зарегистрирован:
Чт, окт 18 2012, 13:43
Сообщения: 6
Есть селекционных экран с "чекбоксами", каждый из которых отвечает за запуск определённой подпрограммы по обработке данных.
В START-OF-SELECTION происходит вывод z-экрана (100), на котором отображаются поля, отмеченные по селекционном экране и дополнительные информационные поля для каждого "чекбокса".
По кнопке "Выполнить", расположенной на 100 экране, осуществляется выполнение подпрограмм, выбранных на селекционном экране.
Требуется перед запуском каждой подпрограммы выводить в соответствующее поле время её запуска.
На текущий момент реализации время запуска выводится на 100 экран только после выполнения всех подпрограмм, а надо выводить перед началом выполнения каждой подпрограммы.
ФМ DYNP_VALUES_UPDATE не помогает.
А ещё хотелось бы, чтобы после отображения 100 экрана сразу же в автомате начиналось выполнение подпрограмм, т.е. чтобы не нажимать кнопку "Выполнить" и вообще избавиться от этой кнопки.

Возможно ли это реализовать и если "Да", то каким способом ?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Вывод данных на экран во время выполнения кода в START-OF-SELECTION.
СообщениеДобавлено: Чт, июл 04 2019, 07:51 
Специалист
Специалист

Зарегистрирован:
Чт, мар 29 2007, 12:51
Сообщения: 243
Откуда: Yugorsk.RU
Пол: Мужской
а зачем такая дикая логика интерфейса? Её упростить и подогнать под саповские лекала никак нелья?

Не проще будет время выполнения например в журнал SLG1 сбрасывать, а потом просто его вывести через стандартный диалог?

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


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вывод данных на экран во время выполнения кода в START-OF-SELECTION.
СообщениеДобавлено: Чт, июл 04 2019, 09:39 
Начинающий
Начинающий

Зарегистрирован:
Чт, окт 18 2012, 13:43
Сообщения: 6
Согласен, для SAP'а логика действительно дикая, но на том же C++Builder или Visual C++ это решается парой строк кода. :-)

В журнал SLG1 это всё пишется, но требуется также отображать часть информации на экране, чтобы пользователь понимал сколько примерно по времени займёт выполнение каждого процесса, чтобы он мог заняться параллельно другой задачей или сходить попить кофейку.

Вариант с вызовом 100 экрана не совсем подходит, т.к. на СЭ выбираются и другие режимы работы, которые не требуют отображения 100 экрана, но при условии, что если автоматический запуск невозможно осуществить, тогда к этому варианту и приду.
По поводу "диспетчеров" тоже думал, но решил первоначально задать вопрос здесь, вдруг есть какое-то простое решение, чтобы не тратить время на анализ их кода.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Вывод данных на экран во время выполнения кода в START-OF-SELECTION.
СообщениеДобавлено: Чт, июл 04 2019, 10:02 
Специалист
Специалист

Зарегистрирован:
Чт, мар 29 2007, 12:51
Сообщения: 243
Откуда: Yugorsk.RU
Пол: Мужской
bercsoft написал(а):
но на том же C++Builder или Visual C++ это решается парой строк

Вот в этом и беда, что архитекторы решений пытаются с других (не ERP) платформ, не заточенных изначально под "минимизировать нагрузку от диалоговых свистелок-перделок, ради чтоб большего количества пользователей толклось в продуктиве", тащить нарядный интеграктив :D

Сделайте кнопку "просмотр журнала прошлых запусков", и выводите SLG1. Он там сразу увидит, какие сеансы сколько работали, если на каждый свой журнал формируется. Это самое простое - и собирается из стандартных саповских "кубиков". А не тетрис :D


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вывод данных на экран во время выполнения кода в START-OF-SELECTION.
СообщениеДобавлено: Чт, июл 04 2019, 10:07 
Специалист
Специалист

Зарегистрирован:
Чт, мар 29 2007, 12:51
Сообщения: 243
Откуда: Yugorsk.RU
Пол: Мужской
и потом, методологически непонятно, - если производительность тех процедур настолько низкая, что приходится обращать внимание на прошлое время запуска, то поможет ли это вообще, если например в продуктиве сегодня пиковая нагрузка "последний день закрытия периода"?

Мы вот както раз даже отдельную ноду поднимали на сервере приложений, куда выгоняли пользователей с такими вот тяжёлыми периодическими работами. Чтобы они не толклись на одном сервере со всеми остальными. Помогало.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вывод данных на экран во время выполнения кода в START-OF-SELECTION.
СообщениеДобавлено: Чт, июл 11 2019, 02:27 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 17:44
Сообщения: 2943
Откуда: Москва
bercsoft написал(а):
требуется также отображать часть информации на экране, чтобы пользователь понимал сколько примерно по времени займёт выполнение каждого процесса,

ФМ SAP_GUI_PROGRESS_INDICATOR?

_________________
С уважением,
Удав.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вывод данных на экран во время выполнения кода в START-OF-SELECTION.
СообщениеДобавлено: Чт, июл 11 2019, 09:46 
Начинающий
Начинающий

Зарегистрирован:
Чт, окт 18 2012, 13:43
Сообщения: 6
Удав написал(а):
bercsoft написал(а):
требуется также отображать часть информации на экране, чтобы пользователь понимал сколько примерно по времени займёт выполнение каждого процесса,

ФМ SAP_GUI_PROGRESS_INDICATOR?


ФМ SAPGUI_PROGRESS_INDICATOR уже используется и отображает процесс выполнения по каждой подпрограмме. А мне требуется просто зафиксировать на экране время запуска каждой подпрограммы перед их запуском. Но как я уже писал, на текущий момент данные на экране отображаются только после выполнения всех подпрограмм.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Вывод данных на экран во время выполнения кода в START-OF-SELECTION.
СообщениеДобавлено: Чт, июл 11 2019, 10:37 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 17:25
Сообщения: 3087
Пол: Мужской
bercsoft написал(а):
Требуется перед запуском каждой подпрограммы выводить в соответствующее поле время её запуска.

bercsoft написал(а):
А ещё хотелось бы, чтобы после отображения 100 экрана сразу же в автомате начиналось выполнение подпрограмм, т.е. чтобы не нажимать кнопку "Выполнить" и вообще избавиться от этой кнопки.

bercsoft написал(а):
но на том же C++Builder или Visual C++ это решается парой строк кода.

bercsoft написал(а):
В журнал SLG1 это всё пишется, но требуется также отображать часть информации на экране, чтобы пользователь понимал сколько примерно по времени займёт выполнение каждого процесса, чтобы он мог заняться параллельно другой задачей или сходить попить кофейку.

кофейку? :shumlol:

А если без шуток, сумбур какой-то, имхо. Разберитесь с архитектурой Вашей программы, и мой совет не мудрите с интерактивом. Делайте просто и прозрачно. Держите ориентир на то какие подходы используются в стандартных разработках.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вывод данных на экран во время выполнения кода в START-OF-SELECTION.
СообщениеДобавлено: Чт, июл 11 2019, 10:58 
Начинающий
Начинающий

Зарегистрирован:
Чт, окт 18 2012, 13:43
Сообщения: 6
Besa написал:
А если без шуток, сумбур какой-то, имхо. Разберитесь с архитектурой Вашей программы, и мой совет не мудрите с интерактивом. Делайте просто и прозрачно. Держите ориентир на то какие подходы используются в стандартных разработках.


Скучно всё это в стандартных разработках, постановщик хочет, чтобы всё было интерактивно, например, как в дефрагментаторе Windows - разноцветные квадратики рисовались. ;-)
Но я уже ему сказал, что так сделать не получится, но самому всё же интересно, возможно ли такое реализовать в SAP'e.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Вывод данных на экран во время выполнения кода в START-OF-SELECTION.
СообщениеДобавлено: Чт, июл 11 2019, 11:03 
Специалист
Специалист

Зарегистрирован:
Чт, мар 29 2007, 12:51
Сообщения: 243
Откуда: Yugorsk.RU
Пол: Мужской
bercsoft написал(а):
ФМ SAPGUI_PROGRESS_INDICATOR уже используется и отображает процесс выполнения по каждой подпрограмме. А мне требуется просто зафиксировать на экране время запуска каждой подпрограммы перед их запуском. Но как я уже писал, на текущий момент данные на экране отображаются только после выполнения всех подпрограмм.


Ну так в текстовый атрибут ФМа передавайте смысловой текст "подпрограмма запущена в HH:MM:SS", делов то.
Либо дайте пользователям транзакцию SAAB, а в коде в момент запуска вызывайте команду емнип LOG-POINT. Там какраз в саабовский лог сбросится в т.ч. дата-время. Используйте стандарт по максимуму, как совершенно правильно рекомендуют выше.
Z-интеракив это как правило жесть жестяная. :D


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вывод данных на экран во время выполнения кода в START-OF-SELECTION.
СообщениеДобавлено: Чт, июл 11 2019, 13:46 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, авг 19 2004, 18:37
Сообщения: 1882
Откуда: Москва
Пол: Мужской
bercsoft написал(а):
...
Скучно всё это в стандартных разработках, постановщик хочет, чтобы всё было интерактивно, например, как в дефрагментаторе Windows - разноцветные квадратики рисовались. ;-)
Но я уже ему сказал, что так сделать не получится, но самому всё же интересно, возможно ли такое реализовать в SAP'e.

Разумеется возможно. Если уж Тетрис на ABAP-е есть, то "дефрагментатор" вообще не проблема. В вашем случае я бы смотрел в сторону листинга (вместо диал. экрана), поскольку он довольно прост и лёгок (в смысле нагрузки на систему).

_________________
"For all entries" не в SAP-ах, "for all entries" в головах! :)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вывод данных на экран во время выполнения кода в START-OF-SELECTION.
СообщениеДобавлено: Чт, июл 11 2019, 15:50 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Ср, сен 06 2017, 00:56
Сообщения: 472
а листинг можно разве в рантайме обновлять?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Вывод данных на экран во время выполнения кода в START-OF-SELECTION.
СообщениеДобавлено: Пт, июл 12 2019, 13:23 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, дек 20 2007, 19:21
Сообщения: 1294
Parazit написал:
bercsoft написал(а):
...
Скучно всё это в стандартных разработках, постановщик хочет, чтобы всё было интерактивно, например, как в дефрагментаторе Windows - разноцветные квадратики рисовались. ;-)
Но я уже ему сказал, что так сделать не получится, но самому всё же интересно, возможно ли такое реализовать в SAP'e.

Разумеется возможно. Если уж Тетрис на ABAP-е есть, то "дефрагментатор" вообще не проблема. В вашем случае я бы смотрел в сторону листинга (вместо диал. экрана), поскольку он довольно прост и лёгок (в смысле нагрузки на систему).

это все сейчас делается на фиори

_________________
я твой сап эфай внедрял
BAdI-позитив


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

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


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

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


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

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