Текущее время: Чт, мар 28 2024, 22:24

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 4 ] 
Автор Сообщение
 Заголовок сообщения: Цикл по определенному полю таблицы.
СообщениеДобавлено: Пт, июн 22 2018, 11:24 
Начинающий
Начинающий

Зарегистрирован:
Чт, июн 07 2018, 17:22
Сообщения: 7
Добрый день, уважаемые форумчане.
Подскажите пожалуйста как можно сделать цикл или прочитать динамическую таблицу по определенному полю?
Название полей получаю через describe field.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Цикл по определенному полю таблицы.
СообщениеДобавлено: Пт, июн 22 2018, 11:35 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
operator assign + f1.
ASSIGN - dynamic_dobj

Также поиск, задача простая, много раз обсуждалось.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Цикл по определенному полю таблицы.
СообщениеДобавлено: Пт, июн 22 2018, 11:35 
Младший специалист
Младший специалист

Зарегистрирован:
Пт, окт 23 2015, 14:48
Сообщения: 90
s.p.i.d. написал(а):
Добрый день, уважаемые форумчане.
Подскажите пожалуйста как можно сделать цикл или прочитать динамическую таблицу по определенному полю?
Название полей получаю через describe field.



Например:

DATA: BEGIN OF ls_text,
text1 TYPE bezei40,
text2 TYPE text40,
text3 TYPE text40,
text4 TYPE text40,
text5 TYPE text40,
text6 TYPE text40,
text7 TYPE text40,
END OF ls_text,
ct_fieldcat TYPE lvc_t_fcat.

FIELD-SYMBOLS: <ls_fieldcat> LIKE LINE OF ct_fieldcat,
<ls_goods_t> TYPE any.
DO 3 TIMES.


SELECT SINGLE text1 text2 text3 text4 text5 text6 text7 INTO CORRESPONDING FIELDS OF ls_text
FROM t604t
WHERE spras EQ sy-langu.

CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'
EXPORTING
i_structure_name = 'T604T'
i_bypassing_buffer = abap_true
CHANGING
ct_fieldcat = ct_fieldcat.

CHECK <ls_fieldcat> IS ASSIGNED.
CASE <ls_fieldcat>-fieldname.
WHEN 'TEXT1' OR 'TEXT2' OR 'TEXT3' OR 'TEXT4' OR 'TEXT5' OR 'TEXT6' OR 'TEXT7'.
ASSIGN COMPONENT <ls_fieldcat>-fieldname OF STRUCTURE ls_text TO <ls_goods_t>.

ENDCASE.


ENDDO.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Цикл по определенному полю таблицы.
СообщениеДобавлено: Пт, июн 22 2018, 11:51 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Пн, апр 17 2006, 11:03
Сообщения: 123
Code:
data lt_dynamic type any table.
data lt_described type standard table of string with default key.

loop at lt_dynamic assigning field-symbol(<ls_dynamic>).
  loop at lt_described assigning field-symbol(<ls_described>).
    assign component <ls_described> of <ls_dynamic> to field-simbol(<lv_field>).
    if sy-subrc = 0.
      write / <lv_field>.
    endif.
  endloop.
endloop.


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

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


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

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


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

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