Текущее время: Сб, июл 19 2025, 00:46

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: Неведомая ерунда GUI. Проблема с экранами
СообщениеДобавлено: Пт, окт 15 2010, 14:49 
Начинающий
Начинающий

Зарегистрирован:
Ср, июл 21 2010, 14:11
Сообщения: 13
Всем привет. Столкнулся с такой проблемой. Расширен инфотип 0298 Приказы. Добавлено текст поле С(255) ZZREASON01.
На экран 2000 вызывается пользовательский подэкран 0200, на который добавлено элемент, реализованный через C_TEXTEDIT_CONTROL чтобы работать с текстовым полем как через редактор.
В PBO-модуле для экрана 0200 обрабатывается вывод данных из структуры P0298.
Вот кусок кода, передающий данные в этот самый элемент-текстовый редактор:
Code:
case p_editor_id.
    when 'ZZREASON'.
      move 'CNT_REASON' to l_container.
      move P0298-ZZREASON01 to l_editor_data.
      CONCATENATE l_editor_data P0298-ZZREASON02 INTO l_editor_data.
      l_data_len = 510.
      assign g_reason_edtctrl to <l_editor_ctrl>.
  endcase.

  if <l_editor_ctrl> IS ASSIGNED.
    create object <l_editor_ctrl>
      EXPORTING
        repid                      = sy-repid
        dynnr                      = p_dynnr
        dynpro_container           = l_container
        wordwrap_mode              = 2
        wordwrap_position          = 51
        max_number_chars           = l_data_len
        wordwrap_to_linebreak_mode = 1
      EXCEPTIONS
        error_cntl_create          = 1
        error_cntl_init            = 2
        error_cntl_link            = 3
        error_dp_create            = 4
        others                     = 5.

    if sy-subrc <> 0.
*      message id sy-msgid type sy-msgty number sy-msgno
*      with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    endif.

* Заряжаем текстом
    refresh l_edit_tbl.
    if l_editor_data+0(1) = '^'.
      shift l_editor_data.
    endif.
    split l_editor_data at '^' into table l_edit_tbl.

    call method <l_editor_ctrl>->set_text_as_r3table
      EXPORTING
        table           = l_edit_tbl
      EXCEPTIONS
        error_dp        = 1
        error_dp_create = 2
        others          = 3.

Тут все нормально.
НО ВОЗНИКАЕТ ТАКОЙ ГЛЮК.
Я захожу в ИТ Приказы через обзор( экран 3000), выбираю приказ и проваливаюсь внтурь в экран 2000, там в своем подъэкране-редакторе под номером 0200 вижу текст что ранее в него внес. Далее выхожу НАЗАД на экран 3000 и выбираю другой приказ и также в него проваливаюсь и О ЧУДО: в поле редактора тот же текст что и в прошлом приказе. Далее если свернуть окошко на половину чтоб появился вертикальный скрол и промотать им, становится видно что полей-релакторов с текстом (подэкранов 0201) на экране 2000 не один а два! ИЗ текущего приказа и тот, что остался при просмотре предыдущего, причем последний как бы висит по верх первого и если развернуть окно полностью - то перекрывает его, пожтому сразу непонятно почему в этом поле текст со всем из другого приказа.
Есть предположение, что создался объект, который по возвращении на экран 3000 остался где-то в памяти и када я НЕ ВЫХОДЯ из 3000 экрана опять проваливаюсь в 2000, то там отрисовываются оба этих объекта и старый и новый. Потому как если выйти из обзора 3000-ого экрана сразу в меню инфотипов и снова зайти, то становится нормально.
Что можете предложить чтобы исправить такую ситуацию?
Заранее спасибо за советы.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Неведомая ерунда GUI. Проблема с экранами
СообщениеДобавлено: Пт, окт 15 2010, 14:52 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Чт, июл 19 2007, 07:04
Сообщения: 1072
Пол: Мужской
Может все таки в ветку ABAP обратится?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Неведомая ерунда GUI. Проблема с экранами
СообщениеДобавлено: Пт, окт 15 2010, 14:57 
Начинающий
Начинающий

Зарегистрирован:
Ср, июл 21 2010, 14:11
Сообщения: 13
Ок. Продублировал туда.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Неведомая ерунда GUI. Проблема с экранами
СообщениеДобавлено: Чт, окт 21 2010, 17:25 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, июн 02 2009, 22:28
Сообщения: 228
Откуда: MOW
Пол: Мужской
А вы уничтожаете объект при выходе из окна (нажатии "Назад")?
Я не уверен (и проверять нет времени сейчас), но есть предположение, что если не уничтожать, то такое может быть.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Неведомая ерунда GUI. Проблема с экранами
СообщениеДобавлено: Пт, окт 22 2010, 06:01 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
Неведомая ерунда GUI. Проблема с экранами.
Надо бы грохнуть один дубликат...


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

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


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

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


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

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