Текущее время: Сб, июл 19 2025, 19:33

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 8 ] 
Автор Сообщение
 Заголовок сообщения: Объединить поля в запросе!
СообщениеДобавлено: Ср, фев 15 2006, 17:19 
Гость
Добрый день всем! Подскажите как сделать запрос на АБАП вот такого типа и можно ли "select a || b as MMM from KKK "? ТКак можно сделать объединение?


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

Зарегистрирован:
Сб, сен 25 2004, 16:30
Сообщения: 1368
Откуда: Москва
Пол: Мужской
Можно воспользоваться NATIVE-SQL - конструкция EXEC SQL. Хотя это не есть правильная практика. В стандартном Open SQL такое не получается.

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


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, фев 15 2006, 19:21 
Гость
как вариант:
Code:
data: begin of mmm,
           f1 like tab-f1,
           f2 like tab-f2,
         end of mmm.
  select single f1 f2 into mmm from tab.
  write: mmm.   "используем без спецификации компонентов


но это только будет работать для char-like полей, т.е. у которых внутреннее представление символьное. также, как вариант, можно использовать обычную строку достаточной длины.


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

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

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


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, фев 16 2006, 09:27 
Гость
SPikARD написал(а):
как вариант:
Code:
data: begin of mmm,
           f1 like tab-f1,
           f2 like tab-f2,
         end of mmm.
  select single f1 f2 into mmm from tab.
  write: mmm.   "используем без спецификации компонентов


но это только будет работать для char-like полей, т.е. у которых внутреннее представление символьное. также, как вариант, можно использовать обычную строку достаточной длины.


такой подход вряд ли подойдет, а если уже объявленная структура состоит из 10 полей и в ней одно поле как раз и должно состоят из двух полей!?

[quote="SPikARD"]как вариант:
Code:
DATA: begin of Struc,
           INV_NUM LIKE ANLA-INVNR,
           NAME_OS(100) TYPE  c, это поле состоит из b~TXT50 b~TXA50
           MAT_FIO(46) TYPE c,
           SALD_SUMM LIKE ANLC-KANSW,
           MVZ LIKE ANLZ-KOSTL,
           NAME_CEX LIKE SETHEADERT-DESCRIPT,
      end of Struc.

.........


select b~INVNR b~TXT50 b~TXA50 a~KANSW c~ANBTR from ANLC as a
     ........
       INTO Struc
.......
     endselect.




Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, фев 16 2006, 12:52 
Гуру-модератор
Гуру-модератор
Аватара пользователя

Зарегистрирован:
Пн, окт 11 2004, 20:32
Сообщения: 2470
Пол: Мужской
viper, вам подсказали максимум из возможного. Open-SQL это далеко не оракловый или мссиквельный SQL :(

_________________
- Может ли настоящий мастер кунг-фу получить по морде?
- Настоящий мастер может все!


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:   Тема решена
СообщениеДобавлено: Чт, фев 16 2006, 14:49 
Гость
Code:
types:
   begin of rec1,
      f1 like tab-f1,
      f2 like tab-f2,
   end of rec1,
   begin of rec2,
      f3 like tab-f3,
      f4 like tab-f4,
   end of rec1.
data:
   begin of rec_tot,
     z1 like tab-z1,
     z2 like tab-z2,
     z3 type rec1,
     z4 like tab-z3,
     z5 type rec2,
   end of rec_tot.

select z1 z2 f1 f2 z3 f3 [f4] into rec_tot from tab1.


т.е. описание и запослнение глубокой структуры будет работать правильно только в случае если все поля, входящие в нее, будут в select'е. единственный случай, можно f4 (в коде []) пропустить, т.е. если струтура находится в конце родительской структуры и опускать элементы тоже можно только с конца.
более вариантов я лично не знаю. проще, имхо, пользоваться concatenate и т.д.


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, фев 16 2006, 16:02 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Вт, авг 17 2004, 12:44
Сообщения: 305
Откуда: Жайрем -> Астана
viper написал(а):
как вариант:
Code:
DATA: begin of Struc,
           INV_NUM LIKE ANLA-INVNR,
           NAME_OS(100) TYPE  c, это поле состоит из b~TXT50 b~TXA50
           MAT_FIO(46) TYPE c,
           SALD_SUMM LIKE ANLC-KANSW,
           MVZ LIKE ANLZ-KOSTL,
           NAME_CEX LIKE SETHEADERT-DESCRIPT,
      end of Struc.

.........


select b~INVNR b~TXT50 b~TXA50 a~KANSW c~ANBTR from ANLC as a
     ........
       INTO Struc
.......
     endselect.

а почему просто не сделать что-то вроде CONCATENATE txt50 txa50 INTO txt100... все равно ведь в цикле(SELECT-ENDSELECT) крутится...иль я чего не пойму :?:


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

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


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

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


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

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