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

Часовой пояс: 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 часа


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

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


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

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