Текущее время: Сб, авг 02 2025, 18:30

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 11 ] 
Автор Сообщение
 Заголовок сообщения: Проблема с BDC для VL01N
СообщениеДобавлено: Ср, авг 20 2008, 11:19 
Менеджер
Менеджер
Аватара пользователя

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

Кто нибудь создавал ИП через пакетник. У меня проблема в следующем.
Для создания ИП я описал пакетник :
Code:
  REFRESH BDCDATA.
  PERFORM bdc_dynpro      USING 'SAPMV50A'             '4001'.
  PERFORM bdc_field       USING 'BDC_OKCODE'           '/00'.
  PERFORM bdc_field       USING 'LIKP-VSTEL'           struc_oikload-VSTEL_S.
  PERFORM bdc_field       USING 'LV50C-DATBI'          date1.
  PERFORM bdc_field       USING 'LV50C-VBELN'          struc_oikload-docno_s.
  PERFORM bdc_field       USING 'LV50C-ABPOS'          posn.
  PERFORM bdc_field       USING 'LV50C-BIPOS'          posn.

  PERFORM BDC_DYNPRO      USING 'SAPMV50A'             '1000'.
  PERFORM BDC_FIELD       USING 'BDC_OKCODE'           '/00'.
  PERFORM BDC_FIELD       USING 'LIKP-BLDAT'           date1.
  PERFORM BDC_FIELD       USING 'LIKP-WADAT'           date2.
  PERFORM BDC_FIELD       USING 'LIKP-WAUHR'           date3.
  PERFORM bdc_field       USING 'LIKP-WADAT_IST'       date1.
  PERFORM bdc_field       USING 'LIKP-OIWATIM'         '00:00'.
  perform bdc_field       using 'LIPSD-G_LFIMG(01)'    num_str.
  if wa_vbap-LGORT is INITIAL.
    PERFORM bdc_field       USING 'LIPS-LGORT(01)'     STRUC_OIKLOAD-LGORT.
  endif.

  PERFORM bdc_dynpro      USING 'SAPMV50A'             '1000'.
  PERFORM bdc_field       USING 'BDC_OKCODE'           '=CHSP_T'.
  PERFORM bdc_field       USING 'LIKP-BLDAT'           date1.
  PERFORM bdc_field       USING 'LIKP-WADAT'           date2.
  PERFORM bdc_field       USING 'LIKP-WAUHR'           date3.
  PERFORM bdc_field       USING 'LIKP-WADAT_IST'       date1.
  PERFORM bdc_field       USING 'LIKP-OIWATIM'         '00:00'.

  PERFORM BDC_DYNPRO      USING 'SAPMV50A'             '3000'.
  PERFORM BDC_FIELD       USING 'BDC_OKCODE'           '=CHFD_T'.

  PERFORM BDC_DYNPRO      USING 'SAPMV50A'             '3000'.
  PERFORM BDC_FIELD       USING 'BDC_OKCODE'           '=SICH_T'.

  CALL TRANSACTION 'VL01N'
    USING bdcdata
    MODE 'A'
    UPDATE 'S'
    MESSAGES INTO itab.


Но почему то этот пакетник как то странно работает. То все нормально срабатывает и ИП нормально создается , то пакетник отрабатывает с ошибкой
"Поле LIKP-OIWATIM отсутсвует в SAPMV50A 1000".

Помогите пожалуйста в чем может быть проблема.

Благодарю,
Руслан.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 20 2008, 11:43 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пт, янв 18 2008, 10:34
Сообщения: 716
Откуда: Moscow
Пол: Мужской
Хмм нашел такое сообщение на форуме :
    for enjoy transaction BDC never suggested like vl01n it is an enjoy transaction.so prefer BDC with VL01 intead of vl01n.


Буду пробовать . Вопрос снят . :D


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 20 2008, 11:54 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пт, янв 18 2008, 10:34
Сообщения: 716
Откуда: Moscow
Пол: Мужской
Хмм VL01 оказывается не подходит . Требуется использование VL01N. Поэтому вопрос все таки остается открытым .

Можно ли использовать транзакцию VL01N с помощью пакетного ввода. Делал ли кто нибудь подобное. Бапи не использую потому что дополнительные количества рассчитываются не правильно .

Буду рад любой помощи.

Благодарю,
Руслан.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Проблема с BDC для VL01N
СообщениеДобавлено: Ср, авг 20 2008, 20:12 
Президент
Президент

Зарегистрирован:
Пт, апр 28 2006, 22:39
Сообщения: 2514
Откуда: North Taxolina, USA
Пол: Женский
ghost написал:
Но почему то этот пакетник как то странно работает. То все нормально срабатывает и ИП нормально создается , то пакетник отрабатывает с ошибкой
"Поле LIKP-OIWATIM отсутсвует в SAPMV50A 1000".


Обычно ошибки такого рода в любых пакетниках возникают из-за того, что в программе не учитывается разница между документами. Например, в зависимости от тех или иных факторов, могут вызываться или нет те или иные экраны, а также заполняться те или иные поля.

Ищите разницу между транзакциями, которые работают и которые не работают. Скорее всего вам нужно добавить какие-нибудь IF ... ELSE.

_________________
"One of the symptoms of an approaching nervous breakdown is the belief that one's work is terribly important." Bertrand Russell


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с BDC для VL01N
СообщениеДобавлено: Чт, авг 21 2008, 07:16 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
ghost написал:
Здравствуйте, товарищи абаперы.

Кто нибудь создавал ИП через пакетник. У меня проблема в следующем.
Для создания ИП я описал пакетник :
Code:
  REFRESH BDCDATA.
  PERFORM bdc_dynpro      USING 'SAPMV50A'             '4001'.
  PERFORM bdc_field       USING 'BDC_OKCODE'           '/00'.
...
  PERFORM BDC_DYNPRO      USING 'SAPMV50A'             '1000'.
  PERFORM BDC_FIELD       USING 'BDC_OKCODE'           '/00'.
...
  PERFORM bdc_field       USING 'LIKP-WADAT_IST'       date1.
  PERFORM bdc_field       USING 'LIKP-OIWATIM'         '00:00'.
  perform bdc_field       using 'LIPSD-G_LFIMG(01)'    num_str.
  if wa_vbap-LGORT is INITIAL.
    PERFORM bdc_field       USING 'LIPS-LGORT(01)'     STRUC_OIKLOAD-LGORT.
  endif.

  PERFORM bdc_dynpro      USING 'SAPMV50A'             '1000'.
  PERFORM bdc_field       USING 'BDC_OKCODE'           '=CHSP_T'.
...
  PERFORM bdc_field       USING 'LIKP-WADAT_IST'       date1.
  PERFORM bdc_field       USING 'LIKP-OIWATIM'         '00:00'.

...
  PERFORM BDC_DYNPRO      USING 'SAPMV50A'             '3000'.
  PERFORM BDC_FIELD       USING 'BDC_OKCODE'           '=SICH_T'.

  CALL TRANSACTION 'VL01N'
    USING bdcdata
    MODE 'A'
    UPDATE 'S'
    MESSAGES INTO itab.


Но почему то этот пакетник как то странно работает. То все нормально срабатывает и ИП нормально создается , то пакетник отрабатывает с ошибкой
"Поле LIKP-OIWATIM отсутсвует в SAPMV50A 1000".

Помогите пожалуйста в чем может быть проблема.

Благодарю,
Руслан.

Убрать строчку
Code:
PERFORM bdc_field       USING 'LIKP-OIWATIM'         '00:00'.
пробовали? :)

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


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, авг 21 2008, 07:25 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пт, янв 18 2008, 10:34
Сообщения: 716
Откуда: Moscow
Пол: Мужской
Вчера снова пробовал прогнать этот пакетник все отработало , хотя ничего не менял. И еще такой интересный факт , что когда я пакеник прогоняю в режиме 'A' . Он отрабатывает . А когда ставлю режим 'N' . Выдает таое сообщение. В инете нашел заметку, что пакетники для ENJOY транзакций отрабатывают с ошибками при фоновом режиме .

А насчет убрать строчку : во первых я этот текст получил через SHDB . Но потом все же убрал эту строчку затем выдает такую же ошибку но уже для другого поля .

Кто нибудь делал пакентики для подобных (enjoy) транзакций , к которым относится и vl01n ?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, авг 21 2008, 10:14 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
Enjoy-транзакции не могут работать в фоновом режиме из-за того, что в них используются компоненты, связанные с клиентским GUI - ALV-Grid, редакторы текста, ALV-Tree, HTML-Viewer и т.п.
Нормальный пакетный ввод по таким транзакциям возможен только в том случае, если при пакетном вводе не происходит перехода к экранам, в которых есть Enjoy-компоненты.

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


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, авг 21 2008, 10:19 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
ghost написал:
А насчет убрать строчку : во первых я этот текст получил через SHDB . Но потом все же убрал эту строчку затем выдает такую же ошибку но уже для другого поля .

Не все из того, что записывается в SHDB нужно для пакетного ввода.
На самом деле в SHDB записываются все поля, в которых есть хоть какое-нибудь значение, а не только те, которые действительно заполнялись пользователем.

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


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, авг 21 2008, 10:22 
Менеджер
Менеджер
Аватара пользователя

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

Насчет пакетников для ENJOY транзакций учту ваши замечания . Проблема решена.


Благодарю,
Руслан


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, сен 01 2008, 13:13 
Менеджер
Менеджер

Зарегистрирован:
Чт, янв 20 2005, 08:34
Сообщения: 573
Пол: Мужской
ghost написал:
Проблема решена.
Благодарю,
Руслан


И как, можно узнать?

_________________
Волю в кулак, мышцы в узду, работай себе и не ахай!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, сен 02 2008, 06:13 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пт, янв 18 2008, 10:34
Сообщения: 716
Откуда: Moscow
Пол: Мужской
Цитата:
Enjoy-транзакции не могут работать в фоновом режиме из-за того, что в них используются компоненты, связанные с клиентским GUI - ALV-Grid, редакторы текста, ALV-Tree, HTML-Viewer и т.п.
Нормальный пакетный ввод по таким транзакциям возможен только в том случае, если при пакетном вводе не происходит перехода к экранам, в которых есть Enjoy-компоненты.


Щас пакетник работает нормально и не выдает каких либо ошибок (в обоих режимах). Наверное в моем пакетнике и не происходит переход на экраны с такими компонентами (как объяснил Удав). Но как определить состоит ли экран из этих компонентов я не успел разобраться . Сроки сильна сжатые были , так что если кто знает как определять такие экраны буду благодарен. Ну а список этих транзакций есть в инете.

Благодарю,
Руслан.

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


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

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


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

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


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

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