Текущее время: Пн, июл 21 2025, 16:51

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 8 ] 
Автор Сообщение
 Заголовок сообщения: ALV Tree и класс
СообщениеДобавлено: Чт, окт 16 2008, 09:22 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, сен 16 2008, 10:32
Сообщения: 53
Добрый день. Есть такой вопрос. Я создал класс построения дерева. Дерево строится и отображается хорошо, но при попытке раскрыть ветку падает в дамп.
вот кусок кода.
Code:
method add_node.

  data: relat_node_key type lvc_nkey.
  data: new_node_key type lvc_nkey.
  data: node_text type lvc_value.

  move '' to relat_node_key.
  move me->wa_nodes-objid to node_text.

  call method me->g_alv_tree->add_node
    exporting
      i_relat_node_key     = relat_node_key
      i_relationship       = cl_gui_column_tree=>relat_last_child
      is_outtab_line       = me->wa_nodes
      i_node_text          = node_text
  importing
    e_new_node_key       = new_node_key
  exceptions
    relat_node_not_found = 1
    node_not_found       = 2
    others               = 3
          .
  if sy-subrc <> 0.
  endif.

  me->node_key = new_node_key.

endmethod.

Code:
method add_child.

  data: node_text type lvc_value.
  data: wa_obj type objec.
  data: lp_key type lvc_nkey.
  data: p_node_key type lvc_nkey.

break akomov.

  move-corresponding me->wa_childs to wa_obj.

  move wa_obj-objid to node_text.
  move me->node_key to p_node_key.

  call method me->g_alv_tree->add_node
    exporting
      i_relat_node_key     = p_node_key
      i_relationship       = cl_gui_column_tree=>relat_last_child
      is_outtab_line       = wa_obj
      i_node_text          = node_text
*    Importing
*      E_NEW_NODE_KEY = lp_key
  exceptions
    relat_node_not_found = 1
    node_not_found       = 2
    others               = 3
          .
  if sy-subrc <> 0.
  endif.

endmethod.

и, собственно, сам вызов
Code:
data: node_key type lvc_nkey.

  loop at me->nodes into me->wa_nodes.
    move '' to me->node_key.
    call method me->add_node.

    loop at me->childs into me->wa_childs where pobid eq
me->wa_nodes-objid.
      call method me->add_child.
    endloop.
  endloop.

  call method me->g_alv_tree->frontend_update.

я не понимаю в чем может быть проблема. Может кто подскажет?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, окт 16 2008, 09:40 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, дек 20 2004, 16:05
Сообщения: 1080
Откуда: 4.0B
Пол: Мужской
Честно говоря, на мой взгляд, было бы лучше передавать в методы в качестве параметров номера нодов, а так как-то путано через атрибуты класса получается. А что пишет дамп?

_________________
Я слышу и забываю,
Я вижу и помню долго,
Я делаю и — понимаю.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, окт 16 2008, 10:00 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, сен 16 2008, 10:32
Сообщения: 53
Lars написал:
Честно говоря, на мой взгляд, было бы лучше передавать в методы в качестве параметров номера нодов, а так как-то путано через атрибуты класса получается. А что пишет дамп?

Цитата:
ABAP-äèíàìè÷. îøèáêà GETWA_NOT_ASSIGNED

Field symbol has not yet been assigned.


The current ABAP/4 program "CL_ALV_TREE_BASE==============CP " had to be
terminated because
one of the statements could not be executed.

This is probably due to an error in the ABAP/4 program.


про параметры я не подумал. Сейчас попробую.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, окт 16 2008, 10:19 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, сен 16 2008, 10:32
Сообщения: 53
Попробовал с параметром... не помогло - тот же дамп


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, окт 16 2008, 10:48 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, дек 20 2004, 16:05
Сообщения: 1080
Откуда: 4.0B
Пол: Мужской
А add_node для child не смотрели sy-subrc, там 0?

_________________
Я слышу и забываю,
Я вижу и помню долго,
Я делаю и — понимаю.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, окт 16 2008, 11:08 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, сен 16 2008, 10:32
Сообщения: 53
Lars написал:
А add_node для child не смотрели sy-subrc, там 0?

Смотрел. там 0.
Я грешу на то, что при развертке от не правильно получает номер родительской вершины... либо не правильно ее обрабатывает. Но еще не понимаю почему


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, окт 16 2008, 11:24 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, дек 20 2004, 16:05
Сообщения: 1080
Откуда: 4.0B
Пол: Мужской
А Вы посмотрите в дебагере для g_alv_tree сформированную таблицу для нодов.

_________________
Я слышу и забываю,
Я вижу и помню долго,
Я делаю и — понимаю.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, окт 16 2008, 12:49 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, сен 16 2008, 10:32
Сообщения: 53
Lars написал:
А Вы посмотрите в дебагере для g_alv_tree сформированную таблицу для нодов.

табличка нормально вроде заполнена


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

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


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

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


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

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