SAPфорум.RU https://sapboard.ru/forum/ |
|
удаление данных из ИТ2001 с помощью HR_INFOTYPE_OPERATION https://sapboard.ru/forum/viewtopic.php?f=13&t=96358 |
Страница 1 из 1 |
Автор: | MaрьЯ [ Пт, май 04 2018, 15:13 ] |
Заголовок сообщения: | удаление данных из ИТ2001 с помощью HR_INFOTYPE_OPERATION |
Нужно быстро почистить ИТ2001 от блокированных записей. Для этого пытаюсь использовать ФМ HR_INFOTYPE_OPERATION, но код возврата выдает ошибку "Данных для 2001 (в выбранном периоде) не существует" Подскажите, пожалуйста, что не так? код программы, данные выбираются корректно: Code: SELECT * FROM pa2001
INTO CORRESPONDING FIELDS OF TABLE lt_p2001 WHERE pernr = pernr-pernr AND ( subty = '0100' OR subty = '0110' ) AND sprps = 'X' AND ( ( begda BETWEEN pn-begda AND pn-endda ) OR ( endda BETWEEN pn-begda AND pn-endda ) ). CALL FUNCTION 'BAPI_EMPLOYEE_ENQUEUE' EXPORTING number = pernr-pernr. LOOP AT lt_p2001 INTO wa_p2001. CALL FUNCTION 'HR_INFOTYPE_OPERATION' EXPORTING infty = '2001' number = wa_p2001-pernr subtype = wa_p2001-subty * objectid = * lockindicator = validityend = wa_p2001-endda validitybegin = wa_p2001-begda * recordnumber = record = wa_p2001 operation = 'DEL' tclas = 'A' dialog_mode = '1' * nocommit = * view_identifier = * secondary_record = IMPORTING return = rec_return * key = . IF rec_return IS NOT INITIAL. ENDIF. ENDLOOP. CALL FUNCTION 'BAPI_EMPLOYEET_DEQUEUE' EXPORTING number = pernr-pernr validitybegin = sy-datum IMPORTING return = dummy_return. |
Автор: | Secret007 [ Пт, май 04 2018, 15:57 ] |
Заголовок сообщения: | Re: удаление данных из ИТ2001 с помощью HR_INFOTYPE_OPERATION |
Code: * lockindicator =
|
Автор: | MaрьЯ [ Пн, май 07 2018, 07:39 ] |
Заголовок сообщения: | Re: удаление данных из ИТ2001 с помощью HR_INFOTYPE_OPERATION |
Secret007 написал(а): Code: * lockindicator = его заполнение тоже не помогло |
Автор: | MaрьЯ [ Пн, май 07 2018, 08:58 ] |
Заголовок сообщения: | Re: удаление данных из ИТ2001 с помощью HR_INFOTYPE_OPERATION |
При этом, если использовать тот же ФМ, но с параметром 'DIS' запись корректно находится |
Автор: | Kuranov.Dmitry [ Пн, май 07 2018, 09:18 ] |
Заголовок сообщения: | Re: удаление данных из ИТ2001 с помощью HR_INFOTYPE_OPERATION |
Code: data lp2001 type TABLE OF p2001. data ls2001 type p2001. data rec_return type BAPIRETURN1. CALL FUNCTION 'HR_READ_INFOTYPE' EXPORTING * TCLAS = 'A' pernr = '1107010' infty = '2001' * BEGDA = '18000101' * ENDDA = '99991231' * BYPASS_BUFFER = ' ' * LEGACY_MODE = ' ' * IMPORTING * SUBRC = tables infty_tab = lp2001 EXCEPTIONS INFTY_NOT_FOUND = 1 OTHERS = 2 . IF sy-subrc <> 0. * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4. ENDIF. read TABLE lp2001 INTO ls2001 with key pernr = '1107010' begda = '20180315' subty = '0001' and SPRPS = 'X'. CALL FUNCTION 'BAPI_EMPLOYEE_ENQUEUE' EXPORTING number = '1107010'. CALL FUNCTION 'HR_INFOTYPE_OPERATION' EXPORTING infty = '2001' number = ls2001-pernr subtype = ls2001-subty * objectid = lockindicator = ls2001-SPRPS validityend = ls2001-endda validitybegin = ls2001-begda * recordnumber = record = ls2001 operation = 'DEL' tclas = 'A' dialog_mode = '1' * nocommit = * view_identifier = * secondary_record = IMPORTING return = rec_return * key = . IF rec_return IS NOT INITIAL. BREAK-POINT. ENDIF. CALL FUNCTION 'BAPI_EMPLOYEET_DEQUEUE' EXPORTING number = 1107010 validitybegin = sy-datum. * IMPORTING * return = dummy_return. Так у меня удалило |
Автор: | MaрьЯ [ Пн, май 07 2018, 15:00 ] |
Заголовок сообщения: | Re: удаление данных из ИТ2001 с помощью HR_INFOTYPE_OPERATION |
Kuranov.Dmitry написал(а): Так у меня удалило не помогает, при этом, если DEL заменить на DIS все отлично отрабатывает |
Автор: | Besa [ Чт, май 10 2018, 10:00 ] |
Заголовок сообщения: | Re: удаление данных из ИТ2001 с помощью HR_INFOTYPE_OPERATION |
попробуйте как тут, https://archive.sap.com/discussions/thread/1099059 обратите внимание что передается в RECORD |
Автор: | MaрьЯ [ Вт, май 15 2018, 07:14 ] |
Заголовок сообщения: | Re: удаление данных из ИТ2001 с помощью HR_INFOTYPE_OPERATION |
Besa написал: попробуйте как тут, https://archive.sap.com/discussions/thread/1099059 обратите внимание что передается в RECORD Все передавалось корректно, ошибка была в работе ФМ HR_READ_INFOTYPE, отрабатывавшего в ФМ HR_INFOTYPE_OPERATION Почему-то при вызове из программы он не находил нужных записей, хотя при запуске этого модуля через se37 все отрабатывало корректно. В отладке проверяла, данные на входе в фм абсолютно идентичны, но почему-то на выходе получаются разные данные. обращение в поддержку не принесло внятного ответа Проблема решилась использованием ФМ HR_MAINTAIN_MASTERDATA |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |