Текущее время: Сб, июл 26 2025, 04:22

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: Помогите. Почему не передаются данные на экран через bdc-сессию
СообщениеДобавлено: Ср, ноя 30 2011, 09:15 
Начинающий
Начинающий

Зарегистрирован:
Пн, окт 17 2011, 16:47
Сообщения: 3
В первом случае не передаются данные в поле RAIFP2-ANLN1 и RAIFP2-ANLN2. Во втором случае не происходит нажатие кнопки MULT и появление экранной таблицы. Вот код:
Code:
IF lv_line = 1.
    READ TABLE lt_anla INTO ls_anla INDEX 1.
    FREE gt_bdc.
    PERFORM bdc_row USING:
          'X'        'SAPLSPO4'        '0300', "заполняем БЕ
          ' '         'SVALD-VALUE'   pa_bukrs,
          ' '        'BDC_OKCODE'   '=FURT'," Ок
          'X'       'SAPLAMDP'        '0100',
          'X'       'SAPLAMDP'        '0300',
          ' '        'RAIFP2-ANLN1'   ls_anla-anln1,
          ' '        'RAIFP2-ANLN2'   ls_anla-anln2.
          ' '        'BDC_OKCODE'   ''.
    CALL TRANSACTION 'ABAVN'
           USING gt_bdc
           MODE gc_mode
           MESSAGES INTO bdc_tab.
  ELSE.
    LOOP AT lt_anla into ls_anla.
      MOVE-CORRESPONDING ls_anla TO ls_1022.
      INSERT INTO ztaa_bus1022 VALUES ls_1022.
    ENDLOOP.
    FREE gt_bdc.
    ls_anla-anln1 = ''.
    FREE gt_bdc.

    PERFORM bdc_row USING:
          'X'       'SAPLSPO4'          '0300',  "заполняем БЕ
          ' '        'SVALD-VALUE'     pa_bukrs,
          ' '        'BDC_OKCODE'     ''," Ок
          'X'       'SAPLAMDP'          '0100',
          ' '        'RAIFP2-ANLN1'      ' ',
          'X'       'SAPLAMDP'            '0100',
          ' '        'BDC_OKCODE'      '=MULT'," Несколько основных средств
          'X'       'SAPLAMDP'            '0201'.


    CALL TRANSACTION 'ABAVN'
           USING gt_bdc
           MODE gc_mode
           MESSAGES INTO bdc_tab.
  ENDIF.


*&---------------------------------------------------------------------*
*&      Form  bdc_row
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      -->P_DYNBEGIN text
*      -->P_1        text
*      -->P_2        text
*----------------------------------------------------------------------*
FORM bdc_row USING p_dynbegin p_1 p_2.
  IF p_dynbegin = gc_x.
    CLEAR gt_bdc.
    gt_bdc-program  = p_1.
    gt_bdc-dynpro   = p_2.
    gt_bdc-dynbegin = gc_x.
    APPEND gt_bdc.
  ELSE.
    CLEAR gt_bdc.
    gt_bdc-fnam = p_1.
    gt_bdc-fval = p_2.
    APPEND gt_bdc.
  ENDIF.

ENDFORM.


Пономарев Артем: пользуйтесь тегом code, пожалуйста.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Помогите. Почему не передаются данные на экран через bdc-сессию
СообщениеДобавлено: Ср, ноя 30 2011, 11:05 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988
arctic_woman написал(а):
В первом случае не передаются данные в поле RAIFP2-ANLN1 и RAIFP2-ANLN2. Во втором случае не происходит нажатие кнопки MULT и появление экранной таблицы. Вот код:
...

MESSAGES INTO bdc_tab. Какие либо сообщения присутствуют? В каком режиме выполняется пакетник? Зависит ли результат от выполнения в видимом\срытом режиме?

_________________
"После" - не значит "вследствие"


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Помогите. Почему не передаются данные на экран через bdc-сессию
СообщениеДобавлено: Чт, дек 01 2011, 11:52 
Младший специалист
Младший специалист

Зарегистрирован:
Пн, ноя 13 2006, 14:42
Сообщения: 93
Пол: Мужской
arctic_woman написал(а):
В первом случае не передаются данные в поле RAIFP2-ANLN1 и RAIFP2-ANLN2. Во втором случае не происходит нажатие кнопки MULT и появление экранной таблицы. Вот код:
Code:
    PERFORM bdc_row USING:
          'X'        'SAPLSPO4'        '0300', "заполняем БЕ
          ' '         'SVALD-VALUE'   pa_bukrs,
          ' '        'BDC_OKCODE'   '=FURT'," Ок
          'X'       'SAPLAMDP'        '0100',
          'X'       'SAPLAMDP'        '0300',
          ' '        'RAIFP2-ANLN1'   ls_anla-anln1,
          ' '        'RAIFP2-ANLN2'   ls_anla-anln2.
          ' '        'BDC_OKCODE'   ''.

После '=FURT' идут два экрана подряд - как-то это подозрительно.
Видимо, один главный, второй - подэкран.
Думается, надо оставить только один, главный.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Помогите. Почему не передаются данные на экран через bdc-сессию
СообщениеДобавлено: Чт, дек 01 2011, 12:03 
Младший специалист
Младший специалист

Зарегистрирован:
Пн, ноя 13 2006, 14:42
Сообщения: 93
Пол: Мужской
Вдогонку. Да, посмотрел: для подэкранов надо использовать поле BDC_SUBSCR (по аналогии с BDC_OKCODE), со сложным параметром.
Подробности смотрите через запись пакетного ввода.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Помогите. Почему не передаются данные на экран через bdc-сессию
СообщениеДобавлено: Чт, дек 01 2011, 12:28 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
Aleqs написал:
для подэкранов надо использовать поле BDC_SUBSCR (по аналогии с BDC_OKCODE)

Для пакетного ввода BDC_SUBSCR не нужен.

_________________
С уважением,
Удав.


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

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


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

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


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

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