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

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 14 ] 
Автор Сообщение
 Заголовок сообщения: BAPI_PO_CHANGE
СообщениеДобавлено: Ср, июл 02 2008, 14:49 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, ноя 20 2007, 15:20
Сообщения: 139
Откуда: Казань
Пол: Мужской
Добрый день.
Задача в следующим, нужно изменить стоимость в 10 позиции заказа на поставку. Если определены условия то поле серенькое и его можно изменить только на вкладке условия. Заполняю структуры.
Code:

t_cond-itm_number = 10.
t_cond-cond_type = 'PB00'.
t_cond-cond_value = new_price.
APPEND t_cond.

t_condx-itm_number = 10.
t_condx-itm_numberx = 'X'.
t_condx-cond_type = 'X'.
t_condx-cond_value = 'X'.
t_condx-currency = 'X'.
t_cond-change_id = 'X'.
APPEND t_condx.


На что мне приходит сообщение "Данные ни изменены" Что я делаю не так?


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

Зарегистрирован:
Пн, дек 20 2004, 16:05
Сообщения: 1080
Откуда: 4.0B
Пол: Мужской
как то Вы странно заполнили change_id

t_cond-change_id = 'U'. и поднять его туда, где заполняется t_cond.
и заполнить t_cond-change_id = 'X'.

_________________
Я слышу и забываю,
Я вижу и помню долго,
Я делаю и — понимаю.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, июл 02 2008, 15:28 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, ноя 20 2007, 15:20
Сообщения: 139
Откуда: Казань
Пол: Мужской
Извините описался, я уже просто разные варианты перебираю, голова кругом идёт.

Сделал как вы сказали не помогло. Может нужно ещё какие нибудь структуры заполнить например poitem.

Просто раньше менял стоимость в poitem но это работает только если поле не серое.


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

Зарегистрирован:
Пн, дек 20 2004, 16:05
Сообщения: 1080
Откуда: 4.0B
Пол: Мужской
Lars написал:
t_cond-change_id = 'X'.


ошибся ... t_condx-change_id = 'X'

Вот так

t_cond-itm_number = 10.
t_cond-cond_type = 'PB00'.
t_cond-cond_value = new_price.
t_cond-change_id = 'U'.
APPEND t_cond.

t_condx-itm_number = 10.
t_condx-itm_numberx = 'X'.
t_condx-cond_type = 'X'.
t_condx-cond_value = 'X'.
t_condx-change_id = 'X'.
APPEND t_condx.

_________________
Я слышу и забываю,
Я вижу и помню долго,
Я делаю и — понимаю.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, июл 03 2008, 07:27 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, ноя 20 2007, 15:20
Сообщения: 139
Откуда: Казань
Пол: Мужской
Да я так и сделал
Code:
t_cond-itm_number = 10.
t_cond-cond_type = 'PB00'.
t_cond-cond_value = new_price.
t_cond-change_id = 'U'.
APPEND t_cond.

t_condx-itm_number = 10.
t_condx-itm_numberx = 'X'.
t_condx-cond_type = 'X'.
t_condx-cond_value = 'X'.
t_condx-change_id = 'X'.
APPEND t_condx.


CALL FUNCTION 'BAPI_PO_CHANGE'
  EXPORTING
    purchaseorder = p_ebeln
  TABLES
    return        = t_return
    pocond        = t_cond
    pocondx       = t_condx.


возвращает следующее сообщение
Цитата:
Определите также параметр интерфейса POCONDX
Данные не изменены


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, июл 03 2008, 08:07 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Чт, дек 21 2006, 07:27
Сообщения: 321
Откуда: Где-то на севере
Пол: Мужской
Есть подозрения, что надо определить ещё и
CONDITION_NO, COND_ST_NO.

_________________
I have a dream


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, июл 03 2008, 11:26 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, дек 20 2004, 16:05
Сообщения: 1080
Откуда: 4.0B
Пол: Мужской
а как у Вас объявлены t_cond и t_condx? подозреваю, что с хедерлайном.

Вы в отладке мпосмотрите. что у Вас передается хедерлайн или таблица.

Может попробовать вот так:

CALL FUNCTION 'BAPI_PO_CHANGE'
EXPORTING
purchaseorder = p_ebeln
TABLES
return = t_return[]
pocond = t_cond[]
pocondx = t_condx[].

_________________
Я слышу и забываю,
Я вижу и помню долго,
Я делаю и — понимаю.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июл 04 2008, 08:07 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, ноя 20 2007, 15:20
Сообщения: 139
Откуда: Казань
Пол: Мужской
Ура получилось!!!
Lars спасибо огромное :D


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BAPI_PO_CHANGE
СообщениеДобавлено: Ср, май 26 2010, 09:46 
Начинающий
Начинающий

Зарегистрирован:
Пт, май 08 2009, 09:04
Сообщения: 19
...
Схожая проблема. Сообщение "Данные не изменены".
В данных внешней торговли у заказа надо изменить страну происхождения EIPO-HERKL и подробный текст EIPO-TEXT1.
Вызываю BAPI:
Code:
ls_poexp-po_item = p_ebelp.
ls_poexp-countryori = 'US'.
APPEND ls_poexp TO lt_poexp.
ls_poexpx-po_item = p_ebelp.
ls_poexpx-countryori = 'X'.
APPEND ls_poexpx TO lt_poexpx.

CALL FUNCTION 'BAPI_PO_CHANGE'
  EXPORTING
    purchaseorder = p_ebeln
  TABLES
    return        = gt_return[]
    poexpimpitem  = lt_poexp[]
    poexpimpitemx = lt_poexpx[]

и получаю эту мессагу.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: BAPI_PO_CHANGE
СообщениеДобавлено: Ср, май 26 2010, 17:06 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
Ал написал(а):
...
Схожая проблема. Сообщение "Данные не изменены".
В данных внешней торговли у заказа надо изменить страну происхождения EIPO-HERKL и подробный текст EIPO-TEXT1.
Вызываю BAPI:
Code:
ls_poexp-po_item = p_ebelp.
ls_poexp-countryori = 'US'.
APPEND ls_poexp TO lt_poexp.
ls_poexpx-po_item = p_ebelp.
ls_poexpx-countryori = 'X'.
APPEND ls_poexpx TO lt_poexpx.

CALL FUNCTION 'BAPI_PO_CHANGE'
  EXPORTING
    purchaseorder = p_ebeln
  TABLES
    return        = gt_return[]
    poexpimpitem  = lt_poexp[]
    poexpimpitemx = lt_poexpx[]

и получаю эту мессагу.

А в ручную пробовали это проделать, нормально изменяет?
У же это вроде как адресные данные, может эта нота поможет Note 1147698 - Purchase order: Message 06 022 - No data changed


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BAPI_PO_CHANGE
СообщениеДобавлено: Чт, май 27 2010, 09:46 
Начинающий
Начинающий

Зарегистрирован:
Пт, май 08 2009, 09:04
Сообщения: 19
Вручную через VI09x - без проблем сохраняет.
Пробовал добавить к вызову BAPI интерфейсные таблицы со сменой данных в самой позиции заказа - они меняются, данные импорта остаются при этом неизменные.
По ноте 1147698 - у нас уже более поздний релиз накатан.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: BAPI_PO_CHANGE
СообщениеДобавлено: Чт, май 27 2010, 13:01 
Начинающий
Начинающий

Зарегистрирован:
Пт, май 08 2009, 09:04
Сообщения: 19
Был в отладке. Подпрограмма SET_OBJECT_ATTRIBUTES в SAPL2012 (подготовка данных к обновлению):
Code:
*-----------------------------------------------------------------*
*  foreign trade - items (EIPO)
*-----------------------------------------------------------------*
*   for new items only -> till mySAP business suite 2007
*-----------------------------------------------------------------*
    IF l_newitem EQ cl_mmpur_constants=>yes.
      READ TABLE cht_expimp_item WITH KEY po_item = <ls_item>-ebelp. "1355577
      IF sy-subrc IS INITIAL.
        CALL METHOD l_item->if_purchase_order_item_mm~set_foreign_trade(
          cht_expimp_item ).
      ENDIF.
    ENDIF.

l_newitem предварительно выставляется в cl_mmpur_constants=>yes, тока если создается новая позиция, а мне надо поменять данные у текущей. Значит BAPI не подойдет :(


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: BAPI_PO_CHANGE
СообщениеДобавлено: Чт, май 27 2010, 13:16 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
Note 1333377 - BAPI_PO_CHANGE: Changing address references
Вот еще нота, вроде подходящая, там релиз компонента 604, если не подходит, то поищите сами на сап портале, Вам там виднее будет...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BAPI_PO_CHANGE
СообщениеДобавлено: Чт, май 27 2010, 13:46 
Начинающий
Начинающий

Зарегистрирован:
Пт, май 08 2009, 09:04
Сообщения: 19
Это не совсем адресные данные. Это информация из блока внешней торговли к заказу, таблицы EIKP, EIPO.
Ноты уже все пересматривал, в одной было указано (на 2005г), что они не реализовали изменение данных через BAPI, но планируют сделать. Так и не сделали, о чем я убедился в отладке.
Besa, спасибо за ответы, с BAPI вопрос закрыт. Буду через call transaction делать. Через VI09 - пакетник очень легко реализуется.


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

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


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

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


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

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