Exporting LBI Rights?

 7 Replies
 0 Subscribed to this topic
 22 Subscribed to this forum
Sort:
Author
Messages
Milo Tsukroff
Veteran Member Send Private Message
Posts: 47
Veteran Member

The new ERD's for Reporting Services (RS) and Framework Services are nice.  Now here's another question - how can I export LBI rights?  (Currently on LBI 9.0.1.10).   There appears to be no mechanism available.  I have access to FSADM and RSADM via Crystal, and I think I could write a report that would create a rights import file, if only I knew what tables & fields.

My goal is to put all of the users in our Production LBI into the Test LBI.  Right now it looks like the only means is manual. I would appreciate any help.

John Henley
Send Private Message
Posts: 3351
Technically, you shouldn't have any users to import, since I'm assuming your RS is hooked to FS, and FS is hooked to LSF9. One idea might be to just take a copy of the RS and FS databases from production and bring them up in test...
Thanks for using the LawsonGuru.com forums!
John
Matthew Nye
Veteran Member Send Private Message
Posts: 514
Veteran Member
Milo I think you are asking if you can move the rights association's (Structure/Elements/Users) from one system to another? I dont have it memorized but the tables that store the rights are pretty intuitive and I have moved rights from one system to another by selecting from these. You have to be cautious of the identity seed fields. I think the best way to handle this is to create an ETL routine that generates your rights for one system and then use the same for any other systems.

John,
Ive never been successful in copying over entire databases to replicate to a different system. I think this because they are storing Meta Data in the database in relation to the FQDN of the LBI server. They may have worked this out in the latest release but it something to be wary of.

If any of my answers were helpful an endorsement on LinkedIn would be much appriciated! www.linkedin.com/pub/matthew-nye/1a/886/760/
Kate Liamero
Veteran Member Send Private Message
Posts: 70
Veteran Member

What is an ETL Routine?

Matthew Nye
Veteran Member Send Private Message
Posts: 514
Veteran Member

Extract, Transform and Load.  Its just a methodolgy, not software. There are tools geared toward the ETL process, my preference is SQL Server Intergration Services (DTS in SQL Servder 2000), but you can do an ETL process using simple stored procedures, command line tools or batch files.

If any of my answers were helpful an endorsement on LinkedIn would be much appriciated! www.linkedin.com/pub/matthew-nye/1a/886/760/
Milo Tsukroff
Veteran Member Send Private Message
Posts: 47
Veteran Member
I'm going to try a Crystal Report.
Milo Tsukroff
Veteran Member Send Private Message
Posts: 47
Veteran Member

The Crystal Report method worked fine.    Will explain later when time permits. 

Milo Tsukroff
Veteran Member Send Private Message
Posts: 47
Veteran Member
The report I developed gave me the structure of a Rights CSV load file.

Tables loaded:
ERS_RULEMASTER <- main table
ERS_RULEDETAIL (linked back to ERS_RULEMASTER by the RULEID field, Left Outer Join)
ERS_ELEMENTS (linked back to ERS_RULEDETAIL by the ELEMENTID field, Inner Join)
ERS_STRUCTURE (linked back to ERS_RULEDETAIL by the STRUCTUREID field, Left Outer Join)

Columns for report:
ERS_RULEMASTER.RULEID
ActionMode = A (for Add)
ERS_RULEMASTER.RULENAME (User or role)
ERS_RULEMASTER.RULENAME (Right name)
ERS_STRUCTURE.STRUCTURENAME
ERS_ELEMENTS.ELEMENTNAME
ERS_RULEDETAIL.OPERAND
ERS_RULEDETAIL.ELEMENTVALUE
ERS_RULEDETAIL.ELEMENTVALUE2
ERS_RULEDETAIL.RULEGROUPING
ERS_RULEDETAIL.ELEMENTORDER
OWNER = lawson (our convention)

Sort by:
ERS_RULEMASTER.RULEID
ERS_RULEDETAIL.STRUCTUREID
ERS_RULEDETAIL.RULEGROUPING
ERS_RULEDETAIL.ELEMENTID

Export as a CSV file.

The biggest issue was that the 'user or role' column of the CSV was populated with ERS_RULEMASTER.RULENAME. Due to inconsistant setup in the target LBI system, this didn't always match. Our convention is supposed to be that the UserOrRole always matches the RightName, but, that wasn't always the case. I had to hand-adjust some of the CSV entries.

So it can be done!