Login
Register
Search
Home
Forums
Jobs
LawsonGuru
LawsonGuru Letter
LawsonGuru Blog
Worthwhile Reading
Infor Lawson News Feed
Store
Store FAQs
About
Forums
User Experience
Lawson Design Studio
Hide button on screen based on group/role
Home
Forums
Jobs
LawsonGuru
LawsonGuru Letter
LawsonGuru Blog
Worthwhile Reading
Infor Lawson News Feed
Store
Store FAQs
About
Who's On?
Membership:
Latest:
Saef
Past 24 Hours:
0
Prev. 24 Hours:
0
Overall:
5226
People Online:
Visitors:
327
Members:
0
Total:
327
Online Now:
New Topics
User Group Announcements
Carolina User Group Meeting
12/20/2024 3:15 PM
Date & Time: February 6, 2025, 8:30am - 4:00pm
S3 Systems Administration
ADFS certificate - new cert
12/3/2024 9:38 PM
The certificates on the windows boxes expired and
Lawson S3 HR/Payroll/Benefits
Post Tax Benefit Plan Table
11/14/2024 9:16 PM
Hi, totally new to Laswon. I have a repor
Lawson S3 Procurement
ED501 Error: Map 850 not supported by /law/c15vda/lawson/test10/edi/bin/laws_out_91
11/12/2024 3:47 PM
Tried runnning ED501 and getting the atathced erro
Lawson S3 HR/Payroll/Benefits
Error
11/6/2024 9:54 PM
When I try to enroll a retiree in 72.1 health plan
Infor ERP (Syteline)
Syteline: New Data Maintenance Wizard (Error) Need help
11/1/2024 4:24 PM
Hi, I need help with an error on syteline while us
Dealing with Lawson / Infor
Implementing Lawson v10 with Cerner Surginet, Case Cart Picking, and Quick Adds for the OR
10/29/2024 4:20 PM
Hi Everyone, I am wondering if there is any org
Lawson S3 HR/Payroll/Benefits
Canada Tax Calculation (Federal and Provincial) Issue
10/23/2024 5:00 AM
Initially, we had problem with CPP2 calculation is
Lawson S3 HR/Payroll/Benefits
CA Section 125 401k Plan
10/22/2024 10:13 PM
Does anyone have any recommendations on how to fac
S3 Systems Administration
Running AC120 deleted records from ACMASTER table
10/22/2024 3:40 PM
We recently ran the AC120 as normal and somehow it
Top Forum Posters
Name
Points
Greg Moeller
4184
David Williams
3349
JonA
3291
Kat V
2984
Woozy
1973
Jimmy Chiu
1883
Kwane McNeal
1437
Ragu Raghavan
1372
Roger French
1315
mark.cook
1244
Forums
Filtered Topics
Unanswered
Unresolved
Announcements
Active Topics
Most Liked
Most Replies
Search Forums
Search
Advanced Search
Topics
Posts
Prev
Next
Forums
User Experience
Lawson Design Studio
Hide button on screen based on group/role
Please
login
to post a reply.
8 Replies
0
Subscribed to this topic
12 Subscribed to this forum
Sort:
Oldest First
Most Recent First
Author
Messages
Rudy
Basic Member
Posts: 5
7/8/2010 4:43 PM
Need some assistance. I have a button on the HR11 screen that will launch a webpage. This works fine. But, we are rolling out in a phased approach to 40+ offices, 1-2 at a time and the powers that be do not want anyone seeing the button until it is their turn to go live. We are talking about 2-4 people per branch. Using the hammer approach I was able to get the code working below but it requires me to add user IDs every time a new office goes live. This requires a lot of extra red tape going thru QA and production control not to mention the extra coding on 5 screens that we have the button on.
I am looking for a way to put the users in a role or group and be able to authenticate them in that role or group, but can’t seem to find a way. If I use portalWnd.oUserProfile.getAttribute("???") for group or role then it brings back only one out of the several that they are in. So it is not a guarantee that I get the group that I would use for the button group/role.
Questions: 1) is there any way to loop through all of their groups/roles to match a particular one. 2) Is there a better mousetrap than the one I am using below?
Thanks, Rudy
Code:
function FORM_OnAfterDataInit()
{var str1="UserID1,UserID2,UserID3,UserID3 ";
var UserId=portalWnd.oUserProfile.getAttribute("id"); //gets logged in user ID //alert(portalWnd.oUserProfile.getAttribute("group"));
//UserId="u3lxd";
var iOk=str1.indexOf(UserId); //searches for a string w/in a string
if (iOk==-1)
{
var objButton = lawForm.getFormElement("push11");
objButton.value=""; //hides button on screen
}
}
David Williams
Veteran Member
Posts: 1127
7/8/2010 4:50 PM
Can you add a Service to their Lawson Security "Manage Identies" (like ProductLine_REQUESTER) and do a quick look up to see if the user logged in has the value that indicates they should see the button?
John Henley
Posts: 3353
7/8/2010 4:59 PM
What about their Portal Role?
Rudy
Basic Member
Posts: 5
7/8/2010 5:04 PM
When I add the below code, i get a blank value. I went in to the manage identities and did not see anywhere to add anything to ProductLine_REQUESTER.
var ValidUser=portalWnd.oUserProfile.getAttribute("ProductLine_REQUESTER");
alert(ValidUser);
Rudy
Basic Member
Posts: 5
7/8/2010 5:06 PM
Also, do you have any idea where I can get a list of all of the elements that I can bring back using: portalWnd.oUserProfile.getAttribute("??????");
Gary Davies
Veteran Member
Posts: 248
7/8/2010 5:20 PM
Hi Rudy, still struggling with this one huh? Do not try to add anything to the REQUESTER agent. That is predefined for use in RSS. The suggestion was to create a new agent similar to that and populate it. Not practical because you will have to maintain the values when it is already there in your groups.
Did you try what I suggested previously of calling servlet/Profile and parsing the group attributes out of the XML returned?
Rudy
Basic Member
Posts: 5
7/8/2010 6:34 PM
Did you try what I suggested previously of calling servlet/Profile and parsing the group attributes out of the XML returned?
No. was unable to find any examples to get a start. Thanks.
Rudy
Basic Member
Posts: 5
7/13/2010 7:49 PM
Finally got it to work by parsing out the XML data from the servlet/Profile? servlet as mentioned above by Gary. I am new to JS so the code could probably be a little tighter.
function FORM_OnAfterDataInit()
{
var bOk=FindGroup();
if (bOk==false)
{
var objButton = lawForm.getFormElement("push11");
objButton.value="";
}
}
function FindGroup()
{
var sProdLine=portalWnd.oUserProfile.getAttribute("productline");
var bDisplay = false
var sTarget_Group="myGroup"
var sServer="";
var sDomain="test.local";
switch (sProdLine) {
case "PROD9":
sDomain="company.net";
break;
case "QA9":
sServer="qa-";
break;
default:
sServer="dev-";
}
var sDME="http://"+sServer+"hrportal."+sDomain+"/servlet/Profile?";
var vDMEInfo = portalWnd.httpRequest(sDME);
var oRecs = vDMEInfo.getElementsByTagName("ATTR");
//alert("length=" + oRecs.length);
for (var i = 0; i < oRecs.length; i++) {
if (oRecs
.getAttribute("value")==sTarget_Group)
{
bDisplay=true
//alert(i+"--"+oRecs
.getAttribute("name")+"="+oRecs
.getAttribute("value"));
}
}
return (bDisplay);
}
David Williams
Veteran Member
Posts: 1127
7/14/2010 4:29 PM
This actually met a need I had so I appreciate you figuring it out. I found that I had to revise your script to indicate the record number but otherwise it worked great.
// if (oRecs[i].getAttribute("value")==sTarget_Group)
Thanks
Please
login
to post a reply.