Текущее время: Пн, июл 21 2025, 20:11

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 14 ] 
Автор Сообщение
 Заголовок сообщения: BAPI_ALM_ORDER_MAINTAIN
СообщениеДобавлено: Пн, янв 26 2009, 09:31 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
Здравствуйте, проблема в том что я не магу создать заказ с помощью этой бапишки. Вроде правильно делаю, заполняю IT_HEADER IT_HEADER_UP и IT_METHODS(ставлю тока 'SAVE'), после обработки в RETURN говорит что Управление BAPI завершено, но ничего не происходит, commit work использую, что не так, может кто нить выложит рабочий пример. спасибо.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BAPI_ALM_ORDER_MAINTAIN
СообщениеДобавлено: Пн, янв 26 2009, 10:35 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Ср, июн 01 2005, 07:11
Сообщения: 223
Откуда: Нижневартовск->Москва
Пол: Женский
Попробуйте так
(у меня этот код, где только вместо 'CREATE' указано'CHANGE' для изменения работает)
Code:
  ls_methods-refnumber = 1.
  ls_methods-objecttype = 'HEADER'.
  ls_methods-method = 'CREATE'.
  ls_methods-objectkey(12) = gs_out-aufnr.
  append ls_methods to lt_methods.
  clear ls_methods.
  ls_methods-method = 'SAVE'.
  append ls_methods to lt_methods.

Константы для ls_methods-objecttype и ls_methods-method можно посмотреть в include LIBAPI_ALM_ORDER_PROCESSINGCON
Возможно нужно будет еще добавить :
Code:
ls_methods-refnumber =  " что сюда писать не знаю, экспериментируйте :)
  ls_methods-objecttype =      " вот здесь еще что-то что Вы создаете кроме заголовка
  ls_methods-method = 'CREATE'.
  ls_methods-objectkey(12) = gs_out-aufnr.
  append ls_methods to lt_methods.

_________________
Всегда открыта новым авантюрам!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BAPI_ALM_ORDER_MAINTAIN
СообщениеДобавлено: Пн, янв 26 2009, 11:58 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
если использую CREAT то пишет что метод CREAT не предусмотрен для объекта.
Описание всех этих параметров есть в ФМе самом, там все понятно написано, но не работает, не знаю почему.
У Вас какая версия компонентов? дело в том что в 620 и 700 описание немного разное.
вот код
    it_methods-REFNUMBER = 1.
    IT_METHODS-METHOD = 'CREATE'.
    APPEND IT_METHODS.
    IT_METHODS-METHOD = 'SAVE'.
    APPEND IT_METHODS.

    LOOP AT RESULT_EO.

    IT_HEADER-ORDER_TYPE = RESULT_EO-ORDER_TYPE.
    IT_HEADER-EQUIPMENT = RESULT_EO-EQUIPMENT.
    IT_HEADER-SHORT_TEXT = RESULT_EO-SHORT_TEXT.
    IT_HEADER-START_DATE = RESULT_EO-START_DATE.
    IT_HEADER-FINISH_DATE = RESULT_EO-FINISH_DATE.
    APPEND IT_HEADER.

    CLEAR: IT_HEADER.

    ENDLOOP.

    CALL FUNCTION 'BAPI_ALM_ORDER_MAINTAIN'
    TABLES
    IT_METHODS = IT_METHODS
    IT_HEADER = IT_HEADER
    * IT_HEADER_UP = IT_HEADER_UP
    * IT_HEADER_SRV =
    * IT_HEADER_SRV_UP =
    * IT_USERSTATUS =
    * IT_PARTNER =
    * IT_PARTNER_UP =
    * IT_OPERATION =
    * IT_OPERATION_UP =
    * IT_RELATION =
    * IT_RELATION_UP =
    * IT_COMPONENT =
    * IT_COMPONENT_UP =
    * IT_TEXT =
    * IT_TEXT_LINES =
    * EXTENSION_IN =
    RETURN = T_RETURN
    ET_NUMBERS = ET_NUMBERS.
    .


    COMMIT WORK.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BAPI_ALM_ORDER_MAINTAIN
СообщениеДобавлено: Пн, янв 26 2009, 12:49 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Ср, июн 01 2005, 07:11
Сообщения: 223
Откуда: Нижневартовск->Москва
Пол: Женский
620
Вот это пробовали добавлять?
Code:
  ls_methods-objecttype = 'HEADER'.


Можно еще попытаться сначала только с CREATE вызвать, а потом, когда вернется aufnr вызвать повторно уже с SAVE
и
ls_methods-objectkey(12) = aufnr.

_________________
Всегда открыта новым авантюрам!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BAPI_ALM_ORDER_MAINTAIN
СообщениеДобавлено: Пн, янв 26 2009, 12:53 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
superbizon написала:
620
Вот это пробовали добавлять?
Code:
  ls_methods-objecttype = 'HEADER'.


Можно еще попытаться сначала только с CREATE вызвать, а потом, когда вернется aufnr вызвать повторно уже с SAVE
и
ls_methods-objectkey(12) = aufnr.

пробовал и так и так, если только с креатом то пишет две ошибки, 1 это - Для изменения заказа Вы должны указать номер заказа
2 - Вызов BAPI должен иметь метод SAVE или DIALOG.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BAPI_ALM_ORDER_MAINTAIN
СообщениеДобавлено: Пн, янв 26 2009, 13:15 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
Самое интересное что ни в той ни в другой системе нет ни одной программы где бы использовался этот БАДИ, чтоб посмотреть хотя бы.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BAPI_ALM_ORDER_MAINTAIN
СообщениеДобавлено: Пн, янв 26 2009, 13:24 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Ср, июн 01 2005, 07:11
Сообщения: 223
Откуда: Нижневартовск->Москва
Пол: Женский
может вот это подойдет ? (см последнее сообщение, там подробная раскладка)
https://www.sdn.sap.com/irj/scn/thread?messageID=685216

_________________
Всегда открыта новым авантюрам!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BAPI_ALM_ORDER_MAINTAIN
СообщениеДобавлено: Пн, янв 26 2009, 14:44 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
superbizon написала:
может вот это подойдет ? (см последнее сообщение, там подробная раскладка)
https://www.sdn.sap.com/irj/scn/thread?messageID=685216

Спасибо огромное за ссылку, очень помогла, но вот еще одна проблема которая не дает создать заказ...
A |CO |168 |Ошибка при нумерации объекта AUFTRAG
Не сталкивались с такой?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BAPI_ALM_ORDER_MAINTAIN
СообщениеДобавлено: Пн, янв 26 2009, 14:47 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Ср, июн 01 2005, 07:11
Сообщения: 223
Откуда: Нижневартовск->Москва
Пол: Женский
а в snro смотрели настройки нумерации для AUFTRAG?

_________________
Всегда открыта новым авантюрам!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BAPI_ALM_ORDER_MAINTAIN
СообщениеДобавлено: Пн, янв 26 2009, 15:09 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
superbizon написала:
а в snro смотрели настройки нумерации для AUFTRAG?

да смотрел, понял вроде в чем ошибка, по примеру который Вы мне выслали там номер заказа стоит %00000000001, у нас же в системе при создании ручками через IW31 ставится не %00000000001 а сразу например OTO430505609, похоже заранее подготовлена логика на номер заказа, думаю проблема в этом. Блин начинаю уже подумывать сделать через пакетный ввод, так как это много быстрее, но БАПИ красивее)) что скажете по поводу номера?
Как у Вас в системе сделано создание, как можно обойти проблему с номера?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BAPI_ALM_ORDER_MAINTAIN
СообщениеДобавлено: Пн, янв 26 2009, 15:25 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Ср, июн 01 2005, 07:11
Сообщения: 223
Откуда: Нижневартовск->Москва
Пол: Женский
вообще это странно по идее знак % в номере заказа должен указать BAPI, что номер временный и генерация номера в этом случае дб внутри.

Попробуйте еще заменить в номере % на &, может он это воспримет как указание к генерации нового номера.

Если не поможет, используйте ФМ NUMBER_GET_NEXT для генерации очередного номера заказа.
Правильные параметры лучше всего посмотреть под отладчиком при ручном создании заказа поставив точку прерывания в модуле NUMBER_GET_NEXT.
(при использовании NUMBER_GET_NEXT есть какие-то сложности с блокировками, щас с ходу не вспомню, посмотрите поиском по форуму)

з.ы у нас в системе есть только изменение существующего заказа с этим BAPI

_________________
Всегда открыта новым авантюрам!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BAPI_ALM_ORDER_MAINTAIN
СообщениеДобавлено: Пн, янв 26 2009, 15:51 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Ср, июн 01 2005, 07:11
Сообщения: 223
Откуда: Нижневартовск->Москва
Пол: Женский
для генерации нового номера читаем таблицу T003O (ключ - вид заказа) и потом вызываем NUMBER_GET_NEXT:
Code:
CALL FUNCTION 'NUMBER_GET_NEXT'
     EXPORTING
          NR_RANGE_NR = T003O-NUMKR
          OBJECT      = 'AUFTRAG'
     IMPORTING
          NUMBER      = NUMBER
          RETURNCODE  = RETURN
     EXCEPTIONS
          INTERVAL_NOT_FOUND       = 01
          NUMBER_RANGE_NOT_INTERN  = 02
          OBJECT_NOT_FOUND         = 03
          QUANTITY_IS_0            = 04
          QUANTITY_IS_NOT_1        = 05
          INTERVAL_OVERFLOW        = 06
          OTHERS                   = 99.

aufnr = NUMBER

_________________
Всегда открыта новым авантюрам!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BAPI_ALM_ORDER_MAINTAIN
СообщениеДобавлено: Вт, янв 27 2009, 06:20 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
Начал ковырять и разобрался, в общем тут Ваш вариант не катит. Для генерации номера заказа тут используют user-exit с такой вот логикой: 1 - учитывает вид заказа, 2- потом по этому виду идет выборка из таблицы заказов (например ОТО3%) и берется последний номер заказа и прибавляется 1 :shock: Это основное + там еще куча проверок. Поставил там точку прерывания, через iw31 проваливаюсь, через Бапи нет. Я конечно могу всю эту логику для номера заказа вытащить в свою программу, но там помимо этого расширения еще есть куча, например проверки при сохранении и тд, так вот может Бапи их вообще не видит и не используется, и как это понимать, как быть в моем случае?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BAPI_ALM_ORDER_MAINTAIN
СообщениеДобавлено: Вт, янв 27 2009, 08:37 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
Сделал батч инпутом потому что время поджимает, но все равно интересно как сделать создание заказа, собираюсь использовать этот бапи в других системах, за ссылку большое спасибо.


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

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


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

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


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

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