Текущее время: Пт, июл 25 2025, 05:46

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
 Заголовок сообщения: Вопрос по INCLUDE TYPE
СообщениеДобавлено: Пн, дек 12 2011, 11:12 
Ассистент
Ассистент

Зарегистрирован:
Ср, ноя 02 2011, 16:37
Сообщения: 33
Добрый день!
Помогите пожалуйста разобраться
Для отображения в ALV описал тип gtype_alv_struct:

Code:
TYPES: BEGIN OF gtype_item_struct.
          INCLUDE STRUCTURE z_item_table.
TYPES: END OF gtype_item_struct.


Code:
TYPES: BEGIN OF gtype_alv_struct.
          INCLUDE TYPE gtype_item_struct AS item.
          TYPES: cellstyles TYPE lvc_t_styl,
                 is_new   TYPE char1,
                 button     TYPE BAL_S_PUSH.
TYPES: END OF gtype_alv_struct.


Соответственно gtype_skmtr_struct AS item это структура данных которые лежат в гриде, остальное в gtype_alv_struct тех. поля.
Написал FM который принимает таблицу типа z_item_table, но не могу правильно собрать таблицу для передачи в FM, если передавать gtype_alv_struct[], то искл. TYPE_CONVERSION, если сложить gtype_item_struct во внутр. табл, то теряется ссылка на записи и измнение в ФМ не передаются обратно.
Можно ли как то получить табличку вида gtype_item_struct[] с сохранением ссылки на записи gtype_alv_struct[], или это невозможно и я вообще что то не так делаю?


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Вопрос по INCLUDE TYPE
СообщениеДобавлено: Пн, дек 12 2011, 11:29 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988
Dante написал(а):
Добрый день!
Помогите пожалуйста разобраться
Для отображения в ALV описал тип gtype_alv_struct:

Code:
TYPES: BEGIN OF gtype_item_struct.
          INCLUDE STRUCTURE z_item_table.
TYPES: END OF gtype_item_struct.


Code:
TYPES: BEGIN OF gtype_alv_struct.
          INCLUDE TYPE gtype_item_struct AS item.
          TYPES: cellstyles TYPE lvc_t_styl,
                 is_new   TYPE char1,
                 button     TYPE BAL_S_PUSH.
TYPES: END OF gtype_alv_struct.


Соответственно gtype_skmtr_struct AS item это структура данных которые лежат в гриде, остальное в gtype_alv_struct тех. поля.
Написал FM который принимает таблицу типа z_item_table, но не могу правильно собрать таблицу для передачи в FM, если передавать gtype_alv_struct[], то искл. TYPE_CONVERSION, если сложить gtype_item_struct во внутр. табл, то теряется ссылка на записи и измнение в ФМ не передаются обратно.
Можно ли как то получить табличку вида gtype_item_struct[] с сохранением ссылки на записи gtype_alv_struct[], или это невозможно и я вообще что то не так делаю?

Какой FM вы используете для отображения? Непонятно где и почему происходит потеря "ссылок"?
Вы, кроме декларации ряда типов, привели бы более разврнутый код, чтобы не гадать.

_________________
"После" - не значит "вследствие"


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вопрос по INCLUDE TYPE
СообщениеДобавлено: Пн, дек 12 2011, 11:35 
Ассистент
Ассистент

Зарегистрирован:
Ср, ноя 02 2011, 16:37
Сообщения: 33
sy-uname написал(а):
Dante написал(а):
Добрый день!
Помогите пожалуйста разобраться
Для отображения в ALV описал тип gtype_alv_struct:

Code:
TYPES: BEGIN OF gtype_item_struct.
          INCLUDE STRUCTURE z_item_table.
TYPES: END OF gtype_item_struct.


Code:
TYPES: BEGIN OF gtype_alv_struct.
          INCLUDE TYPE gtype_item_struct AS item.
          TYPES: cellstyles TYPE lvc_t_styl,
                 is_new   TYPE char1,
                 button     TYPE BAL_S_PUSH.
TYPES: END OF gtype_alv_struct.


Соответственно gtype_skmtr_struct AS item это структура данных которые лежат в гриде, остальное в gtype_alv_struct тех. поля.
Написал FM который принимает таблицу типа z_item_table, но не могу правильно собрать таблицу для передачи в FM, если передавать gtype_alv_struct[], то искл. TYPE_CONVERSION, если сложить gtype_item_struct во внутр. табл, то теряется ссылка на записи и измнение в ФМ не передаются обратно.
Можно ли как то получить табличку вида gtype_item_struct[] с сохранением ссылки на записи gtype_alv_struct[], или это невозможно и я вообще что то не так делаю?

Какой FM вы используете для отображения? Непонятно где и почему происходит потеря "ссылок"?
Вы, кроме декларации ряда типов, привели бы более разврнутый код, чтобы не гадать.


Code:
FUNCTION Z_0X_MODIFY_ITEMS.
*"----------------------------------------------------------------------
*"*"Локальный интерфейс:
*"  IMPORTING
*"     REFERENCE(I_OPERATION) TYPE  Z0X_MF_OPER_TYPE
*"  TABLES
*"      ITEMS_TAB STRUCTURE  z_item_table


1. Если я передаю gtype_alv_struct[]... искл. TYPE_CONVERSION
2. Если я делаю
Code:
DATA: lt TYPE gtype_item_struct,
          ls LIKE LINE OF lt.

LOOP AT gt_alv_data ' таблица грида типа gtype_alv_struct
MOVE-CORRESPONDING gt_alv_data TO ls.
APPEND ls TO lt
ENDLOOP.

потом вызываю ФМ, передавая в неё lt то изменяя табл. в ФМ в моей программе остаются те же данные в gt_alv_data


Последний раз редактировалось Dante Пн, дек 12 2011, 11:43, всего редактировалось 1 раз.

Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Вопрос по INCLUDE TYPE  Тема решена
СообщениеДобавлено: Пн, дек 12 2011, 11:43 
Старший специалист
Старший специалист

Зарегистрирован:
Вт, ноя 18 2008, 10:40
Сообщения: 342
Откуда: Пермь
Пол: Мужской
Если я правильно понял, вы хотите передать в ФМ проекцию внутренней таблицы. В таком случае это невозможно


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вопрос по INCLUDE TYPE
СообщениеДобавлено: Пн, дек 12 2011, 11:46 
Ассистент
Ассистент

Зарегистрирован:
Ср, ноя 02 2011, 16:37
Сообщения: 33
zsap написал:
Если я правильно понял, вы хотите передать в ФМ проекцию внутренней таблицы. В таком случае это невозможно

А спасибо, а вообще, как по вашему лучше поступить было в таком случае, для грида создавать 2 таблицы (данные, тех. поля) или передавать в ФМ таюлицу вида 'все поля грида', что не очень бы хотелось


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Вопрос по INCLUDE TYPE
СообщениеДобавлено: Пн, дек 12 2011, 13:05 
Старший специалист
Старший специалист

Зарегистрирован:
Вт, ноя 18 2008, 10:40
Сообщения: 342
Откуда: Пермь
Пол: Мужской
В зависимости от задачи. Если речь идет о подготовке данных до вывода в алв - тогда наверное лучше собрать данные в z_item_table, вызвать ваш ФМ, после чего переложить все в таблицу gtype_alv_struct. Если нужно что-то менять в таблице поле вывода - думаю стоит изменить интерфейс ФМ и передавать в него не таблицу, а отдельную строку, или, что даже лучше, отдельные поля


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

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


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

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


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

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