Текущее время: Чт, июн 06 2024, 18:43

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 30 ]  На страницу Пред.  1, 2
Автор Сообщение
 Заголовок сообщения: Re: Как в Query реализовать определение текста аналогично ФМ READ_TEXT
СообщениеДобавлено: Пт, июн 10 2011, 17:38 
Специалист
Специалист

Зарегистрирован:
Пт, авг 24 2007, 06:26
Сообщения: 170
Откуда: Югорск
Спасибо ребята. Есесственно все получилось, теперь хоть буду знать как программные вставки делать в Query.
Только по настройке СПРО чего то не поняла я :(


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как в Query реализовать определение текста аналогично ФМ READ_TEXT
СообщениеДобавлено: Ср, ноя 21 2012, 09:50 
Начинающий
Начинающий

Зарегистрирован:
Пн, июн 04 2012, 10:27
Сообщения: 10
Пол: Мужской
Ребята, спасибо. Очень нужно было добавить, все помогло


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как в Query реализовать определение текста аналогично ФМ READ_TEXT
СообщениеДобавлено: Пн, янв 25 2021, 13:36 
Специалист
Специалист

Зарегистрирован:
Чт, май 16 2013, 13:37
Сообщения: 214
Откуда: Челябинск
Пол: Мужской
Да, очень полезное обсуждение, благодарю, очень помогли.

_________________
Свобода здесь и сейчас.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как в Query реализовать определение текста аналогично ФМ READ_TEXT
СообщениеДобавлено: Пн, янв 25 2021, 14:52 
Специалист
Специалист

Зарегистрирован:
Чт, май 16 2013, 13:37
Сообщения: 214
Откуда: Челябинск
Пол: Мужской
Код читает не весь длинный текст в SQ отчете, подскажите пожалуйста как правильно прописать в мой код CONCATENATE? уже по всякому пробовал, ошибок нет, но не выводит хоть ты тресни полностью все внесенное.

Code:
data: l_NAME like THEAD-TDNAME,
      l_OBJECT like THEAD-TDOBJECT,
      l_ID like THEAD-TDID,
      l_LANGUAGE like THEAD-TDSPRAS.
data: lt_LINES TYPE STANDARD TABLE OF tline,
      lw_lines TYPE tline.

clear:l_NAME,lt_lines[],lw_lines,LONGTEXT_RU.
        l_OBJECT = 'MATERIAL'.
        l_NAME = mara-matnr.
        l_ID = 'GRUN'.
        l_LANGUAGE = 'RU'.

CALL FUNCTION 'READ_TEXT'
      EXPORTING
         OBJECT = l_OBJECT
         NAME = l_NAME
         ID = l_ID
          LANGUAGE = l_LANGUAGE
      TABLES
        LINES = lt_LINES
      EXCEPTIONS
         OTHERS = 1.
IF sy-subrc EQ 0 AND lt_lines IS NOT INITIAL.
LOOP AT lt_lines INTO lw_lines.
  IF LONGTEXT_RU IS INITIAL.
      LONGTEXT_RU = lw_lines-tdline.
  ELSE.
    CONCATENATE LONGTEXT_RU lw_lines-tdline INTO LONGTEXT_RU SEPARATED BY space.
  ENDIF.
ENDLOOP.
ENDIF.

_________________
Свобода здесь и сейчас.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как в Query реализовать определение текста аналогично ФМ READ_TEXT
СообщениеДобавлено: Пн, янв 25 2021, 17:27 
Гуру-модератор
Гуру-модератор
Аватара пользователя

Зарегистрирован:
Вт, май 17 2005, 13:35
Сообщения: 4843
Откуда: Москва
Пол: Мужской
Код не читает или ALV не выводит? У ALV есть ограничение на длину выводимого текста, ~100 символов
(не поручусь за точность, но ограничение в 128 байт, а так как разные русские буквы разное число байт занимают, но получается порядка 100 символов).

_________________
Удача - результат нашего желания (© А. Нортон)


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как в Query реализовать определение текста аналогично ФМ READ_TEXT
СообщениеДобавлено: Вт, янв 26 2021, 07:07 
Специалист
Специалист

Зарегистрирован:
Чт, май 16 2013, 13:37
Сообщения: 214
Откуда: Челябинск
Пол: Мужской
Да, по всей видимости так и происходит ALV не выводит все символы, ограничивает в 100 символов.
А как же тогда быть? Сделать несколько столбцов с продолжением текста с разным кодом? или что еще можно придумать?

_________________
Свобода здесь и сейчас.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как в Query реализовать определение текста аналогично ФМ READ_TEXT
СообщениеДобавлено: Вт, янв 26 2021, 08:05 
Специалист
Специалист

Зарегистрирован:
Чт, май 16 2013, 13:37
Сообщения: 214
Откуда: Челябинск
Пол: Мужской
Исправил

_________________
Свобода здесь и сейчас.


Последний раз редактировалось riki11 Вт, янв 26 2021, 08:10, всего редактировалось 1 раз.

Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как в Query реализовать определение текста аналогично ФМ READ_TEXT
СообщениеДобавлено: Вт, янв 26 2021, 08:08 
Специалист
Специалист

Зарегистрирован:
Чт, май 16 2013, 13:37
Сообщения: 214
Откуда: Челябинск
Пол: Мужской
riki11 написал:
Добавил два поля, в первом считываю первую строку с EQ '*'..

Code:
IF sy-subrc EQ 0 AND lt_lines IS NOT INITIAL.
LOOP AT lt_lines INTO lw_lines WHERE tdformat EQ '*'.
  IF LONGTEXT_RU IS INITIAL.
      LONGTEXT_RU = lw_lines-tdline.
  ELSE.
    CONCATENATE LONGTEXT_RU lw_lines-tdline INTO LONGTEXT_RU SEPARATED BY space.
  ENDIF.
ENDLOOP.
ENDIF.


во втором поле читаю вторую строку c EQ '/'.

Code:
IF sy-subrc EQ 0 AND ld_lines IS NOT INITIAL.
LOOP AT ld_LINES INTO lr_lines WHERE tdformat EQ '/'.
  IF LONGTEXT_RU1 IS INITIAL.
      LONGTEXT_RU1 = lr_lines-tdline.
  ELSE.
    CONCATENATE LONGTEXT_RU1 lr_lines-tdline INTO LONGTEXT_RU1 SEPARATED BY space.
  ENDIF.
ENDLOOP.
ENDIF.


а как остальные считать теперь не понятно, их еще 4 там с линиями EQ '/'., очень длинный текст внесли.

_________________
Свобода здесь и сейчас.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как в Query реализовать определение текста аналогично ФМ READ_TEXT
СообщениеДобавлено: Вт, янв 26 2021, 18:35 
Специалист
Специалист

Зарегистрирован:
Чт, май 16 2013, 13:37
Сообщения: 214
Откуда: Челябинск
Пол: Мужской
Дорогие товарищи абаперы, подскажите, что сделать нужно?

_________________
Свобода здесь и сейчас.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как в Query реализовать определение текста аналогично ФМ READ_TEXT
СообщениеДобавлено: Вт, янв 26 2021, 22:18 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3074
Откуда: Москва
riki11 написал:
Дорогие товарищи абаперы, подскажите, что сделать нужно?

Если нужно 1 поле, то зачем вы на TDFORMAT внимание обращаете?

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


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как в Query реализовать определение текста аналогично ФМ READ_TEXT
СообщениеДобавлено: Ср, янв 27 2021, 06:58 
Специалист
Специалист

Зарегистрирован:
Чт, май 16 2013, 13:37
Сообщения: 214
Откуда: Челябинск
Пол: Мужской
Нужно не только первую строку, но и все последующие. если без TDFORMAT, то он вытаскивает в alv только 100 символов, а там на самом деле где-то 500, то есть 5 строк образовалось.

_________________
Свобода здесь и сейчас.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как в Query реализовать определение текста аналогично ФМ READ_TEXT
СообщениеДобавлено: Ср, янв 27 2021, 10:35 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, фев 21 2007, 08:50
Сообщения: 1574
Откуда: Пермь
Пол: Мужской
Заберите таблицу lines, которую вернет read_text. Слейте конкатенацией в стринг.
Через ФМ специальный сепарируйте обратно в куски нужной длины (например, 128 символов, так как Вам уже сказали, что в ALV кверюши выводят максимально именно столько). Конкатенация и обратное разделение помогают а) равномерно распределить значения из lines б) добиться непревышения максимальной возможной длины.

_________________
Алё, это Пакистан? Нам нужен один килограмм


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как в Query реализовать определение текста аналогично ФМ READ_TEXT
СообщениеДобавлено: Вт, мар 02 2021, 17:19 
Старший специалист
Старший специалист

Зарегистрирован:
Чт, мар 29 2007, 11:51
Сообщения: 330
Откуда: Yugorsk.RU
Пол: Мужской
Там же ФМ специальный есть, для правильной конверсии LINES[] в string, учитывая переносы (TDFORMAT = '='), абзацы и проч.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как в Query реализовать определение текста аналогично ФМ READ_TEXT
СообщениеДобавлено: Вт, мар 02 2021, 19:24 
Специалист
Специалист

Зарегистрирован:
Чт, май 16 2013, 13:37
Сообщения: 214
Откуда: Челябинск
Пол: Мужской
Ну, в принципе, сейчас все работает как надо в программе, с тем, что я нарисовал.

_________________
Свобода здесь и сейчас.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как в Query реализовать определение текста аналогично ФМ READ_TEXT
СообщениеДобавлено: Вт, мар 02 2021, 19:26 
Специалист
Специалист

Зарегистрирован:
Чт, май 16 2013, 13:37
Сообщения: 214
Откуда: Челябинск
Пол: Мужской
Вернее, мы решили, что весь текст нам не нужен, вытащил только 100 символов. А так - попробовать можно, но это кому как захочется уже.

_________________
Свобода здесь и сейчас.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 30 ]  На страницу Пред.  1, 2

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


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

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


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

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