Текущее время: Пт, авг 01 2025, 14:00

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


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

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


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

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