HELP. Контракт, изменения. Как и откуда вытянуть что поменялось

Автор Паганель, Січень 17, 2008, 12:03:01 ДП

Попередня тема - Наступна тема

0 Користувачі і 2 Гостей дивляться цю тему.

Паганель

Т.е. с какой таблички или какой функцией можна вытянуть изменения.

Скажем по пользователю. Условие платежа - старое и новое значение.

Очень надо.

Uukrul

Ну что-то типа такой программки, скопируй себе и посмотри как она отрабатывает. В общем сначала выбираем все документы изменений, ключ change_ind = 'U', а потом уже смотрим что это за изменение. В твоем случае это поле ZTERM. Кстати, изменений может быть несколько, но при такой сортировке, первая выбранная запись именно то что тебе надо.
DATA: i_cdhdr LIKE cdhdr,
      l_value_new LIKE cdpos-value_new,
      l_value_old LIKE cdpos-value_old.

SELECT objectclas
       objectid
       changenr
       username    "Код пользователя ввевшего код
       udate       "Дата ввода кода
       utime       "Время ввода кода
INTO CORRESPONDING FIELDS OF i_cdhdr
FROM cdhdr WHERE objectclas = 'EINKBELEG' AND
                 objectid = '4500011870' AND
                 change_ind = 'U'
ORDER BY username udate DESCENDING utime DESCENDING.
  WRITE: / i_cdhdr.

  SELECT value_new value_old
  INTO (l_value_new, l_value_old)
  FROM cdpos
  WHERE objectclas = i_cdhdr-objectclas AND
        objectid = i_cdhdr-objectid AND
        changenr = i_cdhdr-changenr AND
        tabname = 'EKKO' AND
        fname = 'ZTERM'.
    WRITE: / l_value_new(5), l_value_old(5).
  ENDSELECT.
ENDSELECT.


PS: Опять же, специалисты по SQL, может через группировки смогут это дело оптимизировать.

Uukrul

Кстати изменения документов закупки просматриваются через отчет RM06EAV1 который и вызывается через SUBMIT из транзакции договоров.

Паганель

Цитата: Uukrul від Січень 17, 2008, 11:04:57 ДП
Кстати изменения документов закупки просматриваются через отчет RM06EAV1 который и вызывается через SUBMIT из транзакции договоров.

Так это для позиций как я понял.

За прогу Оггггггггггромное спасибо.

Сижу копаюсь.

Теперь если пользователи что то начудять ... смогу хоть исправить ...

P.S. Я тоже кстати в стандартной транзакции смотрел, часика полтора, потом понял что опыта не хватитт разобратся в хитросплетении немецкого кода
:)

Паганель

Кстати разобрались с транз. RSSCD100 тоже неплохо можна вытягивать изменения.

Паганель

Цитата: Uukrul від Січень 17, 2008, 11:04:57 ДП
Кстати изменения документов закупки просматриваются через отчет RM06EAV1 который и вызывается через SUBMIT из транзакции договоров.

Извияюсь ..
Опс, по шапкам тоже ..

Uukrul

Так, короче с 4.7 таки поменялась жизнь на марсе... короче за вывод изменений отвечает уже ФМ ME_CHANGEDOC_SHOW, но класс изменений тот же.. так что можно вызвать этот ФМ задав для договора значения типа:
I_DOCUMENT_CATEGORY             K         
I_DOCUMENT_NUMBER               4600000129
можно получить изменения к документу.

Uukrul

А вообще кому в облом ходить по таблицам используем ФМ ME_CHANGEDOC_SELECT, который выбирает изменения к документу во внутреннюю таблицу.


Паганель

Руки так и не дошли к тому чтобы попробывать те функции что ты привел, и так решили, ну хоть буду знать где искать когда возникнет потребность ...

Ну типа в туже тему, случайно наткнулся, приведу что бы потом самому не забыть ...
http://www.sap123.com/showthread.php?t=47

Sed0Y

Цитата: Uukrul від Січень 17, 2008, 01:48:18 ПП
А вообще кому в облом ходить по таблицам используем ФМ ME_CHANGEDOC_SELECT, который выбирает изменения к документу во внутреннюю таблицу.

а есть подобный ФМ по материалам?