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

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


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

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


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

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