Получить поле значения динамически из другой таблицы ABAP

помогите мне с отчетом Abap. У меня 2 стол.

  1. Итаб голова
Z1 Z2 Z3 А Б С
  1. Обязательное поле Itab
Имя поля Z2

я должен создать файл только с полями itab2 (обязательное поле itab), но со значением заголовка itab.

Файл будет:

вкладка файл

Z2 Б

Itab2 говорит мне, какие поля itab1 обязательны для создания файла itab.

Это можно сделать с помощью FIELD-SYMBOL, просто мне пока не ясно, является ли "2. Обязательное поле" одним полем, это структура или таблица? Вы пишете, что это таблица, но тогда в ней может быть несколько строк, и все это не имеет никакого смысла (по крайней мере, для меня...)

József Szikszai 17.12.2020 20:34

Itab2 - это таблица с именем поля itab1, обязательным для создания файла. В примере поле было 1, но может иметь какое-то имя поля itab1. Итак, я сопоставляю 2 таблицы для создания файла, но я понятия не имею

raffaele basilicata 17.12.2020 20:37

Итак, itab2 может иметь несколько строк, т.е. несколько имен полей? И вы хотите, чтобы все эти поля были в файле?

József Szikszai 17.12.2020 20:45

Да, itab2 может иметь все имена полей или некоторые имена полей itab1.. поэтому моя проблема заключается в том, как я получаю значение itab1, начинающееся с имени поля itab2.

raffaele basilicata 17.12.2020 20:53
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
4
927
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Это дает вам представление о том, что делать с использованием ASSIGN для динамического выбора поля.

  LOOP AT itab_a INTO DATA(wa_itab_a).     " your data tab
    LOOP AT itab_b INTO DATA(wa_itab_b).   " your obligatory field list
      TRANSLATE wa_itab_b-fieldname TO UPPER CASE. " important if they are not already in uppercase
      ASSIGN COMPONENT wa_itab_b-fieldname OF STRUCTURE wa_itab_a TO FIELD-SYMBOL(<fs_field>).
      " ... in <FS_FIELD> you will have the values of the obligatory fields
      " so you can concatenate, par example, to file line
      CONCATENATE wa_file-line <fs_field> INTO wa_file-line SEPARATED BY c_separator.
    ENDLOOP.
    " append file line here, something like this:
    APPEND wa_file TO itab_file.
    CLEAR wa_file.
  ENDLOOP.

Другие вопросы по теме