169 похожих чатов

Господа, подскажите, пожалуйста: есть структура, нужно проверить, что все её

поля not initial. Там только простые типы данных в полях.
Правильно я понимаю, что это получение списка компонент через RTTS, а потом цикл по ним и ASSIGN?
Или есть чего поумнее, а может вообще готовое?

13 ответов

33 просмотра

Можно без rtti а sy-index юзать

можно assign component по индексу

Vladimir-K Автор вопроса
Vladimir K
Старьё же. Немодное. 🙂

ну делай как умеешь по новому и модно

Vladimir K
Старьё же. Немодное. 🙂

Самый быстрый доступ к полю через индекс

Azamat Mamashev
можно assign component по индексу

ты невнимателен. перечитай условие задачи

Денис
ты невнимателен. перечитай условие задачи

Денис - поясни мне, чего не так через assign component по индексу? :) что там такого в условии? вот так работать не будет? LOOP AT itab ASSIGING <stab>. DO. ASSIGN COMPONENT sy-index OF STRUCTURE <stab> INTO <value>. IF sy-subrc <> 0. EXIT. ENDIF. IF <value> IS INITIAL. " в строке есть начальное значение exit. ENDIF. ENDDO. ENDLOOP.

Sergey Yanov
Денис - поясни мне, чего не так через assign com...

все так. я ж написал - так быстрее, чем через ртти получить список полей и потом бегать по ним

Vladimir-K Автор вопроса
Sergey Yanov
Денис - поясни мне, чего не так через assign com...

А Денис прав: условие ты невнимательно прочитал. 😀

Если хочется чего-нибудь новенького, то можно поизвращаться так (: IF CORRESPONDING #( ls_data MAPPING fld1 EXCEPT * ) IS NOT INITIAL AND CORRESPONDING #( ls_data MAPPING fld2 EXCEPT * ) IS NOT INITIAL AND CORRESPONDING #( ls_data MAPPING fld2 EXCEPT * ) IS NOT INITIAL. " Все поля непустые! ENDIF.

Vladimir-K Автор вопроса
Iurii Slobodchikov
Если хочется чего-нибудь новенького, то можно поиз...

это же надо так постараться извратить corresponding 😂

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта