Текущее время: Вт, апр 16 2024, 23:32

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: Внутренняя таблица select-options
СообщениеДобавлено: Чт, июл 13 2017, 12:58 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Чт, янв 24 2013, 08:43
Сообщения: 780
Откуда: South Kazakhstan
Пол: Мужской
Добрый день всем.

Прошу не удивляться возможно за неумные вопросы, т.к. в АБАПе я не слишком силён. Хочу сделать небольшой отчёт. На селекционном экране есть поле выбора select-oprions, т.е. чтобы была возможность выбора диапазона значений. Вот собственно код:
Code:
if kostl ne ''.
    select single * from csks where kostl in kostl.
    if  sy-subrc = 0.
      if kostl-low ne ''.
        kostl2 = kostl.
        SHIFT kostl2 left by 3 PLACES.
        concatenate 'KS2000' kostl2 into kostl2.
      endif.
      select  * from coep appending corresponding fields of table tab where objnr = kostl2  .
    else.
      message s001(kb_co).
    endif.
  endif.

В физической таблице coep поле ВМЗ хранится с неким префиксом спереди, а на селекционном экране оно просто вводится как обычное мвз, например 45-859, а в табличке KS200045-859. Если я на селекционном экране ввожу только одно МВЗ, селект по этому коду с таблички coep проходит, но как быть если указан диапазон МВЗ. Как в таком случае нужно использовать select-options ? Получается мне всему диапазону МВЗ нужно добавить вперёд этот префикс, только в этом случае сработает селект. Может кто подскажет или делал нечто подобное?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Внутренняя таблица select-options
СообщениеДобавлено: Чт, июл 13 2017, 13:16 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, дек 20 2007, 18:21
Сообщения: 1613
Приведение значений во внутренне представление делается на уровне абап словаря. Если поле на экране объявлено с правильным доменом то все будет работать автоматом. Это ко всем объектам относится (например СПП).

_________________
я твой сап эфай внедрял
BAdI-позитив
Взять немножечко абопу, сунь туда кошачью *опу, RFC лапки, БТ старой бабки, на медленном базиснике переносить, тестовое окружение материть, снимать SAT пенку, биться головой о стенку, охапка тайм-шитов, отчет готов!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Внутренняя таблица select-options
СообщениеДобавлено: Чт, июл 13 2017, 13:26 
Специалист
Специалист

Зарегистрирован:
Пн, июл 11 2011, 10:50
Сообщения: 197
Maksimka написал:
Добрый день всем.

Прошу не удивляться возможно за неумные вопросы, т.к. в АБАПе я не слишком силён. Хочу сделать небольшой отчёт. На селекционном экране есть поле выбора select-oprions, т.е. чтобы была возможность выбора диапазона значений. Вот собственно код:


Почитайте про оператор RANGES

Почему у вас select single ?

З.Ы. Найдите на проекте абапера, он сделает как надо :)


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Внутренняя таблица select-options
СообщениеДобавлено: Чт, июл 13 2017, 15:02 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Чт, янв 24 2013, 08:43
Сообщения: 780
Откуда: South Kazakhstan
Пол: Мужской
Bimit написал(а):
Почитайте про оператор RANGES

Почему у вас select single ?

З.Ы. Найдите на проекте абапера, он сделает как надо :)

В общем, как Вы и посоветовали, сделал с помощью RANGES
Code:
if kostl-low ne '' or kostl-high ne ''.
    move: kostl-sign to skoart-sign,
          kostl-option to skoart-option,
          kostl-low  to skoart-low,
          kostl-high to skoart-high.
    concatenate 'KS2000' skoart-low into skoart-low.
    concatenate 'KS2000' skoart-high into skoart-high.
    append skoart.
  endif.

  select * from coep appending corresponding fields of table tab where objnr in skoart
    and kstar in kstar and GJAHR = '2017' and versn = '0'.

Теперь в диапазон МВЗ в поле добавляется префикс. Всем спасибо за советы.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Внутренняя таблица select-options
СообщениеДобавлено: Пт, июл 14 2017, 09:17 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, сен 09 2004, 07:32
Сообщения: 777
Откуда: Москва
Пол: Мужской
Рекомендую все-таки формировать Номер объекта не конкатенацией, а стандартно - например, через ФМ K_KOSTL_OBJECT_KEY_GET.

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


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

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


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

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


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

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