Текущее время: Ср, июл 23 2025, 16:49

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




Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: во время мероприятия pa40 сама блокирую юзера
СообщениеДобавлено: Чт, авг 23 2007, 18:19 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, авг 22 2005, 14:50
Сообщения: 1285
Откуда: с работы
Пол: Женский
Во время мероприятия увольнения сохраняю 0 инфотип, говорит блокировано пользователем 01CP50041956, хотя сроду таких не было и больше никого в системе нет, и до того как я зашла в мероприятия ничего заблокировано не было. То есть я как-то сама блокирую почему-то таким пользователем запись и сама себя не пускаю.

Чертовщина какая-то. Извелась вся :(


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, авг 24 2007, 21:58 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, авг 22 2005, 14:50
Сообщения: 1285
Откуда: с работы
Пол: Женский
значит так, тут оказывается не всё так просто:

1. Мероприятие при сохранении 0 инфотипа вызывает динамическое мероприятие
2. Динамическое вызывает форму, в которой запоняется bdcdata.
3. идёт DEQUEUE_EPPRELE - разблокировать персональный номер
4. call transaction pa30.

В старой системе 4.6с было у них всё тип-топ. В SM12 показывало что заблокирована PREL при работе с персональным номером из pa30, pa40. Но мы мигрировали сейчас на ERP2005, и теперь она блокирует 2 объекта: PREL и PLOGI.

Допустим, логически, нам теперь надо разблокировать PLOGI с помощью DEQUEUE_EHPLOGIE. Но туда передавать надо plvar otype objid. Вопрос - как мне их откуда выдрать, ведь я в 0 инфотипе?

И вообще, почему оно вдруг с какого перепугу стало блокировать PLOGI, я так понимаю это ОМ. PLOGI ORGA = Х

Не знаю....

тут вот обсуждали, но что-то я не вижу решения на ночь глядя :(
http://sapboard.ru/forum/viewtopic.php ... &&start=15

Я вот помню была какая-то таблица - там персональные номера вроде есть и буквочка P типо связана она с ОМ или нет, создана без связи с ОМ. зрительно помню, а имя хоть убейте не вспомню, мож там? Или я брежу?

plogi prelu пустая, мож поставить?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вс, авг 26 2007, 13:44 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Вт, июл 25 2006, 14:50
Сообщения: 3481
Откуда: Moscow
Пол: Мужской
Цитата:
Я вот помню была какая-то таблица - там персональные номера вроде есть и буквочка P типо связана она с ОМ или нет, создана без связи с ОМ. зрительно помню, а имя хоть убейте не вспомню, мож там? Или я брежу?

V_528B_C - не оно, грешным делом?

Цитата:
Допустим, логически, нам теперь надо разблокировать PLOGI с помощью DEQUEUE_EHPLOGIE. Но туда передавать надо plvar otype objid. Вопрос - как мне их откуда выдрать, ведь я в 0 инфотипе?

PLOGI действительно блокируется, но мероприятию это не мешает

Цитата:
plogi prelu пустая, мож поставить?

Зачем?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Вс, авг 26 2007, 19:16 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, авг 22 2005, 14:50
Сообщения: 1285
Откуда: с работы
Пол: Женский
Дело в том, что блокируется из pa40 plogi prelе и из мероприятия вызывается call transaction pa30, то есть уже вторая транзакция с этим же персональным номером, что не позволяет блокировка.

Перед кол транзакшн разработчик написал разблокировку prelе, в 4.6с это работало, теперь надо еще разблокировать plogi. Когда plogi блокируется, он использует данные глобальной таблицы, содержащей plvar otype objid. Из формы же, которую вызывает динамическое мероприятие, эта таблица не видна. Пробовала прописывать логические базы, но этой таблицы не видно. Откуда вытащить plvar otype objid для разблокировки, непонятно.

plogi prelu - я так понимаю, изменения в ОМ не сразу переносятся в PA, а как-то потом батчем, но я так понимю, мне надо наоборот.

Или как-то сделать чтобы при PA40 не блокировалось PLOGI?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вс, авг 26 2007, 20:03 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Вт, июл 25 2006, 14:50
Сообщения: 3481
Откуда: Moscow
Пол: Мужской
Цитата:
Дело в том, что блокируется из pa40 plogi prelе и из мероприятия вызывается call transaction pa30, то есть уже вторая транзакция с этим же персональным номером, что не позволяет блокировка.

А зачем нужно это динамическое мероприятие хитрое? Может как-то проще можно обойтись?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, авг 27 2007, 08:19 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, авг 22 2005, 14:50
Сообщения: 1285
Откуда: с работы
Пол: Женский
бес понятие. Мигрируем со старой системы.
Хотят как было иметь и точка. Еще и французы, нервные блин, не то что немцы :?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, авг 27 2007, 08:43 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Вт, июл 25 2006, 14:50
Сообщения: 3481
Откуда: Moscow
Пол: Мужской
Galka написала:
бес понятие. Мигрируем со старой системы.
Хотят как было иметь и точка. Еще и французы, нервные блин, не то что немцы :?

Дык посмотрите в код, может уже нафик не нуна?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, авг 27 2007, 08:57 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, авг 22 2005, 14:50
Сообщения: 1285
Откуда: с работы
Пол: Женский
нуна. У нас позиция - что и как имел заказчик до миграции, то и должен получить после.

Code:
form batch_delim using p_pernr like p2006-pernr
                       p_subty like p2006-subty
                       p_begda like p2006-begda
                       p_endda like p2006-endda
                       p_abgrd like rp50m-abgrd.
  data : begdate(10),
         enddate(10),
         datdeli(10).
  clear bdcdata. refresh bdcdata.
  write p_begda to begdate.
  write p_endda to enddate.
  write p_abgrd to datdeli.
  perform bdc_dynpro      using 'SAPMP50A' '1000'.
  perform bdc_field       using 'BDC_OKCODE'
                                '=LIS9'.
  perform bdc_field       using 'RP50G-PERNR'
                                p_pernr.
  perform bdc_field       using 'RP50G-TIMR6'
                                'X'.
  perform bdc_field       using 'BDC_CURSOR'
                                'RP50G-SUBTY'.
  perform bdc_field       using 'RP50G-CHOIC'
                                '2006'.
  perform bdc_field       using 'RP50G-SUBTY'
                                 p_subty.
  perform bdc_dynpro      using 'SAPMP50A' '0500'.
  perform bdc_field       using 'BDC_CURSOR'
                                'RP50M-ABGRD'.
  perform bdc_field       using 'BDC_OKCODE'
                                '=TAKE'.
  perform bdc_field       using 'RP50M-ABGRD'
                                datdeli.
  perform bdc_dynpro      using 'MP200000' '3250'.
  perform bdc_field       using 'BDC_CURSOR'
                                'P2006-BEGDA(01)'.
  perform bdc_field       using 'BDC_OKCODE'
                                '=DLIM'.
  perform bdc_field       using 'RP50M-BEGDA'
                                begdate.
  perform bdc_field       using 'RP50M-ENDDA'
                                enddate.
  perform bdc_field       using 'RP50M-SUBTY'
                                p_subty.
  perform bdc_field       using 'RP50M-ABGRD'
                                datdeli.
  perform bdc_field       using 'RP50M-PAGEA'
                                '  1'.
  perform bdc_field       using 'RP50M-SELE2(01)'
                                'X'.

*{   INSERT         H15K900762                                        1
***TRY.
это не сработало
**CALL METHOD
CL_HRPA_MASTERDATA_ENQ_DEQ=>DEQUEUE_BY_PERNR
**  EXPORTING
**    TCLAS  = 'A'
**    PERNR  = p_pernr
**    .
*** CATCH CX_HRPA_VIOLATED_ASSERTION .
***ENDTRY.

CALL FUNCTION 'DEQUEUE_EHPLOGIE'
EXPORTING
*   MODE_PLOGI       = 'E'
*   MANDT            = SY-MANDT
   PLVAR            = ppenq-plvar   ??? откуда выдрать не знаю
   OTYPE            = ppenq-otype  ??? если б таблица связи с pernr
   OBJID            = ppenq-OBJID ???
*   X_PLVAR          = ' '
*   X_OTYPE          = ' '
*   X_OBJID          = ' '
*   _SCOPE           = '3'
*   _SYNCHRON        = ' '
*   _COLLECT         = ' '
          .
*}   INSERT

  call function 'DEQUEUE_EPPRELE'
       exporting
            mode_prel = 'E'
            mandt     = sy-mandt
            pernr     = p_pernr.

  call transaction 'PA30' using bdcdata mode 'E'.
endform.                    " batch_delim


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, авг 27 2007, 11:24 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, авг 22 2005, 14:50
Сообщения: 1285
Откуда: с работы
Пол: Женский
сделала временно call function 'DEQUEUE_ALL', потому что уже заказчик кипятком пИсал.

надо все же разблокировать plogi или не блокировать его. В старой 4.6с оно же не блокировалось, блокировалось только prele, с чего бы это вдруг стало блокировать plogi, мож это как-то связано с pnpce, но сомнительно.


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

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


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

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


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

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