Tag Archives: oracle hrms

How to delete a date track change in assignment record?


How to delete a date track change in assignment record?

Example:
Employee had an assignment starting on 1-Jan-2007 to 31-Dec-4712
Made a change one 1-Feb-2007 by fault,
Now has 2 Records
1. 1-Jan-2007 to 31-Jan-2007
2. 1-Feb-2007 to 31-Dec-4712

How to restore to have continuous service in same assignment between 1-Jan-2007 and 31-Dec-4712?
When an update (as opposed to a correction) is made in an HRMS datetracked form, a new row is added to the base table.
Most datetracked forms (e.g. Enter and Maintain People, Enter Assignment, etc) display the fields Effective Start Date and Effective End Date.
When an ‘update’ is made to the data on the screen, the Effective Start Date will become the date of that change.  Prior to that date the change is not implemented.

Steps for Solutions –>
1.  Datetrack to a date before the date of the update.
Check that the Effective End Date is the day before the change date.
2.  Press the Delete icon.
3.  At the message ‘Do you really want to delete this record?’ click on ‘Yes’.
4.  You will get a list of options – ‘Next’, ‘All’, ‘Purge’.
Press ‘Next’ to remove the update.
Press ‘All’ if there are more that one updates to this record in the future and you want to remove them all.
Press ‘Purge’ to remove the record totally from the system (not what you want in this case).
You may not be able to do all 3 options in which case the unavailable ones will either not be shown or will
generate a meaningful error message.
5. When you have pressed ‘Next’ or ‘All’ the record will disappear from the screen and you should press Save.

Employee Directory in Oracle HRMS


Today I am going to talk about a not-so-popular and less known feature of Oracle HRMS. Its called the employee directory.

Well, as the name suggest, Employee Directory is a directory of all employees of any organization. Employee Directory provides a webbased frontend that helps search any employee in the organization. It allows to browse through the organizational hierarchy, check who’s who in the company, who reports to whom and how many people report to a manager….lot of information, on one page.

Its a great tool. One of the coolest feature is the employee picture. The picture that you load on employee form in Oracle HRMS – is visible here on the webpage in employee directory.

Recently at a client i implemented employee directory. Here are the quick steps to make it work:

1. Add a new menu to Employee Self Service (assuming you want this feature available to all employees).

2. Menu Item Name : Employee Directory
3. Function User Name: Simple Search
4. Function Name: HR_EMPDIR_SIMPLE_SEARCH
5. Description: Employee Directory Simple Search

Navigation to do this:

  1. Goto Applications à Menu
  2. Query for “Employee Self Service” in User Menu Name.
  3. Scroll all the way to end and add one more line.
  4. Prompt “Employee Directory”, Function “Simple Search”
  5. It will provide multiple options for “Simple Search” – select the “Employee Directory Simple Search” option.
  6. Save

Try this…and probably some time soon, i’ll also put together something to tell you how to upload bulk of Employee pictures in Oracle HRMS.

Have fun with oracle! Have fun at knoworacle!

Hire to Retire Process Diagram (PDF)


Hey Friends,

I just posted a PDF version of Hire To Retire process diagram at  Logicwala. Go grab your copy Here.

The Hire-to-retire process below mentions some of the major pieces in the puzzle that will help you understand how an HR system integrates to do various operations and what important processes are part of the HR suite of applications.

also, let me know if i missed something, and will amend it for u.

Hope this helps!

Using Images in Oracle HRMS


Hello Friends, Lets learn something in Oracle HRMS. Oracle Human resources has a table called PER_IMAGES. This table stores employee pictures in RAW format. If you want to mass upload the pictures of all employees in this table, you can have a hard time. we were facing a similar issue, and here is the approach i used to bulk upload (or mass upload) employee pictures to PER_IMAGES table in Oracle Human resources system using SQL Loader.

First, let’s see how the table looks:

SQL> desc per_images

Name                            Null?    Type
——————————- ——– —-
IMAGE_ID                        NOT NULL NUMBER(15)
IMAGE                           NOT NULL LONG RAW
PARENT_ID                       NOT NULL NUMBER(15)
TABLE_NAME                      NOT NULL VARCHAR2(30)
IMAGE_ID   – Next value in sequence
IMAGE      – Binary Image
PARENT_ID  – PERSON_ID from PER_PEOPLE_F
TABLE_NAME – PER_PEOPLE_F

To load a binary image in this table, we have to first create a control file, which will look something like this:

options (bindsize 400000)
load data
infile photo.bmp “fix 60999″
replace
concatenate 3
into table PER_IMAGES
(image_id constant 1, image raw(33532), parent_id constant 1253,
table_name constant “PER_PEOPLE_F”)
 
Some important facts now: Size of picture in this example is 33532 bytes. Bindsize must always be larger than the filesize. And, most importantly, only 64k can be loaded at one time, so we have divided the file size into equal portions < 64k. Here are the shell scripts, and ctl files i am using:

#mainscript.sh

 #!/bin/sh
   echo enter file name
   read fname
     exec<$fname
      x=1
      value=“
 while read line
     do
  value=`head -n $x $fname | tail -n 1`
           echo $x $value;
                sh newshscript.sh $x $value
                x=`expr $x + 1`
            done
   echo “****$value”;
 
What the above script called mainscript does is that it read the file that contain employee id and picture file name.For each employee, it than calls another shell script called newshscript.sh, and increments the id. This id we will be using in the ctl file. 

#newshscript.sh

filesize=`ls -l $3 | awk ‘{print $5}’`
fixsize=`expr $filesize`
concno=1

if [ $filesize -gt 65536 ]; then
   echo “Filesize more than 6 k. breaking up…”
   concno=2
    if [ $filesize -gt 131072 ]; then
      concno=3      
    fi
    if [ $filesize -gt 196608 ]; then
      conco=4
    fi
    if [ $filesize -gt 262144 ]; then
      conco=5
    fi
   echo “Breaking into parts :”$concno
   fixsize=`expr $filesize / $concno`  
fi

echo $1 $2 $3 $4 “fixsize” $fixsize “filesize” $filesize “conc” $concno >> fileload.log

echo “Creating ctl file for dataload now”
echo “options (bindsize=400000)” >> loadpics.ctl
echo “load data” >> loadpics.ctl
echo “infile $3″ \”fix $fixsize\”>> loadpics.ctl
echo “append” >> loadpics.ctl
echo “concatenate “$concno >> loadpics.ctl
echo “into table PER_IMAGES” >> loadpics.ctl
echo “(image_id constant $1,” >> loadpics.ctl
echo “image raw($filesize),” >> loadpics.ctl
echo “parent_id constant $2,” >> loadpics.ctl
echo “table_name constant \”PER_PEOPLE_F\”)” >> loadpics.ctl
echo “” >> loadpics.ctl

sqlldr apps/<appspwd> control=loadpics.ctl log=picsload.log

mv loadpics.ctl loadpicslast.ctl

filesize=0
fixsize=0
concno=1

Above script is pretty simple, isn’t it? Well what we are doing is reading the file size, and creating
a ctl file with the information gathered. Then we are calling SQLLDR to upload the picture using this CTL file.

Hope this helps you! Thanks you …. Shivmohan Purohit

Article Courtesy: logicwala.com