Текущее время: Вт, июн 24 2025, 17:38

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 8 ] 
Автор Сообщение
 Заголовок сообщения: Связь полей в ср-ве поиска
СообщениеДобавлено: Ср, сен 23 2015, 07:10 
Младший специалист
Младший специалист

Зарегистрирован:
Пт, ноя 07 2014, 20:19
Сообщения: 55
Добрый день!

Мне нужно создать ср-во поиска, в котором будут связаны 2 таблицы, но по одному полю они будут связаны вот так
ANLA-ANLN1 = CAOS-AUFEX(12) , т.е. целое значение поля с 12 первыми значениями другого.

Создаю ср-во поиска в se11 , на него создаю метод выбора на основе ракурса двух таблиц, но там условия их связи моно только целые поля прописать.

Подскажите пож-та еще варианты решить проблему.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Связь полей в ср-ве поиска
СообщениеДобавлено: Ср, сен 23 2015, 09:16 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пн, мар 28 2005, 15:38
Сообщения: 1257
Сделать такое соединение в версиях ниже 7.40 точно нельзя (может и в 7.40 нельзя, я не пробовал, но есть идея как можно попробовать обойти)
Создайте ср-во поиска на основе пользовательского средства поиска(ФМ).

_________________
Там, где я рос, единственным развлечением было запоминать число «π».(С) Н. Стивенсон


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Связь полей в ср-ве поиска
СообщениеДобавлено: Ср, сен 23 2015, 14:48 
Младший специалист
Младший специалист

Зарегистрирован:
Пт, ноя 07 2014, 20:19
Сообщения: 55
Пытаюсь разобраться с пользовательскими средствами поиска...

Создал копию F4IF_SHLP_EXIT_EXAMPLE.

Все равно не могу понять.

Нужно на входе ср-во поиска чтобы было AUFK-BUKRS AUFK-AUFNR AUFK-AUART AUFK-KTEXT ANLA-ANLN1
На выходе AUFK-AUFNR, AUFK-KTEXT, ANLA-TYPBZ.

Связь таблиц AUFK-BUKRS = ANLA-BUKRS и AUFK-AUFEX(12) = ANLA-ANLN1

В польз. ср-ве поиска я допустим выбрал в итоге все anln1, которые могут быть нужны

Code:
TABLES : aufk, anla.
  data lt_aufk type TABLE OF aufk WITH HEADER LINE.
  data lt_anla type TABLE OF anla WITH HEADER LINE.
  data : BEGIN OF lt_anln1 OCCURS 0,
          anln1 type anln1,
         end of lt_anln1.
  FIELD-SYMBOLS : <ls_aufk> like LINE OF   lt_aufk,
                  <ls_anla> like LINE OF   lt_anla.

  IF CALLCONTROL-STEP = 'PRESEL1'.

    SELECT DISTINCT * FROM aufk  into TABLE lt_aufk.
    DELETE lt_aufk WHERE aufex = ''.
    LOOP AT lt_aufk ASSIGNING <ls_aufk>.
       lt_anln1 = <ls_aufk>-aufex(12).
       APPEND lt_anln1.
    ENDLOOP.

    SELECT DISTINCT * FROM anla INTO TABLE lt_anla
      FOR ALL ENTRIES IN  lt_anln1
      WHERE
        anla~anln1 = lt_anln1-anln1.

    Loop at lt_anla ASSIGNING <ls_anla>.
     SELOPT-SHLPNAME  = 'ZORDER'.
     SELOPT-SHLPFIELD = 'ANLN1'.
     SELOPT-SIGN      = 'I'.
     SELOPT-OPTION    = 'EQ'.
     SELOPT-HIGH      = ''.
     SELOPT-LOW       = <ls_anla>-anln1.
     APPEND SELOPT TO SHLP-SELOPT.
    ENDLOOP.
  ENDIF.


В итоге при запуске ср-ва поиска у меня выскакивают в поле ANLN1 необходимые для анализа значения.
Но дальше как? Надо же писать из каких таблиц искать данные?
Пишу метод выбора ракурс там две эти таблицы и там свзять можно только такую написать AUFK-BUKRS = ANLA-BUKRS

В итоге (если больше ничего на вход ср-ва поиска не подавать), выдает список ANLA-TYPBZ ANLA-ANLN1 (ограничивающихся моим польз.ср-ом) и к нему произвольные
AUFK-AUFNR, AUFK-KTEXT, так как условие в ракурсе только AUFK-BUKRS = ANLA-BUKRS .

Что то я не так точно делаю? :)


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Связь полей в ср-ве поиска
СообщениеДобавлено: Ср, сен 23 2015, 15:07 
Младший специалист
Младший специалист

Зарегистрирован:
Пт, ноя 07 2014, 20:19
Сообщения: 55
Не могу понять, польз ср-ом поиска мы можем ограничить какое-нибудь поле, так? Но мне ведь нужно ограничени в связке 2-х таблиц...


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Связь полей в ср-ве поиска
СообщениеДобавлено: Ср, сен 23 2015, 15:22 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пн, мар 28 2005, 15:38
Сообщения: 1257
В ФМ пользовательского средства поиска прога будет заходить с определенными шагами (STEP). почитайте их описание в хелпе к этому шаблонному ФМ F4IF_SHLP_EXIT_EXAMPLE.
В каждом из этих шагов можно совершать какие-то действия. В частности, в шаге SELECT можно самостоятельно формировать набор данных который вам нужно отобразить пользователю. Т.е. как уж вы там будете писть программу чтобы сформировать список выбора для юзера - это ваше личное дело. Т.к. у вас нужно соединять\фильтровать по частичному совпадению полей, нужно сперва получить список значений который максимально сузит набор получаемой инфы, затем преобразовать его, чтобы можно было сделать выборку по парной таблице. Получить данные, объединить их абапом, и вернуть пользователю.

_________________
Там, где я рос, единственным развлечением было запоминать число «π».(С) Н. Стивенсон


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Связь полей в ср-ве поиска
СообщениеДобавлено: Ср, сен 23 2015, 15:46 
Младший специалист
Младший специалист

Зарегистрирован:
Пт, ноя 07 2014, 20:19
Сообщения: 55
Но мне еще нужно, чтобы помимо моих фильтров, пользоветель мог внести другие ограничивающие пар-ры, это тоже возможно?

Вобщем нужно ковыряться с F4IF_SHLP_EXIT_EXAMPLE :), спасибо!


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Связь полей в ср-ве поиска
СообщениеДобавлено: Ср, сен 23 2015, 20:01 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пн, мар 28 2005, 15:38
Сообщения: 1257
hugo788 написал(а):
Но мне еще нужно, чтобы помимо моих фильтров, пользоветель мог внести другие ограничивающие пар-ры, это тоже возможно?


Параметры, введенные юзером, приходят в фм в shlp-selopt. Разбираете, строите из них Range, и накладываете ограничения

_________________
Там, где я рос, единственным развлечением было запоминать число «π».(С) Н. Стивенсон


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Связь полей в ср-ве поиска
СообщениеДобавлено: Чт, сен 24 2015, 09:35 
Младший специалист
Младший специалист

Зарегистрирован:
Пт, ноя 07 2014, 20:19
Сообщения: 55
Кодер написал(а):
hugo788 написал(а):
Но мне еще нужно, чтобы помимо моих фильтров, пользоветель мог внести другие ограничивающие пар-ры, это тоже возможно?


Параметры, введенные юзером, приходят в фм в shlp-selopt. Разбираете, строите из них Range, и накладываете ограничения



Разобрался, хорошая штука, спасибо еще раз за направление.


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

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


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

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


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

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