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

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


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

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


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

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