Кто блокировал материал ?

Автор NachDenken, Травень 26, 2009, 11:13:53 ДП

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

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

NachDenken

хотелось бы не только установить факт блокировки (ENQUEUE_MATERIAL) , но и логин,
кто сталкивался подскажите ?

Dmitriy


Uukrul

Цитата: NachDenken від Травень 26, 2009, 11:13:53 ДП
хотелось бы не только установить факт блокировки (ENQUEUE_MATERIAL) , но и логин,
кто сталкивался подскажите ?
Ну вообще-то в SY-чего-то там возвращается имя того кто блокировал, если мне не изменяет память. Попробуй под отладкой просмотреть эту структуру.


Dmitriy

#4
Цитата: Паганель від Травень 26, 2009, 11:33:03 ДП
а это не поможет?
http://sapforum.biz/index.php/topic,243.0.html
Это, кстати, не пробовал, но может. Был еще такой момент (для информации), делал что-то по HR в плане замещения, не идет процесс, так сказать, зашел в SM12 и обнаружил, что сама транзакция 4 блокировки устанавливает на запись по pernr (табельный) в одной из таблиц. Перетестили, подтвердилось... Сделал в проге DO 4 TIMES ... ENDDO со снятием внутри блокировки, заработало. ;) Способ, конечно, может и не фонтан, просто задача срочная была, а методов решения не знал.  

Uukrul

Вот такой вот код после попытки установки блокировки выдает сообщение каким пользователем блокирована запись. Так что все проще.

  if sy-subrc <> 0.
    message id sy-msgid type sy-msgty number sy-msgno
            with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  endif.


А тот ФМ, так это если глобально хотите с блокировками поработать, а так это из пушки по воробьям да и долго  ;)

NachDenken

если пишет логин в sy то это просто замечательно,
срочно сейчас потестирую.
спасибо.

Uukrul

Цитата: NachDenken від Травень 26, 2009, 01:39:07 ПП
если пишет логин в sy то это просто замечательно,
срочно сейчас потестирую.
Пишет, пишет... я это из своей программы взял где обрабатываю блокировку заказа ММ

NachDenken

Пасиб.

После
CALL FUNCTION 'ENQUEUE_EMMARAE'
    EXPORTING
      matnr          = 'номер_материала'
    EXCEPTIONS
      foreign_lock   = 2
      system_failure = 3.

в sy-msgv1 логин

SMF spam blocked by CleanTalk