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

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


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

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


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

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