Текущее время: Вт, июл 29 2025, 05:51

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


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

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


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

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