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

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


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

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


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

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