Текущее время: Вт, июл 22 2025, 02:29

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


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: ФМ HR_INFOTYPE_OPERATION и замещения в 2003 ИФ
СообщениеДобавлено: Чт, ноя 10 2011, 15:50 
Начинающий
Начинающий
Аватара пользователя

Зарегистрирован:
Ср, ноя 09 2011, 10:12
Сообщения: 3
Добрый день, подскажите реально ли с помошью ФМ HR_INFOTYPE_OPERATION создавать в 2003 ИФ замещения, так чтобы автоматически ограничивались существующие замещения, если создаваемое накладывается на них по датам, т.е. например есть два замещения с датами 01.01.2011-10.01.2011 и 11.01.2011-15.01.2011 при создании нового замещения с датами 09.01.2011-12.01.2011 хотелось бы увидеть следующую картину:
1) 01.01.2011-08.01.2011
2) 09.01.2011-12.01.2011
3) 13.01.2011-15.01.2011
Если делать это все в ручную через PA30 то все получается, но при использовании HR_INFOTYPE_OPERATION остается лишь одно замещение, вновь созданное. Если же указать в HR_INFOTYPE_OPERATION использовать диалоговый режим, то вылетает ошибка о том что есть временные коллизии.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: ФМ HR_INFOTYPE_OPERATION и замещения в 2003 ИФ
СообщениеДобавлено: Пт, ноя 11 2011, 10:07 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988
Kazuya написал(а):
Добрый день, подскажите реально ли с помошью ФМ HR_INFOTYPE_OPERATION создавать в 2003 ИФ замещения, так чтобы автоматически ограничивались существующие замещения, если создаваемое накладывается на них по датам, т.е. например есть два замещения с датами 01.01.2011-10.01.2011 и 11.01.2011-15.01.2011 при создании нового замещения с датами 09.01.2011-12.01.2011 хотелось бы увидеть следующую картину:
1) 01.01.2011-08.01.2011
2) 09.01.2011-12.01.2011
3) 13.01.2011-15.01.2011
Если делать это все в ручную через PA30 то все получается, но при использовании HR_INFOTYPE_OPERATION остается лишь одно замещение, вновь созданное. Если же указать в HR_INFOTYPE_OPERATION использовать диалоговый режим, то вылетает ошибка о том что есть временные коллизии.

Видимо, вы как то не так определяете параметры для HR_INFOTYPE_OPERATION

_________________
"После" - не значит "вследствие"


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ФМ HR_INFOTYPE_OPERATION и замещения в 2003 ИФ
СообщениеДобавлено: Пт, ноя 11 2011, 12:04 
Начинающий
Начинающий
Аватара пользователя

Зарегистрирован:
Ср, ноя 09 2011, 10:12
Сообщения: 3
Цитата:
Видимо, вы как то не так определяете параметры для HR_INFOTYPE_OPERATION

Собственно код программы примерно такой
Вычитываю инфотип 2003 в табличку P2003, а далее так
Code:
READ TABLE P2003 INTO WA_P2003 INDEX 1.
WA_P2003-BEGDA = '20110109'.
WA_P2003-ENDDA = '20110112'.
call function 'BAPI_EMPLOYEE_ENQUEUE'
    exporting
      number = pernr
    importing
      return = ls_return.

IF ls_return IS INITIAL.
  CALL FUNCTION 'HR_INFOTYPE_OPERATION'
    EXPORTING
      INFTY                  = '2003'
      NUMBER                 = WA_P2003-pernr
      SUBTYPE                = WA_P2003-subty
*     OBJECTID               =
     LOCKINDICATOR          = WA_P2003-sprps
     VALIDITYEND            = WA_P2003-ENDDA
     VALIDITYBEGIN          = WA_P2003-BEGDA
*     RECORDNUMBER           = WA_P2003-seqnr
      RECORD                 = WA_P2003
      OPERATION              = 'INS'
*     TCLAS                  = 'A'
     DIALOG_MODE            = '0'
*     NOCOMMIT               =
*     VIEW_IDENTIFIER        =
*     SECONDARY_RECORD       =
   IMPORTING
     RETURN                 = ls_return
     KEY                    = ls_key.

  CALL FUNCTION 'HR_EMPLOYEE_DEQUEUE'
    EXPORTING
      NUMBER        = pernr
   IMPORTING
      RETURN        = ls_return.
ENDIF.

В результате получаю одно замещение с датой 09.01.2011-12.01.2011.
Если же выбрать диалоговый режим и через отладку провалиться в место где происходит вызов экрана с заполнением данных для создания замещения, и принудительно указать что вызов инфотипа не из BAPI
Code:
if pspar-pbpfl is initial.   "В данном случае pspar-pbpfl = 'x'
          call function 'RP_COLLISION'

то вызывается экран с коллизиями на котором можно клацнуть кнопку "ок", в и тоге получаем 3 замещения... вот и вопрос, что же нужно то передать в этот HR_INFOTYPE_OPERATION, дабы без всяких диалоговых режимов получить ожидаемое.


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

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


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

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


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

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