cancel
Showing results for 
Search instead for 
Did you mean: 

Making approved Absences/Leave available In ESS timesheet/CAT2 as a display

Former Member
0 Kudos

HI People

I have a requirement to make the leave that has been approved through the ESS leave process to be made available as a display only in the ESS timesheet such that when an employee is entering timesheet, they can view that a particular day has already been recorded for leave, but when they release the timesheet, the leave should not be processed as it has already been processed. Is there a way to do this or has anyone done something like this. Your help will be greatly appreciated.

Regards

Alphonce

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi,

Please find the following setting for configuration .

Goto SPRO then follow following path

Personnel Management - > Employee Self-Service -> Service-Specific Settings -> Working Time -> Leave Request -> Processing Processes

Create Rule Groups

1st you need to create the role group ( following is E.g )

Role group : 00000001

Name of Role group : SAP Standard

Define Processing Processes for Each Rule Group (following is E.g)

Role group : 00000001

Name of Role group : SAP Standard

Start Date : 01.01.1800

End Date : 31.12.9999

Specify Processing Processes for Types of Leave ( for E.g )

(click up on new entry )

Role group : 00000001

Name of Role group : SAP Standard

PSG : 01

A/AType : 0420

Type Text : Seminar/course/training

Start Date : 01.01.1800

End Date : 31.12.9999

then once you make entri here you need to click up on details ( select that row then Ctrl + Shift + F2 )

then it will open change view of Processing Processes for Types of Leave ( here this screen for absene type 0420 )

in this screen

-


Start date in the Past

Put radio button on "Processing Permited to Rec. limit".

-


start date is the current date

Put radio button on "Processing is perminted"

-


Start date in the Future

put radio button "unrecstrikt processs is perminted"

-


tick mark at Display field next ....

tick makk to request may ..........

-


system response

tick mark "request has to be aproved'

like this you can make the SPRO setting for other leave othere than 0420 ..in the "Specify Processing Processes for Types of Leave"

Answers (7)

Answers (7)

siddharthrajora
Product and Topic Expert
Product and Topic Expert
0 Kudos

In your case Leave request is requested for today ie full day and now you update the CATSDB, For this day

you cant apply anything as user already is Full day absent, So he ll get collision as expected.

Also., As indicated once you have records in CATSDB, Set the status to 30 and CAC1 as no changes after approval

so records will be greyed out from Leave request

Former Member
0 Kudos

Hi,

I have similar requirement.

Issue is when user leave is approved timesheet for that date is grayed out as suggested by Siddharth.

But if employee has already filled hours for that date, he can not remove those.

So we want to allow him to make changes to timesheet after leave approval.

If I uncheck checkbox "Allow changes after appoval", he will also be able to make changes after timesheet approval.

We do not want that.

What can be done?

Thanks,

Apurva

Former Member
0 Kudos

Hi,

I did not go through the entire discussion , but I was wondering if you tried the config in your CATS profile (in tran CAC1).

There is an option in 'General setting' to set 'No change after approval'.

Are you using the default 'ESS' profile or a different one?

Regards

Srini

Former Member
0 Kudos

I have tried that option in CAC1 but it does not resolve the collision errors in CATSDB, when i try to post entries from pa2001. It does grey out the field in the timesheet such that you cannot change it if you test in CAT2. My problem is i am taking an already approved absence and i want to put it into the timesheet so that at any point in time when an employee goes to record timesheet, all hours for the period will be accounted for and also the approver will see clearly that such and such hours have already been approved as Absences then he can approve or reject the remaining days or hours. Any ideas Please

siddharthrajora
Product and Topic Expert
Product and Topic Expert
0 Kudos

catsdb and pa2001 are different tables

CATSDB > pa2001 possible using CAT6 and not vice versa.

ABove error occurs cause there is entry already available for that day

please note you can also use CATS for absences so check you dont have duplicate data!!

Former Member
0 Kudos

That is exactly the problem we have here. When i look in CATSDB, the entry does not exist. Lets say i have an approved record for ANNL(annual leave) 10.09.2009 from ESS and this record now is in PA2001. If i check in CATSDB, this record is not there, however if i try to run a BAPI to read this record from PA2001 and write it to CATSDB, the system gives a collision error. How does that happen considering the two tables are different and How do i stop that from happening, coz that is exactly what my problem is at the moment. Because i want to see this record in the timesheet. ALso subsequent to that, how do i ensure it will not try to repost. I tried to write to PTEX2000 and it also gives a collision error for the same record?

If there is no way to achieve that, Is it possible to define a leave type (like a static or statistical) that idoes not change any values and does not post, like a symbol or something, so that i can read these records and pass the data into this statistical code which i will then write to CATSDB and doesnt affect anything else?

siddharthrajora
Product and Topic Expert
Product and Topic Expert
0 Kudos

You are correct, It might try to post it again, For this ensure that the PTEX2000 (absence/attendance) or PTEX2010 (With wagetype) are filled with these entries with status transferred flag set, Then it will not post again

Former Member
0 Kudos

Hi,

Wrote a program which reads PA2001 and uploads to CATSDB using BAPI_CATIMESHEETMGR_INSERT.

Of course, the BAPI fails: "Collision with full-day HR record" because the leave entries already exist (on PA2001). Is it possible to post a "statistical entry", i.e. something which will not be treated as a time entry?

Could the fact that the ESS leave entries from the portal do not appear on CATSDB automatically be due to missing config?

Rgds

siddharthrajora
Product and Topic Expert
Product and Topic Expert
0 Kudos

You ll be posting a approved record to CASTDB, which you ll ensure is in status 30 (approved):). So No approval after changes you can set that in CAC1 data entry profile or ensure the line is grayed of records from HR side to CATSDB

Read more on statuses of records in CATSDB

Here are the BAPIs

BAPI_CATIMESHEETMGR_CHANGE CATS: Change Data Records

BAPI_CATIMESHEETMGR_DELETE CATS: Delete Data Records

BAPI_CATIMESHEETMGR_INSERT CATS: Insert Data Records

SacCounty_MM
Participant
0 Kudos

Hi Rajora,

We have the same requirement. I like your idea of posting the time created via the leave request process to the CATS database. I do have one question. Will the transfer program attempt to transfer the record to HR? If so, is there a way to get around this?

Thank you,

Mark.

siddharthrajora
Product and Topic Expert
Product and Topic Expert
0 Kudos

As you are aware CATS and Leave request have different database.

CATS to HR transfer is possible via standard ie CAT6 or rptextpt

but HR to CATS doest happen

So for this scenario you need to make sure you update the CATSDB fronm It2001(Absences)

Many customers do it, using the bapi as a result, Employee will have details of his Leaves

Develop a Z report or use a standard bapi_ insert

Former Member
0 Kudos

Let me lay out some facts:

1. Employee applies for leave through the portal- This is already happening

2. Leave is Approved via the portal - This is happening already

3. We run the posting report RPTARQPOST and the PA2001 database is updated. this is fine.

4. Now what i want is to read this record thats already been approved and sitting in PA2001 and make this record displayed in the portal timesheet such that when the employee is recording their timesheet, They can see that record in there but cannot change or alter it. Siddharth Rajora suggested there is a BAPI, could you tell me the BAPI name please. And i have a query there Siddharth, what will happen if suppose i manage to post this record using the BAPI to CATSDB, wont it try to get processed again when the employee releases their timesheet, will this record not be resubmitted for approval?

How do I make sure the record will not get reprocessed?

Former Member
0 Kudos

Let me lay out some facts:

1. Employee applies for leave through the portal- This is already happening

2. Leave is Approved via the portal - This is happening already

3. We run the posting report RPTARQPOST and the PA2001 database is updated. this is fine.

4. Now what i want is to read this record thats already been approved and sitting in PA2001 and make this record displayed in the portal timesheet such that when the employee is recording their timesheet, They can see that record in there but cannot change or alter it. Siddharth Rajora suggested there is a BAPI, could you tell me the BAPI name please. And i have a query there Siddharth, what will happen if suppose i manage to post this record using the BAPI to CATSDB, wont it try to get processed again when the employee releases their timesheet, will this record not be resubmitted for approval?

How do I make sure the record will not get reprocessed?

Former Member
0 Kudos

Hi,

if your leave related configuration done perfectly ( work flow ) assignments ect.

Go to "Sm30" give "V_T554S_WEB" select the leave and click up on the "details"

in the Work flow template check following entries

WF ID of New Request 12300111

WF ID of Cancellation Request 12300111

WF ID of Change Request 12300111

Then check this work flow is active .

After this check the approval for the USER who has rasie the leave request

for this goto "SE38" give the report name "RPTREQAPPRCHK"

give the pernr ( the same user id for portal ) and execute after execution if you find any entry

then this user leave request is send to that no ...........

also Go to "swia' tcode and check the statuse of work item for the user ...