Как пропустить записи инфо-типов в группе действий в фоновом режиме - PullRequest
0 голосов
/ 19 марта 2020

У меня есть технический HR-вопрос о действиях. Я хотел бы пропустить некоторые записи, если я не предоставляю им данные через функциональный модуль .

Цель состоит в том, чтобы выполнить в фоновом режиме весь инфо-тип группы действий, если у нас есть хотя бы одна информация , Если нет, пропустите это. Когда пользователь снова наберет go на IT0 (при редактировании) и выполнит информационную группу вручную , последовательность будет выполнена повторно со всеми инфо-типами , включая пропущенные ранее .

Кто-нибудь знает какой-либо способ сделать что-то подобное?

Во время моего расследования:

  • Я обнаружил, что система вызывает сообщение e055 (00). Не нашли способа пропустить инфо-тип, если мы столкнемся с этой ошибкой при выполнении. Я не смог найти соседа, который вызвал это сообщение.
  • Я нашел BADI HRPAD00INFTY (https://answers.sap.com/questions/262203/i-have-de-same-question.html) и попытался установить FCODE = NEXT, но безрезультатно. Это работает, но не тогда, когда система вызывает сообщение e055 (00).
  • Я искал другой BADI, а также выход пользователя. Попытался также прочитать код функционального модуля, чтобы проверить, можно ли добавить расширение для перекрестной проверки данных proposer_values ​​[] и T588D [] и фильтрации того, что отсутствует. Еще не нашел место.

Ошибка 055 (00) = Заполните все необходимые поля ввода

В настоящее время:

I используйте функциональный модуль HR_MAINTAIN_MASTERDATA и передайте предлагаемому списку предлагаемых значений [] все необходимые данные. Пример:

proposed_values[] =
  -------------------------------
  | PA0000 | PERNR   | xxxx | 0 |
  | PA0000 | field01 | yyyy | 0 |
  | -------+---------+------+---|
  | PA0006 | field62 | 1111 | 0 |   <- will populate PA0006, first call
  | PA0006 | field63 | 2222 | 0 |
  |--------+---------+------+---|
  | PA0006 | field62 | 1111 | 1 |   <- group incremented, will be PA0006, second call
  | PA0006 | field63 | 2222 | 1 |
  |--------+---------+------+---|
  | PA0006 | field62 | 1111 | 3 |   <- group incremented, will be PA0006, call number 3
  | PA0006 | field63 | 2222 | 3 |
  -------------------------------

Но здесь (представьте, что у нас есть группа инфо-типов PA0000, PA0006 / 1, PA0006 / 4, PA0006 / 4, PA0006 / 4), у нас нет записи для записи PA0006 2, тогда я бы хотел пропустить это .

У меня нет возможности

  • У меня нет возможности создать новое действие (T588D) , с меньшим количеством записей.
  • У меня нет возможности использовать IGMOD

Большое спасибо за ваш вклад:)

...