Текущее время: Пт, июл 18 2025, 14:50

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 12 ] 
Автор Сообщение
 Заголовок сообщения: Как программно отметить checkbox в дереве
СообщениеДобавлено: Пт, авг 11 2006, 09:35 
Ассистент
Ассистент

Зарегистрирован:
Ср, июн 21 2006, 10:20
Сообщения: 38
Добрый день.
У меня есть дерево cl_gui_column_tree, в котором есть checkbox. Подскажите, пожалуйста, как программно поставить изменить его сотояние (поставить галочку или снять). Хочу просто добавить кнопку "установить/снять пометку" для всех checkbox в дереве.
Заранее спасибо.


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

Зарегистрирован:
Ср, май 17 2006, 10:11
Сообщения: 52
Откуда: Москва
Пол: Мужской
Просто изменяешь значение соответствующего поля в своей внутренней таблице на 'X' или '', потом вызываешь метод refresh_table_display


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, авг 11 2006, 09:51 
Ассистент
Ассистент

Зарегистрирован:
Ср, июн 21 2006, 10:20
Сообщения: 38
ZShurik написал:
Просто изменяешь значение соответствующего поля в своей внутренней таблице на 'X' или '', потом вызываешь метод refresh_table_display

Вопрос в том, как правильно обратиться к даному полю, к чему обратиться? ведь не просто
DATA item TYPE mtreeitm.
.....
item = 'X'.
Куда нужно присвоить 'X'?


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

Зарегистрирован:
Вт, авг 17 2004, 14:35
Сообщения: 1519
Откуда: В ВЕЧНОМ БАНЕ
nickmne написал(а):
ZShurik написал:
Просто изменяешь значение соответствующего поля в своей внутренней таблице на 'X' или '', потом вызываешь метод refresh_table_display

Вопрос в том, как правильно обратиться к даному полю, к чему обратиться? ведь не просто
DATA item TYPE mtreeitm.
.....
item = 'X'.
Куда нужно присвоить 'X'?

В таблице с данными которые ты вывдодишь... а вообще может исхднички от SLIS-а посмотрим, почитаем...


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

Зарегистрирован:
Ср, май 17 2006, 10:11
Сообщения: 52
Откуда: Москва
Пол: Мужской
nickmne написал(а):
ZShurik написал:
Просто изменяешь значение соответствующего поля в своей внутренней таблице на 'X' или '', потом вызываешь метод refresh_table_display

Вопрос в том, как правильно обратиться к даному полю, к чему обратиться? ведь не просто
DATA item TYPE mtreeitm.
.....
item = 'X'.
Куда нужно присвоить 'X'?


Сорри, в пятницу глючу :) Я написал про случай из другой оперы. Если используешь cl_gui_column_tree, то все просто ужос...

Code:
data:
    nodes TYPE treev_upno,
    node LIKE LINE OF nodes,
    items type standard table of STREEITMC,
    item TYPE STREEITMC.
   .....
   item-node_key = 'Child1'.
   item-item_name = 'Column3'.
   item-u_chosen = 'X'.  " Указываем, что хотим обновить флаг CHOSEN
   item-CHOSEN = 'X'.
   append item to items.
   .....
  CALL METHOD g_tree->update_nodes_and_items
    EXPORTING
      node_table                     = nodes
      item_table                      = items
      item_table_structure_name      = 'STREEITMC'.


табличку nodes можно оставить пустой, главное правильно заполнить items.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, авг 11 2006, 12:19 
Ассистент
Ассистент

Зарегистрирован:
Ср, июн 21 2006, 10:20
Сообщения: 38
Спасибо


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, авг 11 2006, 12:58 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пт, янв 21 2005, 12:40
Сообщения: 371
Пол: Мужской
Цитата:
Сорри, в пятницу глючу Я написал про случай из другой оперы. Если используешь cl_gui_column_tree, то все просто ужос...

Код:

data:
nodes TYPE treev_upno,
node LIKE LINE OF nodes,
items type standard table of STREEITMC,
item TYPE STREEITMC.
.....
item-node_key = 'Child1'.
item-item_name = 'Column3'.
item-u_chosen = 'X'. " Указываем, что хотим обновить флаг CHOSEN
item-CHOSEN = 'X'.
append item to items.
.....
CALL METHOD g_tree->update_nodes_and_items
EXPORTING
node_table = nodes
item_table = items
item_table_structure_name = 'STREEITMC'.



табличку nodes можно оставить пустой, главное правильно заполнить items.


Так - так просто не проканает, т.к. g_tree->update_nodes_and_items защищенный метод. Только если этот код вызывается из потомка CL_GUI_ALV_TREE.

Юзайте:
Code:
            DATA: LT_ITEM_LAYOUT TYPE LVC_T_LACI.
            DATA: LS_ITEM_LAYOUT LIKE LINE OF LT_ITEM_LAYOUT.

            CLEAR LS_ITEM_LAYOUT.
            LS_ITEM_LAYOUT-T_IMAGE = ICON_EMPLOYEE.
            LS_ITEM_LAYOUT-FIELDNAME = G_TREE->C_HIERARCHY_COLUMN_NAME.
            LS_ITEM_LAYOUT-CLASS   = CL_GUI_COLUMN_TREE=>ITEM_CLASS_CHECKBOX.
            LS_ITEM_LAYOUT-EDITABLE = 'X'.
            LS_ITEM_LAYOUT-CHOSEN = SPACE.
            LS_ITEM_LAYOUT-U_CHOSEN = 'X'.
            APPEND LS_ITEM_LAYOUT TO LT_ITEM_LAYOUT.

            CALL METHOD G_TREE->CHANGE_NODE
              EXPORTING
                I_NODE_KEY     = LS_CHIT-NODEKEY
                I_OUTTAB_LINE  = LS_OUTTAB
*              IS_NODE_LAYOUT =
                IT_ITEM_LAYOUT = LT_ITEM_LAYOUT
*              I_NODE_TEXT    =
*              I_U_NODE_TEXT  =
              EXCEPTIONS
                NODE_NOT_FOUND = 1
                OTHERS         = 2.

8)


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

Зарегистрирован:
Ср, май 17 2006, 10:11
Сообщения: 52
Откуда: Москва
Пол: Мужской
PP написал:
Так - так просто не проканает, т.к. g_tree->update_nodes_and_items защищенный метод. Только если этот код вызывается из потомка CL_GUI_ALV_TREE.


В базисе 6.40 update_nodes_and_items вполне нормальный public method. А вот change_node - ваще нету.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, авг 11 2006, 13:41 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пт, янв 21 2005, 12:40
Сообщения: 371
Пол: Мужской
ZShurik написал:
PP написал:
Так - так просто не проканает, т.к. g_tree->update_nodes_and_items защищенный метод. Только если этот код вызывается из потомка CL_GUI_ALV_TREE.


В базисе 6.40 update_nodes_and_items вполне нормальный public method. А вот change_node - ваще нету.


Я на базисе 6.20 )


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

Зарегистрирован:
Ср, май 17 2006, 10:11
Сообщения: 52
Откуда: Москва
Пол: Мужской
PP написал:
ZShurik написал:
PP написал:
Так - так просто не проканает, т.к. g_tree->update_nodes_and_items защищенный метод. Только если этот код вызывается из потомка CL_GUI_ALV_TREE.


В базисе 6.40 update_nodes_and_items вполне нормальный public method. А вот change_node - ваще нету.


Я на базисе 6.20 )


Посмотрел в 6.20. Класс CL_GUI_COLUMN_TREE метод UPDATE_NODES_AND_ITEMS самый что ни на есть публичный....


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, авг 11 2006, 13:46 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пт, янв 21 2005, 12:40
Сообщения: 371
Пол: Мужской
А я писал про CL_GUI_ALV_TREE :D


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, авг 11 2006, 14:05 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, ноя 23 2005, 13:37
Сообщения: 1805
Откуда: ECC 6.0
Пол: Мужской
PP написал:
А я писал про CL_GUI_ALV_TREE :D


В CL_GUI_ALV_TREE вообще нет метода update_nodes_and_items.
Его вообще нигде нет, кроме CL_ITEM_TREE_CONTROL.


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

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


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

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


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

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