Forums
Lawson Portal
ESS Modification
Author
Messages
Greg Moeller
Veteran Member
Posts: 1498
2/20/2006 7:39 PM
Greetings all:
Users here want a mod to the ESS. Specifically the Employment section, and the Primary Job Profile link.
We would like to add the Employment Status to this table. I have found the file that I think I need to modify (empprofile.htm), but am only vaguely familiar with OO programing.
Can someone provide maybe some examples of what you have done? Or where do we start? Need to find out where it is calling to get the data from the Employee table....
Thanks much in advance!
-Greg Moeller
John Henley
Senior Member
Posts: 3348
2/20/2006 10:36 PM
You do want to make the change in empprofile.htm (make sure you save a copy prior to changing it...)
There are two places to make the change:
First, in the GetEmployee() function, where it is building up the AGS call, add emp-status to the list of fields in object.field
Second, in the DspEmployee() function, copy the block of code for displaying a field (e..g if (NonSpace(obj.paemployee_next_rev_code) != 0)), and change the references from obj.paemployee_next_rev_code to obj.emp_status; also change the field display label from "Next Review Type" to "Employee Status".
Once you do that, you should be able to see status on the profile. Then it's just a matter of deciding where you want it to display.
For editorial purposes, I will warn you that ESS and Lawson's concept of OO programming are mutually exclusive!
Greg Moeller
Veteran Member
Posts: 1498
2/21/2006 4:11 PM
Thanks, John. That works wonderfully. Now I have to ask if there is a way to get the description of the status code, rather than just the status code. A1 is not going to mean anything to a normal user, they would rather see "Active - Full-time". Is there a way to pull from the EMSTATUS table the description collumn instead? or is that outside the scope of ESS?
John Henley
Senior Member
Posts: 3348
2/21/2006 4:28 PM
I was wondering how long it would take for you to ask this question!
It's actually easier than you might think; as long as the table relationship is defined (and it is in this case), it can be used in the DME call.
Modify the GetEmployee DME call (the object.field list) to include emstatus.description. Then in the DspEmployee function, reference obj.emstatus_description rather than obj.emp_status.
Greg Moeller
Veteran Member
Posts: 1498
2/21/2006 5:15 PM
I have modified it thus:
object.field = "process-level.name;hm-acct-unit;department.name;"
+"location.description;supervisor.description;employee;"
+"job-code.description;paemployee.wk-phone-ext;paemployee.wk-phone-nbr;"
+"email-address;date-hired;pay-rate;paemployee.hm-phone-nbr;"
+"paemployee.next-review;paemployee.next-rev-code;adj-hire-date;"
+"position.description;union.description;"
+"schedule;pay-step;pay-grade;emstatus.description"
and in my DspEmployee function
if (NonSpace(obj.emstatus_description) != 0)
{
profile += "
  Employee Status  "
+ "
  " + obj.emstatus_description+' '
nextcolor = getNxtClr(nextcolor)
}
and this returns the employee number now????
Help?
John Henley
Senior Member
Posts: 3348
2/21/2006 5:45 PM
change:
emstatus.description
to:
emp-status.description
and
obj.emstatus_description
to
obj.emp_status_description
Greg Moeller
Veteran Member
Posts: 1498
2/21/2006 5:55 PM
Thanks alot, John. Works GREAT now. Question: Is there a list of all the available fields/objects that exist that we can call if necessary?
John Henley
Senior Member
Posts: 3348
2/21/2006 9:39 PM
Well...the best place (of course) to look is the Data Dictionary on LawsonGuru.com!
https://www.lawsonguru.co...abid/98/Default.aspx
If you drill down to the EMPLOYEE table, and then scroll down, you can see all of the fields that are in the tables which are related to EMPLOYEE.
If they are related, you can probably include them easily. If not, you'd have to write additional code (more DME lookups) to get them.