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

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


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

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


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

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