Текущее время: Вс, июл 13 2025, 09:42

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 11 ] 
Автор Сообщение
 Заголовок сообщения: Как "отловить" символ "возврат каретки" (или просто ENTER) в ABAP-e ?
СообщениеДобавлено: Вт, май 02 2006, 08:07 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пт, июн 24 2005, 15:18
Сообщения: 1216
Откуда: Diagon Alley
Есть строка.
В ней надо заменить символы ENTER на пробелы.
Как отловить символы ENTER в ABAP-е ?

_________________
"Если ты в молодости не испытал трудности, их стоит купить за большие деньги". (с) Даймо


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как "отловить" символ "возврат каретки" (или просто ENTER) в ABAP-e ?
СообщениеДобавлено: Вт, май 02 2006, 08:52 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Вт, авг 17 2004, 12:44
Сообщения: 305
Откуда: Жайрем -> Астана
RSA1 написал(а):
Есть строка.
В ней надо заменить символы ENTER на пробелы.
Как отловить символы ENTER в ABAP-е ?

если именно символ CR(Carriage Return), то например:
Code:
  data :
    gc_txt type string, " строка
    gc_cr(1) type c value cl_abap_char_utilities=>cr_lf,
    gc_cr_space(2) type c
    .
  ...
  gc_cr_space = gc_cr.
  translate gc_txt using gc_cr_space.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как "отловить" символ "возврат каретки" (или просто ENTER) в ABAP-e ?
СообщениеДобавлено: Вт, май 02 2006, 09:08 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пт, июн 24 2005, 15:18
Сообщения: 1216
Откуда: Diagon Alley
flipper написал(а):
если именно символ CR(Carriage Return), то например:
Code:
  data :
    gc_txt type string, " строка
    gc_cr(1) type c value cl_abap_char_utilities=>cr_lf,
    gc_cr_space(2) type c
    .
  ...
  gc_cr_space = gc_cr.
  translate gc_txt using gc_cr_space.


Спасибо.

Похоже именно то, что мне нужно.

_________________
"Если ты в молодости не испытал трудности, их стоит купить за большие деньги". (с) Даймо


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, май 02 2006, 10:04 
Специалист
Специалист

Зарегистрирован:
Пт, апр 08 2005, 10:27
Сообщения: 125
Пол: Мужской
можно так:
Code:
СONSTANTS: asciitab type x value 9.
DATA: tabs.
field-symbols: <tmp>.

  assign tabs to <tmp> type 'X'.
  <tmp> = asciitab.
  split t_line at tab into z1.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как "отловить" символ "возврат каретки" (или просто ENTER) в ABAP-e ?
СообщениеДобавлено: Чт, фев 17 2011, 17:27 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, янв 25 2007, 10:51
Сообщения: 54
Пол: Мужской
Уважаемые коллеги, есть ли еще какой способ избавиться от символа "#" ?
Почему-то все вышеперечисленные способы не помогли.

Пояснение ситуации:
Импортирую данные их Excel-файла (файл создан в Excel 2007). В нек. ячейках пользователи надо\не надо понажимали "Enter", что при записи в БД
дает символ '#'. Еще раз повторюсь, что ни один из способ не помог, и так же не помогла функция replace.

_________________
Начальство жмется на курсы, так что тыкаюсь сам. Отсюда возможны глупые вопросы - не судите строго ;)


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как "отловить" символ "возврат каретки" (или просто ENTER) в ABAP-e ?
СообщениеДобавлено: Чт, фев 17 2011, 18:17 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, авг 19 2004, 17:37
Сообщения: 1962
Откуда: Москва
Пол: Мужской
Bulat написал:
Уважаемые коллеги, есть ли еще какой способ избавиться от символа "#" ?
Почему-то все вышеперечисленные способы не помогли.

Пояснение ситуации:
Импортирую данные их Excel-файла (файл создан в Excel 2007). В нек. ячейках пользователи надо\не надо понажимали "Enter", что при записи в БД
дает символ '#'. Еще раз повторюсь, что ни один из способ не помог, и так же не помогла функция replace.

Символ # - еще не значит Enter. За ним может скрываться любой непечатный символ.

_________________
"For all entries" не в SAP-ах, "for all entries" в головах! :)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как "отловить" символ "возврат каретки" (или просто ENTER) в ABAP-e ?
СообщениеДобавлено: Пт, фев 18 2011, 06:47 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, авг 05 2008, 19:46
Сообщения: 96
Откуда: С Урала
Bulat написал:
Уважаемые коллеги, есть ли еще какой способ избавиться от символа "#" ?
Почему-то все вышеперечисленные способы не помогли.

Пояснение ситуации:
Импортирую данные их Excel-файла (файл создан в Excel 2007). В нек. ячейках пользователи надо\не надо понажимали "Enter", что при записи в БД
дает символ '#'. Еще раз повторюсь, что ни один из способ не помог, и так же не помогла функция replace.

Просто из опыта - тут лучше преобразовать в Excel - воспользоваться функцией =ПЕЧСИМВ().


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как "отловить" символ "возврат каретки" (или просто ENTER) в ABAP-e ?
СообщениеДобавлено: Пт, фев 18 2011, 10:18 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, янв 25 2007, 10:51
Сообщения: 54
Пол: Мужской
NickS написал(а):
Просто из опыта - тут лучше преобразовать в Excel - воспользоваться функцией =ПЕЧСИМВ().


Такой способ рассматривался, но тогда нивелируется сама идея автоматической загрузки. Дело в том, что эти файлы шлют большое кол-во
поставщиков и если править каждый файл, то будет жутко неудобно. Хотелось бы програмно это обработать.

_________________
Начальство жмется на курсы, так что тыкаюсь сам. Отсюда возможны глупые вопросы - не судите строго ;)


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как "отловить" символ "возврат каретки" (или просто ENTER) в ABAP-e ?
СообщениеДобавлено: Пт, фев 18 2011, 10:53 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пт, апр 13 2007, 16:52
Сообщения: 381
Пол: Мужской
Решали аналогичную задачу вот таким способом:
Code:
        REPLACE ALL OCCURRENCES OF
            cl_abap_char_utilities=>cr_lf(1)   IN lv_string_text WITH ''.
        REPLACE ALL OCCURRENCES OF
          cl_abap_char_utilities=>cr_lf+1(1) IN lv_string_text WITH ''.

Пока жалоб нет, на этапе тестирования тоже косяков не выловили, из чего делаю вывод, что закрывается большинство вариантов.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как "отловить" символ "возврат каретки" (или просто ENTER) в ABAP-e ?
СообщениеДобавлено: Пт, фев 18 2011, 11:19 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, янв 25 2007, 10:51
Сообщения: 54
Пол: Мужской
Angie
Спасибо огромное! Достаточно оказалось второй строчки
Code:
  REPLACE ALL OCCURRENCES OF
              cl_abap_char_utilities=>cr_lf+1(1) IN lv_string_text WITH ''.

_________________
Начальство жмется на курсы, так что тыкаюсь сам. Отсюда возможны глупые вопросы - не судите строго ;)


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как "отловить" символ "возврат каретки" (или просто ENTER) в ABAP-e ?
СообщениеДобавлено: Пт, фев 18 2011, 11:27 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, авг 05 2008, 19:46
Сообщения: 96
Откуда: С Урала
Bulat написал:
Такой способ рассматривался, но тогда нивелируется сама идея автоматической загрузки. Дело в том, что эти файлы шлют большое кол-во
поставщиков и если править каждый файл, то будет жутко неудобно. Хотелось бы програмно это обработать.

Ну я и автоматизировал это на VBA - был макрос который пересоздавал Excel файлы с удалением непечатных знаков :D.


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

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


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

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


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

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