Текущее время: Вт, июл 29 2025, 15:21

Часовой пояс: 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 часа


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

Сейчас этот форум просматривают: Google [Bot]


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

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