Текущее время: Чт, май 15 2025, 19:00

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 15 ] 
Автор Сообщение
 Заголовок сообщения: Additional Field в InfoSet
СообщениеДобавлено: Чт, окт 06 2005, 13:59 
Гость
Подскажите, пожалуйста, вот по чему:
У меня есть Infoset на основе LDB KDF (Vendors).
Среди прочих таблиц я выбираю BKPF и мне нужно в BKPF
добавить дополнительное поле, КОТОРОЕ я ХОЧУ ЗАПОЛНИТЬ ПРОСУММИРОВАННЫМ ПОЛЕМ HWSTE ИЗ ТАБЛИЦЫ BSET.
Смысл всего этого - получить корректный Tax Amount для отдельных позиций поставщиков.
Значит, я создаю это поле на уровне таблицы BKPF (назовем его Correct_Tax_Am), описываю его при создании как LIKE BSET-HWSTE и в Coding Section Additional Field/Structure пишу следующий код его заполнения:

SELECT SUM(BSET-HWSTE)
FROM BSET
INTO Correct_Tax_AMM
WHERE BSET-MANDT = BKPF-MANDT
AND BSET-BUKRS = BKPF-BUKRS
AND BSET-BELNR = BKPF-BELNR
AND BSET-GJAHR = BKPF-GJAHR.

А SAP при генерации INFOSET говорит об ошибке.
Подскажите, как надо это сделать правильно.

Заранее большое спасибо .


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

Зарегистрирован:
Вт, авг 17 2004, 08:55
Сообщения: 331
Откуда: Украина, г.Мариуполь
Пол: Мужской
Может, просто нет завершающего ENDSELECT'a? Или, в качестве альтернативы, использовать SELECT SINGLE? А вообще, желательно подробнее указывать, что говорится в сообщении.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, окт 06 2005, 14:37 
Гость
Спасибо за ответ и совет. ENDSELECT у меня был.
А ругается SAP следующими словами :
-----------------------------
Error in code for additional field CORRECT_TAX_AMM
Unknown column name "SUM(BSET-HWSTE)" not determined until runtime, you cannot specify a field list.
------------------------------

Может быть это тоже важно указать, что я создаю INFOSET на основе логической базы данных KDF, а в свое дополнительное поле делаю выборку из таблицы BSET, не входящей в эту LDB.

Вот так. Очень очень жду помощи


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, окт 06 2005, 15:17 
Гость
Цитата:
Unknown column name "SUM(BSET-HWSTE)" not determined until runtime, you cannot specify a field list.

Это все синтаксис конснструкций ABAP :roll:
Нужно писать SUM( BSET-HWSTE ) :wink:


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

Зарегистрирован:
Вт, авг 17 2004, 08:55
Сообщения: 331
Откуда: Украина, г.Мариуполь
Пол: Мужской
SUM( BSET-HWSTE ) - обязательно с пробелами!


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, окт 06 2005, 15:29 
Гость
Спасибо, я совсем забыла про это. Но при расстановке пробелов
SAP продолжает гневно писать
------------
Error in code for additional field TAX-BSET
uNKNOWN COLUMN NAME "bset-hwste". not determined until runtime, you cannot specify a field list.
-------------

Может это быть связано с тем, что таблица BSET, из которой я делаю SELECT, не входит в данную логическую базу данных. Если проблема в этом, то как ее описать ?


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:   Тема решена
СообщениеДобавлено: Чт, окт 06 2005, 15:47 
Гость
Внимательно посмотрите на условие WHERE.
В левой части выражения нужно указывать не BSET-BUKRS, а BSET~BUKRS. Для остальных полей в левой части - то же самое.
:wink:


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, окт 06 2005, 15:50 
Гость
И в SELECT тоже тильдочку проставить - SUM( BSET~HWSTE )
:roll:


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, окт 06 2005, 16:02 
Гость
И наконец:
так как BSET - таблица кластера, то агрегация данных в ней не поддерживается...
:oops:


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, окт 06 2005, 16:04 
Гость
Всем еще раз огромное спасибо.
Я расставила все тильдочки и "УРА" он [SAP] опознал данное поле но ПОЯВИЛАСЬ ДРУГАЯ ОШИБКА
--------------
Error in code for additional fiels TAX_BSET
Aggregate functions and the addition DISTINCT are not supported in field lists for pooled and cluster tables.
---------------

К сожалению, я точно знаю, что таблица BSET к таким таблицам относится.
Так что же делать ? Есть ли выход из данной ситуации ?


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, окт 06 2005, 16:09 
Гость
Code:
data: sum type bset-hwste.

  clear correct_tax_amm.
  SELECT bset~hwste
  FROM bset
  INTO sum
  WHERE bset~bukrs = bkpf-bukrs
    AND bset~belnr = bkpf-belnr
    AND bset~gjahr = bkpf-gjahr.

    add sum to correct_tax_amm.

  ENDSELECT.


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

Зарегистрирован:
Вт, авг 17 2004, 08:55
Сообщения: 331
Откуда: Украина, г.Мариуполь
Пол: Мужской
А разве не так должно быть:
Code:
  SELECT bset~hwste
  INTO sum
  FROM bset
?


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, окт 06 2005, 16:19 
Гость
Спасибо огромное !!! Заработало !!!.


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, окт 06 2005, 16:22 
Гость
Добавление.
Все работает по коду

SELECT bset~hwste
FROM bset
INTO sum

.........


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, окт 06 2005, 16:24 
Гость
RoadRunner написал:
А разве не так должно быть:
Code:
  SELECT bset~hwste
  INTO sum
  FROM bset
?

без разницы.
Главное, чтобы INTO после WHERE не стояло :lol:


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

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


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

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


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

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