Текущее время: Пн, июн 30 2025, 13:30

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
 Заголовок сообщения: передача таблиц с разной структурой в CALL FUNCTION
СообщениеДобавлено: Чт, авг 19 2010, 10:54 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, мар 13 2007, 22:57
Сообщения: 71
Нужно считать данные из другой системы во внутренние таблицы sap. Есть функция, которая по динамические определенным запросам считывает нужные данные и кладет их в таблицу соответствующей структуры, нельзя ли как-нибудь определить таблицу для INTAB_DB, чтобы не вызывать последовательно

Code:
CALL FUNCTION 'ZDB'
    EXPORTING
      SQL        = P_SQL
       FC         = LT_FIELDCAT
     TABLES
      INTAB_DB   =  GT_t1
      T_MSG      = L_T_MSG.


CALL FUNCTION 'ZDB'
    EXPORTING
      SQL        = P_SQL
       FC         = LT_FIELDCAT
     TABLES
      INTAB_DB   =  GT_t2
      T_MSG      = L_T_MSG.

для каждой таблицы отдельно. где таблицы GT_t1 и GT_t2 имеют различные структуры.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: передача таблиц с разной структурой в CALL FUNCTION
СообщениеДобавлено: Чт, авг 19 2010, 11:30 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
Если правильно понял, то все просто, в ФМ-е на вкладке таблицы, объявляете таблицу не типизируя ее и все. Потом можно передавать таблицу любой структуры. Например, ФМ POPUP_WITH_TABLE_DISPLAY.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: передача таблиц с разной структурой в CALL FUNCTION
СообщениеДобавлено: Чт, авг 19 2010, 13:12 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, мар 13 2007, 22:57
Сообщения: 71
Besa написал:
Если правильно понял, то все просто, в ФМ-е на вкладке таблицы, объявляете таблицу не типизируя ее и все. Потом можно передавать таблицу любой структуры. Например, ФМ POPUP_WITH_TABLE_DISPLAY.


не совсем так поняли. сейчас так и есть как Вы описали. объявлена таблиц как и Вы сказали выше, и передаются таблицы любой структуры типа 5 однообразных блоков. а мне бы хотелось передавать в цикле, ну т.е.

Code:


loop at itab.

CALL FUNCTION 'ZDB'
    EXPORTING
      SQL        = itab-P_SQL
       FC         = LT_FIELDCAT
     TABLES
      INTAB_DB   =  itab-name_tab
      T_MSG      = L_T_MSG.

endloop.


т.е. это конечно неверно написано:
Code:
   INTAB_DB   =  itab-name_tab

но, смысл, я думаю, теперь понятен


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: передача таблиц с разной структурой в CALL FUNCTION
СообщениеДобавлено: Чт, авг 19 2010, 13:19 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
Воспользуйтесь FIELD-SYMBOLS с типом TABLE, в таблице храните поле типа REF TO DATA.

_________________
С уважением,
Удав.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: передача таблиц с разной структурой в CALL FUNCTION
СообщениеДобавлено: Чт, авг 19 2010, 14:05 
Менеджер
Менеджер

Зарегистрирован:
Чт, янв 20 2005, 08:34
Сообщения: 573
Пол: Мужской
birds написал(а):
не совсем так поняли. сейчас так и есть как Вы описали. объявлена таблиц как и Вы сказали выше, и передаются таблицы любой структуры типа 5 однообразных блоков. а мне бы хотелось передавать в цикле, ну т.е.

Code:


loop at itab.

CALL FUNCTION 'ZDB'
    EXPORTING
      SQL        = itab-P_SQL
       FC         = LT_FIELDCAT
     TABLES
      INTAB_DB   =  itab-name_tab
      T_MSG      = L_T_MSG.

endloop.


т.е. это конечно неверно написано:
Code:
   INTAB_DB   =  itab-name_tab

но, смысл, я думаю, теперь понятен


:D и что сейчас мешает сделать так (в цикле), если INTAB_DB объясвлена как ANY TABLE?

Code:
loop at itab.
CALL FUNCTION 'ZDB'
    EXPORTING
      SQL        = itab-P_SQL
       FC         = LT_FIELDCAT
     TABLES
      INTAB_DB   =  itab-TAB
      T_MSG      = L_T_MSG.

endloop.

_________________
Волю в кулак, мышцы в узду, работай себе и не ахай!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: передача таблиц с разной структурой в CALL FUNCTION
СообщениеДобавлено: Сб, авг 21 2010, 09:07 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
Code:
data: begin of itab occurs 0,
      name_tab(20),
      end of itab.
itab-name_tab = 't1'.
append itab.
itab-name_tab = 't2'.
append itab.

data: t1 like eban occurs 0.
data: t2 like mseg occurs 0.
select * from eban into table t1 up to 10 rows.
select * from mseg into table t2 up to 10 rows.

field-symbols: <f1> type standard table.

loop at itab.
  assign (itab-name_tab) to <f1>.
  call function 'POPUP_WITH_TABLE_DISPLAY_OK'
    exporting
      endpos_col   = 1
      endpos_row   = 1
      startpos_col = 10
      startpos_row = 10
      titletext    = '111'
    tables
      valuetab     = <f1>.
endloop.


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

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


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

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


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

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