Текущее время: Ср, июл 23 2025, 05:17

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 31 ]  На страницу 1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения: Как в ФМ передать параметром select-options?
СообщениеДобавлено: Пт, фев 27 2009, 10:35 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Ср, дек 17 2008, 19:38
Сообщения: 434
Откуда: Санкт-Петербург
Пол: Женский
Замучилась искать.. неужели нет возможности?
надо передать с экрана выбора select-options, чтобы в функции сделать select.. where .. in SO_

_________________
Silence v.2.0


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как в ФМ передать параметром select-options?
СообщениеДобавлено: Пт, фев 27 2009, 10:39 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, дек 20 2004, 16:05
Сообщения: 1080
Откуда: 4.0B
Пол: Мужской
структура selopt не подойдет ?
только преобразовывать придется.

или сделайте сами нужную структуру или тип таблицы.
сделать это можно в se11. создаете тип таблицы и дальше по меню Обработать->Определить как тип тпблицы диапозонов

_________________
Я слышу и забываю,
Я вижу и помню долго,
Я делаю и — понимаю.


Последний раз редактировалось Lars Пт, фев 27 2009, 10:43, всего редактировалось 1 раз.

Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как в ФМ передать параметром select-options?
СообщениеДобавлено: Пт, фев 27 2009, 10:41 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Ср, дек 17 2008, 19:38
Сообщения: 434
Откуда: Санкт-Петербург
Пол: Женский
selopt ))))))))
Спасибки, Lars :)

_________________
Silence v.2.0


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как в ФМ передать параметром select-options?
СообщениеДобавлено: Пт, фев 27 2009, 10:43 
Директор
Директор

Зарегистрирован:
Пт, окт 07 2005, 09:10
Сообщения: 752
Откуда: 4.6C
Пол: Мужской
Воспользуйтесь параметром внутр. таблица типа RANGE.
Перед вызовом ФМ надо сделать что-то типа.
<RANGE var>[] = <selopt>[]
По идее должно прокатить, иначе через LOOP заполнить.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как в ФМ передать параметром select-options?
СообщениеДобавлено: Пт, фев 27 2009, 10:45 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, дек 20 2004, 16:05
Сообщения: 1080
Откуда: 4.0B
Пол: Мужской
Silence1 написала:
selopt ))))))))
Спасибки, Lars :)



это, все таки, не самый лучший, на мой взгляд, вариант.
лучше тип таблицы создать.

_________________
Я слышу и забываю,
Я вижу и помню долго,
Я делаю и — понимаю.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как в ФМ передать параметром select-options?
СообщениеДобавлено: Пт, фев 27 2009, 10:50 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Ср, дек 17 2008, 19:38
Сообщения: 434
Откуда: Санкт-Петербург
Пол: Женский
Попробовала создавать свои типы строки и таблицы.
По меню Обработать->Определить как тип таблицы диапозонов - получила ошибки, плюнула,
просто сделала selopt - все работает!
Спасибо!!! :)

_________________
Silence v.2.0


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как в ФМ передать параметром select-options?
СообщениеДобавлено: Пт, фев 27 2009, 11:30 
Модератор
Модератор
Аватара пользователя

Зарегистрирован:
Пт, июн 16 2006, 00:43
Сообщения: 1686
Откуда: Москва <-> Красноярск
Пол: Мужской
Зачем все эти сложности? ;)

Пример:

В программе:

Code:
TABLES: t001

SELECT-OPTIONS: so_bukrs FOR t001-bukrs.

START-OF-SELECTION.

  CALL FUNCTION 'Z_TEST'
    EXPORTING
      test = so_bukrs[].


ФМ Z_TEST:
Code:
FUNCTION Z_TEST.
*"----------------------------------------------------------------------
*"*"Локальный интерфейс:
*"  IMPORTING
*"     REFERENCE(TEST) TYPE  TABLE
*"----------------------------------------------------------------------

DATA: lt_bukrs TYPE TABLE OF t001.

SELECT * FROM t001 INTO TABLE lt_bukrs WHERE bukrs IN test.

BREAK-POINT.

ENDFUNCTION.


И как бы все.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как в ФМ передать параметром select-options?
СообщениеДобавлено: Пт, фев 27 2009, 11:34 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, дек 20 2004, 16:05
Сообщения: 1080
Откуда: 4.0B
Пол: Мужской
и то верно :roll:

_________________
Я слышу и забываю,
Я вижу и помню долго,
Я делаю и — понимаю.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как в ФМ передать параметром select-options?
СообщениеДобавлено: Пт, фев 27 2009, 13:32 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Ср, дек 17 2008, 19:38
Сообщения: 434
Откуда: Санкт-Петербург
Пол: Женский
С selopt я поторопилась - падает в дамп :(

Пономарев Артем написал:
Зачем все эти сложности? ;)
Пример:
В программе:
Code:
TABLES: t001
SELECT-OPTIONS: so_bukrs FOR t001-bukrs.
START-OF-SELECTION.
  CALL FUNCTION 'Z_TEST'
    EXPORTING
      test = so_bukrs[].


ФМ Z_TEST:
Code:
FUNCTION Z_TEST.
*"----------------------------------------------------------------------
*"*"Локальный интерфейс:
*"  IMPORTING
*"     REFERENCE(TEST) TYPE  TABLE
*"----------------------------------------------------------------------

DATA: lt_bukrs TYPE TABLE OF t001.
SELECT * FROM t001 INTO TABLE lt_bukrs WHERE bukrs IN test.
BREAK-POINT.
ENDFUNCTION.


И как бы все.

Забыла сказать, что вызов ФМ по RFC,
REFERENCE(TEST) TYPE TABLE не катит :(

Lars, как правильно сделать тип таблицы (и дальше по меню Обработать->Определить как тип тпблицы диапозонов)?
Какие поля и какой ссылочный тип?
Я создала структуру-строку
Code:
SIGN           TVARV_SIGN
OPTION   TVARV_OPTI
LOW           TRKORR
HIGH           TRKORR

потом таблицу с этой строкой
делаю: Обработать->Определить как тип тпблицы диапозонов
при активации ошибки:
Тип компонента SIGN в типе строки недопустим в типе таблиц диапазонов.
Тип компонента OPTION в типе строки недопустим в типе таблиц диапазонов.

_________________
Silence v.2.0


Последний раз редактировалось Silence1 Пт, фев 27 2009, 13:37, всего редактировалось 1 раз.

Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как в ФМ передать параметром select-options?
СообщениеДобавлено: Пт, фев 27 2009, 13:37 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пт, янв 18 2008, 10:34
Сообщения: 716
Откуда: Moscow
Пол: Мужской
Silence1 написала:
С selopt я поторопилась - падает в дамп :(

Пономарев Артем написал:
Зачем все эти сложности? ;)
Пример:
В программе:
Code:
TABLES: t001
SELECT-OPTIONS: so_bukrs FOR t001-bukrs.
START-OF-SELECTION.
  CALL FUNCTION 'Z_TEST'
    EXPORTING
      test = so_bukrs[].


ФМ Z_TEST:
Code:
FUNCTION Z_TEST.
*"----------------------------------------------------------------------
*"*"Локальный интерфейс:
*"  IMPORTING
*"     REFERENCE(TEST) TYPE  TABLE
*"----------------------------------------------------------------------

DATA: lt_bukrs TYPE TABLE OF t001.
SELECT * FROM t001 INTO TABLE lt_bukrs WHERE bukrs IN test.
BREAK-POINT.
ENDFUNCTION.


И как бы все.

Забыла сказать, что вызов ФМ по RFC,
REFERENCE(TEST) TYPE TABLE не катит :(

хмм а почему не в TABLES
Code:
*"  TABLES
*"      RTABLE_SEL STRUCTURE  SELOPT

_________________
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. (Э. Йодан)


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как в ФМ передать параметром select-options?
СообщениеДобавлено: Пт, фев 27 2009, 13:48 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Ср, дек 17 2008, 19:38
Сообщения: 434
Откуда: Санкт-Петербург
Пол: Женский
Code:
*"  TABLES
*"      RTABLE_SEL STRUCTURE  SELOPT


Вот этот вариант падал в дамп при вызове ФМ
Type conflict when calling a function module (field length)

Code:
SELECT-OPTIONS: p_TRKORR for E070-TRKORR.

CALL FUNCTION 'ZBC_REQUESTS_USER'
  DESTINATION '***'
  TABLES
    P_E070         = p_e070
    REQUESTS       = p_TRKORR
    USERS          = p_uname.

_________________
Silence v.2.0


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как в ФМ передать параметром select-options?
СообщениеДобавлено: Пт, фев 27 2009, 13:55 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пт, янв 18 2008, 10:34
Сообщения: 716
Откуда: Moscow
Пол: Мужской
может тогда вам выложить объявление вашего ФМ . может легче будет косяк найти потому что ошибка все таки не в способе объявления а в самом не соответствии передаваемого параметра

_________________
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. (Э. Йодан)


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как в ФМ передать параметром select-options?
СообщениеДобавлено: Пт, фев 27 2009, 13:59 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, дек 20 2004, 16:05
Сообщения: 1080
Откуда: 4.0B
Пол: Мужской
se11. создание типа таблицы.
вводите название.
Обработать->Определить как тип тпблицы диапозонов
вводите тип на который ссылаться будете (kunnr - например если создаете дебиторов).
Ивводите стуктуры типа строки zчто-нибудь .. тоесть фактически её создаете. все.

_________________
Я слышу и забываю,
Я вижу и помню долго,
Я делаю и — понимаю.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как в ФМ передать параметром select-options?
СообщениеДобавлено: Пт, фев 27 2009, 14:01 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, дек 20 2004, 16:05
Сообщения: 1080
Откуда: 4.0B
Пол: Мужской
Silence1 написала:
Code:
*"  TABLES
*"      RTABLE_SEL STRUCTURE  SELOPT


Вот этот вариант падал в дамп при вызове ФМ
Type conflict when calling a function module (field length)

Code:
SELECT-OPTIONS: p_TRKORR for E070-TRKORR.

CALL FUNCTION 'ZBC_REQUESTS_USER'
  DESTINATION '***'
  TABLES
    P_E070         = p_e070
    REQUESTS       = p_TRKORR
    USERS          = p_uname.



так я же говорил, что возможно, надо сначала делать преобразование. Ваш select-option и selopt разной длины.

_________________
Я слышу и забываю,
Я вижу и помню долго,
Я делаю и — понимаю.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как в ФМ передать параметром select-options?
СообщениеДобавлено: Пт, фев 27 2009, 14:02 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Ср, дек 17 2008, 19:38
Сообщения: 434
Откуда: Санкт-Петербург
Пол: Женский
Code:
FUNCTION ZBC_REQUESTS_USER.
*"----------------------------------------------------------------------
*"  TABLES
*"      P_E070 STRUCTURE  E070
*"      REQUESTS STRUCTURE  SELOPT
*"      USERS STRUCTURE  SELOPT
*"----------------------------------------------------------------------
select * from e070 into TABLE p_e070
     where strkorr = ' ' and AS4USER in users and TRKORR in REQUESTS.
ENDFUNCTION.


Если просто тестирую модуль - все выбирается как надо.
Если вызываю по RFC из программы - ничего не выбирается.
Если вызов без RFC (меняю свойства ФМ) - падает в дамп.

_________________
Silence v.2.0


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 31 ]  На страницу 1, 2, 3  След.

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


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

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


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

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