If you want to record an absence without specifying the duration, you generally enter the end date 12/31/9999. If the end date of the infotype record then becomes known, it can be chaged for infotypes which do not belong to Time Management using "partial deletion". The recalculation date is thereby set to the first deleted day of validity.
For absences, the recalculation date has always been set to the first day of validity of the original infotype record. In certain situations, this can cause problems:
- for long-term illnesses,
- for parental leave,
- for military or non-military service
Key words: absences, I2001, P2001, recalculation, earliest
possible recalculation period.
P0003, IT0003
Cause and prerequisitesSituation not anticipated.
SolutionUsing the following correction, partial deletion with an earlier recalculation date is possible for absence records which are entered on screens 2000, 2002, 2003, 2004 (i.e. for absences that do not reduce a quota).
Edit include FP50MF40 and find FORM ABPER. Insert the lines marked below:
FORM ABPER."SING ABP_DATUM ABP_VKABR ABP_VKBDE. "QNUK59609
DATA: ABP_CPAST.
DATA: ABP_EINDA LIKE CPREL-BEGDA, "QNUK76286
ABP_AUSDA LIKE CPREL-ENDDA, "QNUK76286
ABP_ACTIVE. "QNUK76286
CHECK PSPAR-TCLAS EQ 'A'. "VLZK11K081016
CHECK SW_ABPER GT '0'. "QNUK11K010031
IF PSPAR-INFTY EQ '2001' AND <------ insert line
PSYST-IOPER EQ MODIFY AND <------ insert line
PSPAR-SUPDG EQ 'X' AND <------ insert line
PSPAR-ACTIO NE 'FMOD' AND <------ insert line
( SY-DYNNR EQ '2000' OR <------ insert line
SY-DYNNR EQ '2002' OR <------ insert line
SY-DYNNR EQ '2003' OR <------ insert line
SY-DYNNR EQ '2004' ). <------ insert line
EXIT. <------ insert line
ENDIF. <------ insert line
PERFORM RE549A USING PSYST-ABKRS. "QNUK71984
CHECK T549A-CALCR NE SPACE. "QNUK71984
Finally, carry out a syntax check for programm SAPFP50M.
Partial deletion
================
To partially delete an infotype record, proceed as follows:
After starting transaction PA61, select the infotype and choose the function "Delete".
Go to the data record in question (e.g. an absence from 3/1/1995 through 12/31/9999, and in the validity period field enter the part to be deleted (e.g. from 6/13/1995 through 12/31/9999). Choose the function "Delete".
The result of this action is an absence from 3/1/1995 through 6/12/1995. The recalculation date is set to 6/13/1995.
No comments:
Post a Comment