Текущее время: Пт, июл 25 2025, 22:24

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 20 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: PROCESS ON VALUE-REQUEST.
СообщениеДобавлено: Пт, май 20 2005, 08:32 
Специалист
Специалист

Зарегистрирован:
Пн, сен 20 2004, 10:55
Сообщения: 228
Откуда: Москва, Hamburg, Prague, Brussels
Здрастьте господа. Такой вопросик как после отработки события PROCESS ON VALUE-REQUEST. перерисовать экран? :roll:


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 08:38 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, сен 09 2004, 07:32
Сообщения: 777
Откуда: Москва
Пол: Мужской
Нажать ENTER :wink:

_________________
"Прежде чем сделать что-то, подумай, к чему это может привести..."


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 08:42 
Специалист
Специалист

Зарегистрирован:
Пн, сен 20 2004, 10:55
Сообщения: 228
Откуда: Москва, Hamburg, Prague, Brussels
nicky555 написал:
Нажать ENTER :wink:

:lol: :wink: Приколист однако :D
А автоматичкски?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: PROCESS ON VALUE-REQUEST.
СообщениеДобавлено: Пт, май 20 2005, 08:43 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, май 04 2005, 16:29
Сообщения: 687
Откуда: Нижневартовск->Москва
Пол: Мужской
Dan написал(а):
Здрастьте господа. Такой вопросик как после отработки события PROCESS ON VALUE-REQUEST. перерисовать экран? :roll:

Если интересует, как заполнить поля, чтобы сразу было видно новые значения - смотри прошлый пример про поиск к закрытому полю.
DYNP_VALUES_UPDATE

Но PAI/PBO не отработает!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: PROCESS ON VALUE-REQUEST.
СообщениеДобавлено: Пт, май 20 2005, 09:21 
Специалист
Специалист

Зарегистрирован:
Пн, сен 20 2004, 10:55
Сообщения: 228
Откуда: Москва, Hamburg, Prague, Brussels
T написал:
Dan написал(а):
Здрастьте господа. Такой вопросик как после отработки события PROCESS ON VALUE-REQUEST. перерисовать экран? :roll:

Если интересует, как заполнить поля, чтобы сразу было видно новые значения - смотри прошлый пример про поиск к закрытому полю.
DYNP_VALUES_UPDATE

Но PAI/PBO не отработает!


Слушай возвращает субрц=0 но обновляет экранную таблицу все равно только после ентера :cry:
я ему и DYNPFIELDS-STEPL впихнул


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 09:30 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, май 04 2005, 16:29
Сообщения: 687
Откуда: Нижневартовск->Москва
Пол: Мужской
На экране поле с именем T001-BUKRS

+ в логике
PROCESS ON VALUE-REQUEST.
field t001-bukrs module f4_bukrs.

Всё работает..
У тебя наверняка мелкая ошибка где-то. Засылай код.

Code:
tables: t001.

call screen 100.
*&---------------------------------------------------------------------*
*&      Module  f4_bukrs  INPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE f4_bukrs INPUT.
  data: lt_rettab type table of DDSHRETVAL with header line.

  CALL FUNCTION 'F4IF_FIELD_VALUE_REQUEST'
    EXPORTING
      TABNAME                   = 'T001'
      FIELDNAME                 = 'BUKRS'
*     SEARCHHELP                = ' '
*     SHLPPARAM                 = ' '
*     DYNPPROG                  = ' '
*     DYNPNR                    = ' '
*     DYNPROFIELD               = ' '
*     STEPL                     = 0
*     VALUE                     = ' '
*     MULTIPLE_CHOICE           = ' '
*     DISPLAY                   = ' '
*     SUPPRESS_RECORDLIST       = ' '
*     CALLBACK_PROGRAM          = ' '
*     CALLBACK_FORM             = ' '
    TABLES
      RETURN_TAB                = lt_rettab[]
*   EXCEPTIONS
*     FIELD_NOT_FOUND           = 1
*     NO_HELP_FOR_FIELD         = 2
*     INCONSISTENT_HELP         = 3
*     NO_VALUES_FOUND           = 4
*     OTHERS                    = 5
            .

  check not lt_rettab[] is initial.
  read table lt_rettab with key fieldname = 'BUKRS'.

  t001-bukrs = lt_rettab-fieldval.

  data: DYNPFIELDS type table of DYNPREAD with header line.
  refresh DYNPFIELDS.
  DYNPFIELDS-FIELDNAME = 'T001-BUKRS'.
  DYNPFIELDS-FIELDVALUE = lt_rettab-fieldval.
  append DYNPFIELDS.

  CALL FUNCTION 'DYNP_VALUES_UPDATE'
    EXPORTING
      DYNAME                     = sy-repid
      DYNUMB                     = sy-dynnr
    TABLES
      DYNPFIELDS                 = DYNPFIELDS
*   EXCEPTIONS
*     INVALID_ABAPWORKAREA       = 1
*     INVALID_DYNPROFIELD        = 2
*     INVALID_DYNPRONAME         = 3
*     INVALID_DYNPRONUMMER       = 4
*     INVALID_REQUEST            = 5
*     NO_FIELDDESCRIPTION        = 6
*     UNDEFIND_ERROR             = 7
*     OTHERS                     = 8
            .
  IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.
ENDMODULE.                 " f4_bukrs  INPUT



ЗЫ Причём я думаю у тебя неверно вызывается DYNP_VALUES_UPDATE,
а после ENTER появляется из-за присвоения значения напрямую. Типа как здесь t001-bukrs = lt_rettab-fieldval.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 09:37 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, май 04 2005, 16:29
Сообщения: 687
Откуда: Нижневартовск->Москва
Пол: Мужской
Кстати, блин, я в примерах из экономии передавал sy-dynnr, sy-repid напрямую, а нужно через отдельные переменные!

типа
L_REPID = SY-REPID
и передавать в модуль уже L_REPID!

Это связано с тем, что в модуле это значение передастся как имя главной программы группы функций!!


Последний раз редактировалось T Пт, май 20 2005, 09:39, всего редактировалось 1 раз.

Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 09:38 
Специалист
Специалист

Зарегистрирован:
Пн, сен 20 2004, 10:55
Сообщения: 228
Откуда: Москва, Hamburg, Prague, Brussels
PROCESS ON VALUE-REQUEST.
*{ INSERT R3EK905380 1
FIELD iscj_r_postings-alloc_nmbr MODULE check_selection.
*} INSERT
...........................................................................................
MODULE check_selection INPUT.
...
...
...
CALL FUNCTION 'HELP_VALUES_GET_WITH_TABLE'
* EXPORTING
* CUCOL = 0
* CUROW = 0
* DISPLAY = ' '
* FIELDNAME = ' '
* TABNAME = ' '
* NO_MARKING_OF_CHECKVALUE = ' '
* TITLE_IN_VALUES_LIST = ' '
* TITEL = ' '
* SHOW_ALL_VALUES_AT_FIRST_TIME = ' '
* NO_CONVERSION = ' '
IMPORTING
SELECT_VALUE = se_val
TABLES
FIELDS = FIELD_TAB
VALUETAB = I_VBAK
* EXCEPTIONS
* FIELD_NOT_IN_DDIC = 1
* MORE_THEN_ONE_SELECTFIELD = 2
* NO_SELECTFIELD = 3
* OTHERS = 4
.

refresh DYNPFIELDS.
DYNPFIELDS-FIELDNAME = 'ITCJ_R_POSTINGS-ALLOC_NMBR'.
DYNPFIELDS-FIELDVALUE = se_val.
DYNPFIELDS-STEPL = ld_sellinE.
append DYNPFIELDS.


CALL FUNCTION 'DYNP_VALUES_UPDATE'
EXPORTING
DYNAME = sy-repid
DYNUMB = sy-dynnr
TABLES
DYNPFIELDS = DYNPFIELDS
* EXCEPTIONS
* INVALID_ABAPWORKAREA = 1
* INVALID_DYNPROFIELD = 2
* INVALID_DYNPRONAME = 3
* INVALID_DYNPRONUMMER = 4
* INVALID_REQUEST = 5
* NO_FIELDDESCRIPTION = 6
* UNDEFIND_ERROR = 7
* OTHERS = 8
.
IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.

CLEAR: FIELD_TAB, i_vbak, num_sel.
REFRESH: FIELD_TAB, i_vbak.

itcj_r_postings-alloc_nmbr = se_val.
modify itcj_r_postings index ld_selline.

ENDMODULE. " CLEAR_SELECTION INPUT


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 09:41 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, май 04 2005, 16:29
Сообщения: 687
Откуда: Нижневартовск->Москва
Пол: Мужской
iscj_r_postings-alloc_nmbr - на экране
iTcj_r_postings-alloc_nmbr - передаёшь в модуль


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 09:46 
Специалист
Специалист

Зарегистрирован:
Пн, сен 20 2004, 10:55
Сообщения: 228
Откуда: Москва, Hamburg, Prague, Brussels
T написал:
iscj_r_postings-alloc_nmbr - на экране
iTcj_r_postings-alloc_nmbr - передаёшь в модуль

Будешь смеяться но у меня все именно так :(
И с учетом S_repid = sy-repid
:(


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 09:48 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, май 04 2005, 16:29
Сообщения: 687
Откуда: Нижневартовск->Москва
Пол: Мужской
В DYNP_.. нужно передавать экранное имя.
И ещё проверь, в STEPL кладётся именно тот номер строки, который ты выбрал?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 09:51 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, май 04 2005, 16:29
Сообщения: 687
Откуда: Нижневартовск->Москва
Пол: Мужской
Как я понимаю T - это внутренняя таблица с header line, а S - это структура, соответствующая экрану..


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 09:51 
Специалист
Специалист

Зарегистрирован:
Пн, сен 20 2004, 10:55
Сообщения: 228
Откуда: Москва, Hamburg, Prague, Brussels
T написал:
В DYNP_.. нужно передавать экранное имя.
И ещё проверь, в STEPL кладётся именно тот номер строки, который ты выбрал?


Все так! и со STEPL все ок имено по ней я и модифаю вн таблицу.
хрен знает что ей нужно?
может спясать :D


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 09:54 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, май 04 2005, 16:29
Сообщения: 687
Откуда: Нижневартовск->Москва
Пол: Мужской
Dan написал(а):
со STEPL все ок имено по ней я и модифаю вн таблицу.

В STEPL кладётся значение, соответствующее строке на экране. Оно может отличаться от индекса таблицы, если она отмотана вниз..


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 09:54 
Специалист
Специалист

Зарегистрирован:
Пн, сен 20 2004, 10:55
Сообщения: 228
Откуда: Москва, Hamburg, Prague, Brussels
T написал:
Как я понимаю T - это внутренняя таблица с header line, а S - это структура, соответствующая экрану..

Так и есть


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

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


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

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


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

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