Текущее время: Пн, июл 21 2025, 06:25

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 18 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Передать в текстовую переменную пробел?
СообщениеДобавлено: Вт, фев 14 2006, 09:07 
Старший специалист
Старший специалист

Зарегистрирован:
Пн, окт 24 2005, 15:55
Сообщения: 296
Пол: Мужской
Доброе время суток.
Элементарный вопрос, но не могу решить этот ребус.
Пишу:
concatenate '1000' space '1100' into vvv.
Смотрю в переменную а там "10001100", а где же пробел?
А хотелось бы "1000 1100".


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, фев 14 2006, 09:15 
Менеджер
Менеджер

Зарегистрирован:
Вт, дек 07 2004, 10:39
Сообщения: 610
concatenate .. separated by space
а вообще хелп иногда помогает

_________________
полный SAPец


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, фев 14 2006, 09:17 
Начинающий
Начинающий

Зарегистрирован:
Вт, июл 12 2005, 12:55
Сообщения: 17
concatenate '1000' '1100' into vvv separated by space.

_________________
Машина должна не думать, а ездить.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, фев 14 2006, 09:20 
Старший специалист
Старший специалист

Зарегистрирован:
Пн, окт 24 2005, 15:55
Сообщения: 296
Пол: Мужской
slash написал(а):
concatenate .. separated by space
а вообще хелп иногда помогает

Это хорошо, только пробелы мне нужны не везде в строке.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, фев 14 2006, 09:41 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Сб, сен 25 2004, 16:30
Сообщения: 1368
Откуда: Москва
Пол: Мужской
Igor Garanichev написал:
Это хорошо, только пробелы мне нужны не везде в строке.

Придется делать несколько операторов. CONCATENATE съедает хвостовые пробелы в строках.

_________________
С уважением, Сергей Королев


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, фев 14 2006, 09:45 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, сен 09 2004, 07:32
Сообщения: 777
Откуда: Москва
Пол: Мужской
Есть два приема:
1) запись со смещением
vvv+0(4) = '1000'.
vvv+4(5) = '100'.
2) типизовать переменную vvv как структуру с полями определенных типов (длины), далее писать в каждое поле:
vvv-kokrs = '1000'.
vvv-belnr = '100'.

_________________
"Прежде чем сделать что-то, подумай, к чему это может привести..."


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, фев 14 2006, 09:48 
Старший специалист
Старший специалист

Зарегистрирован:
Пн, окт 24 2005, 15:55
Сообщения: 296
Пол: Мужской
nicky555 написал:
Есть два приема:
1) запись со смещением
vvv+0(4) = '1000'.
vvv+4(5) = '100'.
2) типизовать переменную vvv как структуру с полями определенных типов (длины), далее писать в каждое поле:
vvv-kokrs = '1000'.
vvv-belnr = '100'.

Вот второй вариант интересен, а как же мне присвоить эту структуру строковой переменной?


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

Зарегистрирован:
Пн, окт 24 2005, 15:55
Сообщения: 296
Пол: Мужской
Igor Garanichev написал:
nicky555 написал:
Есть два приема:
1) запись со смещением
vvv+0(4) = '1000'.
vvv+4(5) = '100'.
2) типизовать переменную vvv как структуру с полями определенных типов (длины), далее писать в каждое поле:
vvv-kokrs = '1000'.
vvv-belnr = '100'.

Вот второй вариант интересен, а как же мне присвоить эту структуру строковой переменной?


Всё, заработало. Всем спасибо.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Передать в текстовую переменную пробел?
СообщениеДобавлено: Вт, фев 14 2006, 10:41 
Специалист
Специалист

Зарегистрирован:
Пт, янв 27 2006, 11:16
Сообщения: 105
Igor Garanichev написал:
Доброе время суток.
Элементарный вопрос, но не могу решить этот ребус.
Пишу:
concatenate '1000' space '1100' into vvv.
Смотрю в переменную а там "10001100", а где же пробел?
А хотелось бы "1000 1100".


А вариант
write: a1, a2 to str.
не подойдет?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Передать в текстовую переменную пробел?
СообщениеДобавлено: Вт, фев 14 2006, 11:36 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Сб, сен 25 2004, 16:30
Сообщения: 1368
Откуда: Москва
Пол: Мужской
lards написал(а):
А вариант write: a1, a2 to str. не подойдет?

Чей-то у меня подозрение, что в результате a1 будет выдан в обычный ABAP-list, а a2 запишется в строку str.

_________________
С уважением, Сергей Королев


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Передать в текстовую переменную пробел?
СообщениеДобавлено: Вт, фев 14 2006, 11:41 
Старший специалист
Старший специалист

Зарегистрирован:
Пн, окт 24 2005, 15:55
Сообщения: 296
Пол: Мужской
Сергей Королев написал:
lards написал(а):
А вариант write: a1, a2 to str. не подойдет?

Чей-то у меня подозрение, что в результате a1 будет выдан в обычный ABAP-list, а a2 запишется в строку str.

Ребята, хватит спорить. :)))
Я создал структуру. Передал отдельным элементам значения. И в результате присвоил текстовой переменной структуру.
Получил строку и с пробелами и без. :)
Что для меня и требовалось.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Передать в текстовую переменную пробел?
СообщениеДобавлено: Вт, фев 14 2006, 18:06 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Пн, окт 18 2004, 12:27
Сообщения: 93
Igor Garanichev написал:
Ребята, хватит спорить. :)))
Я создал структуру. Передал отдельным элементам значения. И в результате присвоил текстовой переменной структуру.
Получил строку и с пробелами и без. :)
Что для меня и требовалось.


Проверь, что в структуре все поля текстовые. А то в Unicode версии (если она у вас еще не), с такими присвоениями весело будет :wink:


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Передать в текстовую переменную пробел?
СообщениеДобавлено: Ср, фев 15 2006, 13:44 
Специалист
Специалист

Зарегистрирован:
Пт, янв 27 2006, 11:16
Сообщения: 105
Сергей Королев написал:
lards написал(а):
А вариант write: a1, a2 to str. не подойдет?

Чей-то у меня подозрение, что в результате a1 будет выдан в обычный ABAP-list, а a2 запишется в строку str.


Проверьте, работает
Мой любимый оператор... :D


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Передать в текстовую переменную пробел?
СообщениеДобавлено: Ср, фев 15 2006, 14:14 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Сб, сен 25 2004, 16:30
Сообщения: 1368
Откуда: Москва
Пол: Мужской
lards написал(а):
Мой любимый оператор... :D

Любовь - штука иррациональная...
Вот программа (4.6с):
Code:
DATA:
  a1(4) VALUE '1000',
  a2(4) VALUE '2000',
  result(10).

WRITE: / 'before operator WRITE: a1, a2 TO result.'.
SKIP.

WRITE: a1, a2 TO result.

WRITE: / 'after operator WRITE: a1, a2 TO result.'.
SKIP.

WRITE: / 'a1 =', a1,
       / 'a2 =', a2,
       / 'result', result.

А вот результат (ABAP list):
Code:
before operator WRITE: a1, a2 TO result.

1000
after operator WRITE: a1, a2 TO result.

a1 = 1000
a2 = 2000
result 2000

Итак, как и было сказано, оператор WRITE: a1, a2 TO result. выдал А1 в список, А2 - записал в переменную result. 4.7 под рукой нет, проверить не могу.

_________________
С уважением, Сергей Королев


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Передать в текстовую переменную пробел?
СообщениеДобавлено: Ср, фев 15 2006, 14:27 
Гость
Сергей Королев написал:
Итак, как и было сказано, оператор WRITE: a1, a2 TO result. выдал А1 в список, А2 - записал в переменную result. 4.7 под рукой нет, проверить не могу.


мда, страшно подумать что было бы если бы в 4.7 это работало иначе!


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

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


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

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


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

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