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

Часовой пояс: 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 часа


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

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


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

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