Skip to Content
0
Former Member
Nov 05, 2012 at 10:15 AM

Migration of update rules 3.x -> 7.0 HR content

92 Views

Hi ABAP experts

We tried to migrate old dataflow of 0HR_PA_1 to 7.0 logic.

While migrating as described by Best Practise document the result was incomplete.

Example: InfoObject 0GENDER didn't get his routine.

Routine logic in 3.x is as follows:

PROGRAM UPDATE_ROUTINE.
*$*$ begin of global - insert your declaration only below this line *-*

DATA: g_record_no LIKE sy-tabix.

INCLUDE rs_bct_hr_update_rules_general.
INCLUDE rs_bct_hr_papa_update_rules.
INCLUDE RS_BCT_HR_DATA.
*$*$ end of global - insert your declaration only before this line *-*


FORM compute_key_field
TABLES MONITOR STRUCTURE RSMONITOR "user defined monitoring
USING COMM_STRUCTURE LIKE /BIC/CS0HR_PA_0
RECORD_NO LIKE SY-TABIX
RECORD_ALL LIKE SY-TABIX
SOURCE_SYSTEM LIKE RSUPDSIMULH-LOGSYS
CHANGING RESULT LIKE /BI0/V0PA_C01T-GENDER
RETURNCODE LIKE SY-SUBRC
ABORT LIKE SY-SUBRC. "set ABORT <> 0 to cancel update
*
*$*$ begin of routine - insert your code only below this line *-*
IF G_RECORD_NO <> RECORD_NO.
G_RECORD_NO = RECORD_NO.
CLEAR: EMPLOYEE_MD, PERSON_MD.
CLEAR: EMPLOYEE_WA, PERSON_WA.
ENDIF.
PERFORM READ_MD_PERSON
using comm_structure-employee
comm_structure-calmonth
RECORD_NO
RECORD_ALL
SOURCE_SYSTEM
CHANGING EMPLOYEE_WA
PERSON_WA
returncode.
EMPLOYEE_MD = EMPLOYEE_WA.
PERSON_MD = PERSON_WA.
RESULT = PERSON_MD-GENDER.

RETURNCODE = 0.
*$*$ end of routine - insert your code only before this line *-*
*
ENDFORM.

There is OSS note 1052648 which also described the manual migration of an old "update rule".

Nevertheless, I tried to copy the old coding into the transformation field routine for 0GENDER. It gives me an syntax error "missing endmethod".

Are there any additional information we must consider?

How do we get the old routine correct into the new 7.0 logic?

Many thanks for your help.

PC-12