Sapforum.Biz
Логистика => Управление материальными потоками (MM) => Тема начата: Паганель от Декабрь 10, 2007, 03:58:16 pm
-
Ну собственно сабж.
Поле Дата договора (ekko-VEDAT) можно ли открыть на изменение,
не повлияет ли это на что либо в системе ?
-
Вообще-то у меня нет такого поля в этой таблице. Смотрел в 4.6, 4.7 и 6.0 это часом не ритейловское что-то?
-
Брось транзакцию и картинку где это поле на экране.
-
Ошибочка, структура RM06E поле VEDAT
это как мне кажется дата создания документа
-
Ошибочка, структура RM06E поле VEDAT
это как мне кажется дата создания документа
Ты это брось все таки транзакцию и картинку, а то что в эту структуру пишется и куда дальше сохраняется... в общем лучше я это сам посмотрю ::)
-
Ну в общем-то исходя из этого модуля ясно что на самом деле в БД это поле ekko-bedat, дата документа. А вот можно ли ее менять, в общем посмотрю... напишу.
module rm06e-evart output.
if sy-dyngr eq 'REFA' or sy-dyngr eq 'REFK'.
* Selektionsbilder fr Kontraktabruf
rm06e-evart = kekko-bsart.
rm06e-vedat = kekko-bedat.
else.
* restliche Bilder
rm06e-evart = ekko-bsart.
rm06e-vedat = ekko-bedat.
endif.
-
В общем-то мой вам совет не трогать это поле и не открывать его на изменение. Обоснование следующее. К данному полу привязаны данные по расчету курса валют в заказах. В общем посмотрите на то где используется поле BEDAT и поиск выдаст кучу вызовов вида:
CALL FUNCTION 'READ_EXCHANGE_RATE'
EXPORTING
DATE = EKKO-BEDAT
FOREIGN_CURRENCY = EKKO-WAERS
LOCAL_CURRENCY = T001-WAERS
IMPORTING
EXCHANGE_RATE = REFE1
FIXED_RATE = FIXED_RATE.
или
CALL FUNCTION 'CONVERT_TO_LOCAL_CURRENCY'
EXPORTING
date = ekko-bedat
foreign_amount = h_wrbtr
foreign_currency = ekko-waers
local_currency = t001-waers
rate = ekko-wkurs
IMPORTING
local_amount = h_dmbtr.
Но самое главное не это, а то что если открыть поле для редактирования, то у меня получилось что транзакция ведения изменений просто не реагирует на то что поле экрана поменяло свое значение. В отладчике она продолжает работать со старым значением, так как передача значения экрана в ekko-bedat или kekko-bedat не происходит, они хранят значения считанные из базы. А потом вообще происходит интересное. Так как при сохранении, точнее перед сохранением значения передаются по именам, то в базу попадает уже новое значение с экрана, но прикол в том что значения перерасчетов выполнились то с предыдущим значениями даты! Вот и получим потом гемморой при определении почему же даты одни а суммы получаются вообще лево-другие и т.д. В общем я очень не рекомендую делать такую корректировку путем открытия этого поля для ввода с экрана.
-
Во, большое спасибо, я где-то читал, что можно, но не помню где,
единственное помню что ОЧЕЕННННЬ не рекомендовалось это делать.
А вообще большое спасибо за ответ.
А не напишеш, как это удалось, не для практичесского применения, а так, для общего развития ?
-
Ну типа тут ответил: http://sapforum.biz/index.php/topic,91.msg349.html#msg349
-
:)
Спасибо, интересно.