Текущее время: Чт, июл 31 2025, 17:38

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 11 ] 
Автор Сообщение
 Заголовок сообщения: проблема с BAPI_FIXEDASSET_CHANGE
СообщениеДобавлено: Пн, май 18 2009, 05:29 
Младший специалист
Младший специалист

Зарегистрирован:
Сб, мар 21 2009, 11:45
Сообщения: 54
Пол: Мужской
Всем привет.
Столкнулся с проблемой у BAPI_FIXEDASSET_CHANGE, когда запускаю на изменение (либо создание) нового интервала одного ОС-а, всё проходит окей, если же делать это в цикле, то , допустим, если при первом вызове - функция возвращает ошибку а далее, что самое обидное - распространяет эту ошибку на дальнейшие в цикле ОС-ы. В чём трабл - не пойму (причём если запускаю через se37 - то такой же баг - первый запуск возвращает ошибку, не выходя из функции запускаю на второй (безошибочный) ОС - возвращает ту же ошибку (клонирует), хотя если выходить совсем из se37 и запускать снова, то по одному ОСу в таком режиме всё нормально сохраняется).

код примерно такой:
LOOP at it_anln1.
<переформировываю wa_timedependentdata_in и wa_timedependentdatax_in>
SET UPDATE TASK LOCAL.
CALL FUNCTION 'BAPI_FIXEDASSET_CHANGE'
EXPORTING
companycode = it_anln1-p_p_bukrs
asset = it_anln1-p_anln1
subnumber = it_anln1-p_anln2
timedependentdata = wa_timedependentdata_in
timedependentdatax = wa_timedependentdatax_in
IMPORTING
return = z_return.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
wait = 'X'.
ENDLOOP.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: проблема с BAPI_FIXEDASSET_CHANGE
СообщениеДобавлено: Пн, май 18 2009, 08:49 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пт, янв 18 2008, 10:34
Сообщения: 716
Откуда: Moscow
Пол: Мужской
а где обработка ошибок, перед коммитом , и если ошибка присутствует надо rollback сделать , и я не уверен насчет правильности использования SET UPDATE TASK LOCAL.

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


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: проблема с BAPI_FIXEDASSET_CHANGE
СообщениеДобавлено: Пн, май 18 2009, 09:44 
Младший специалист
Младший специалист

Зарегистрирован:
Сб, мар 21 2009, 11:45
Сообщения: 54
Пол: Мужской
да да, обработка ошибок есть, и роллбэк пробовал, только все равно не работает, как я поняимаю нужно чистить какую то временную память выделяемую на БАПИшку, а роллбэк - это ж вообще отмена действий связанных с работой в словаре :? (так или иначе, с ним не прокатывает, пробовал так же BAPI_TRANSACTION_ROLLBACK - по нулям)...


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: проблема с BAPI_FIXEDASSET_CHANGE
СообщениеДобавлено: Пн, май 18 2009, 10:12 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пт, янв 18 2008, 10:34
Сообщения: 716
Откуда: Moscow
Пол: Мужской
1) под ролбеком я подразумевал ФМ
2) что за ошибка , опишите поподробней
3) IMHO нужно уберать set update task local, не вижу в вашем случае (исходя из вашего кода) смысла его использовать

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


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: проблема с BAPI_FIXEDASSET_CHANGE
СообщениеДобавлено: Пн, май 18 2009, 11:25 
Младший специалист
Младший специалист

Зарегистрирован:
Сб, мар 21 2009, 11:45
Сообщения: 54
Пол: Мужской
Вдаёмся в конкретику:
Ошибку возвращает ФМ в return-е: " Дата регитсрации и дата расторжения должны быть между врем. интервалом". Но это даже не важно какая ошибка, потому как любую ошибку клонирует.
Может, повторюсь , есть какая либо функция чистки так называемого кэша бапишки (если такой есть конечно ж...)??


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: проблема с BAPI_FIXEDASSET_CHANGE
СообщениеДобавлено: Пн, май 18 2009, 11:39 
Специалист
Специалист

Зарегистрирован:
Пт, сен 05 2008, 08:08
Сообщения: 134
Пол: Женский
Может ноты посмотреть, раз такое дело?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: проблема с BAPI_FIXEDASSET_CHANGE
СообщениеДобавлено: Пн, май 18 2009, 12:16 
Старший специалист
Старший специалист

Зарегистрирован:
Пн, авг 28 2006, 11:24
Сообщения: 292
Пол: Мужской
Если ноту не найдете:
Очистка глобальных данных группы функций


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: проблема с BAPI_FIXEDASSET_CHANGE
СообщениеДобавлено: Пн, май 18 2009, 12:20 
Младший специалист
Младший специалист

Зарегистрирован:
Сб, мар 21 2009, 11:45
Сообщения: 54
Пол: Мужской
Не у видел подходящих нот...


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: проблема с BAPI_FIXEDASSET_CHANGE
СообщениеДобавлено: Пн, май 18 2009, 12:30 
Младший специалист
Младший специалист

Зарегистрирован:
Сб, мар 21 2009, 11:45
Сообщения: 54
Пол: Мужской
To Rokhay:
Да, временно так и сделал, но по мойму это попахивает извратом. Хотелось бы просто функцию в своей программе напрямую без дополнительной нагрузки системы.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: проблема с BAPI_FIXEDASSET_CHANGE
СообщениеДобавлено: Пт, июн 19 2009, 06:55 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
У меня проблема с BAPI_FIXEDASSET_CHANGE, пытаюсь изменить поле классификации5 (ANLA-GDLGRP).
Консультант открыл настройками это поле на экране в карточке ОС.
Я поменял название этого поля через тр CMOD(если это имеет значение).
Потом использую BAPI_FIXEDASSET_CHANGE, return возвращает S |AA |291 |Изменение не выполнено.
Хотя вручную все сохраняет нормально.
Не пойму в чем дело, много раз использовал это бапи для других полей, все было нормально.

Code:
tables: anla.
data: allocations like  bapi1022_feglg004,
      allocationsx  like  bapi1022_feglg004x.
data: return like bapiret2 occurs 0 with header line.
data: t1 like t087g occurs 0 with header line.

select single * from anla where anln1 = '010000001497'.

select * from t087g into table t1.
read table t1 index 5.
allocations-evalgroup5 = t1-gdlgrp.
allocationsx-evalgroup5 = 'X'.

call function 'BAPI_FIXEDASSET_CHANGE'
  exporting
    companycode  = anla-bukrs
    asset        = anla-anln1
    subnumber    = anla-anln2
    allocations  = allocations
    allocationsx = allocationsx
  importing
    return       = return.

commit work.


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

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
Кому интересно, помогла нота Note 1176061 - BAPI_FIXEDASSET_CHANGE does not implement changes


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

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


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

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


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

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