on 04-12-2010 5:10 PM
Hi Experts!
We have an interface ( a simple function module ), which transfer HR data from an external system, to our SAP HR system. (persons and positions) And unfortunately it dumps every second run. (When PA0001 and HRP1001 have more than 3 records )
I try to debug and I find an interesting thing, I hope you can explain.
When this FM calls ZRH_DELIMIT_POSITION_OF_USER (a copy of RH_DELIMIT_POSITION_OF_USER) following things happens:
I called with the following date: 2008.03.01
Before calling (tables):
PA0001
2008.02.29-2008.01.01
2008.09.30-2008.03.01
2008.12.31-2008.10.01
2009.08.05-2009.01.01
2010.02.17-2009.08.06
2010.03.05-2010.02.18
9999.12.31-2010.03.06
HRP1001
2008.02.29-2008.01.01
2008.09.30-2008.03.01
2008.12.31-2008.10.01
2009.08.05-2009.01.01
2010.02.17-2009.08.06
2010.03.05-2010.02.18
9999.12.31-2010.03.06
After calling DELIMIT POSITION:
PA0001
2008.02.29-2008.01.01
2009.08.05-2008.03.01
2010.02.17-2009.08.06
2010.03.05-2010.02.18
9999.12.31-2010.03.06
HRP1001
2008.01.01-2008.02.29
Why PA0001 has so many records? And I donu2019t understand why it has BEGDA and ENDDA like this?
The differences between ZRH_DELIMIT_POSITION_OF_USER and RH_DELIMIT_POSITION_OF_USER:
IF act_holder_type = $user.
act_realo = act_holder.
ELSE.
THIS COMMENT
RAISE holder_not_valid.
act_objid = act_holder.
ENDIF.
And 2 placess:
LOOP AT i1001.
IF i1001-sclas EQ $person OR
i1001-otype EQ $person.
*THIS COMMENT
RAISE person_related_to_position.
... ENDLOOP.
Please help!
Regards
Peter
Edited by: Peter Bajusz on Apr 12, 2010 7:37 PM
I solved:
The FM can't unit the positions after 2009.08.05-2008.03.01 , bacause they has different contract datas.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
108 | |
12 | |
11 | |
6 | |
5 | |
4 | |
3 | |
3 | |
3 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.