cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

Community Tip - Did you get an answer that solved your problem? Please mark it as an Accepted Solution so others with the same problem can find the answer easily. X

Principal Admin without Org/Site Admin?

sdrzewiczewski
7-Bedrock

Principal Admin without Org/Site Admin?

I thought I saw a thread on here about allowing a user to act as a Principal Administrator without making them an Org/Site Admin? If you've done this can you explain how?


Thanks,
Steve D.

16 REPLIES 16

We have this exact need as well - haven't been able to figure out how.

Closest we've come is to make two people Org Admin, then apply a profile to them that hides all Org sub tabs except Utilities. Doesn't help much because they have all under the Utilities tab, but at least hides Profiles, etc.

So, make a user who has Org Admin abilities…but use a profile to turn off the entire Org Admin tab?


[cid:image001.gif@01CC1494.656672F0]

Steve Vinyard
Application Engineer

That would work. I wish there was a way to remove the permissions rather than just the links.

Do any of the ACL's for objects like WTUser or WTGroup have any relevance for doing this?

Thanks,

Mike

I am looking for a way to capture comments added in assignments and displaying them in downstream assignments or email notification in a workflow.

Thank in advance.



Ray

Ray Drennen
MCAD Administrator
Otis Elevator Company
5 Farm Springs Rd.
Farmington, CT 06032
860-676-5619 - voice
860-353-1356 - eFax

ray.drennen@otis.com <">mailto:ray.drennen@otis.com>

________________________________

I think the comments are on the WFActivity or a link from it. Wanting this as well!


[cid:image001.gif@01CC149C.FF7FC8C0]

Steve Vinyard
Application Engineer

Please find attached code snippet. We capture comments off for certain Voting event from eventlist of WfVotingEventAudit. You may have to find the activity name for which you need comments.

Hope this helps.
Preeti



Following could be one of the ways:-



1. Define a process variable "temp_comments"

2. Define a assigned activity local variable "activity_comments" and copy to
"temp_comments"

3. From the assigned activity "Complete" transition tab call the method
temp_comments = WorkflowHelper.getTaskComments(self);

4. Following is the method WorkflowHelper.getTaskComments



public static String getTaskComments(WTObject wto) {

String comments = ";

try {

WfAssignedActivity wfaa =
(WfAssignedActivity) wto;

Enumeration enumeration =
wfaa.getAssignments();

for (int iAct = 0;
enumeration.hasMoreElements(); iAct++) {

WfAssignment
wfassignment = (WfAssignment) enumeration.nextElement();

Enumeration
enumeration1 = PersistenceHelper.manager.navigate(wfassignment, "workItem",
wt.workflow.work.WorkItemLink.class, true);

for (int i =
0; enumeration1.hasMoreElements(); i++) {


WorkItem wi = (WorkItem) enumeration1.nextElement();


ProcessData pd = wi.getContext();


comments = pd.getTaskComments();


if (comments != null) comments = comments.trim();

}

}

} catch (Exception e) {

e.printStackTrace();

}

return comments;

}





4. temp_comments can be used downstream for different purposes.



Let me know if this meets your requirement.





Thank you and have a great time.

Best Regards

Swamy Senthil

Principal Solutions Architect, Swasen Inc

swamy.senthil@swasen.com(Email); 909 800 8423(M); 973 324 2729(W); 866
908 6561(F);






AL_ANDERSON
5-Regular Member
(To:sdrzewiczewski)

I hope this hasn't already been addressed. If so, then maybe I can get a
quick refresher.

Is there a way to use Query Builder to get the latest version only of a
document number without using lifecycle state or some other criteria? I
want to mimic the behavior of the "Go to Latest" link using query builder,
but I am not sure how Go to Latest works at the database / object model
level. Can anyone explain how Go to Latest actually works (i.e. what
tables are involved in finding that latest among multiple revisions where
each revision has its own "latest" iteration)?

Thanks.

Al Anderson

It's unbelievable that Latest Rev is not there to select.

You have to use Sub Select on Maximum of VersionSortID

Al,



I have not tried this in a while, but this trick used to work very
nicely






Below returns latest Iteration of each Revision.
Attached gives only latest Revision; needs latest Iteration also.

Best way to do this is in a workflow that calls the info*engine webject to
create the user or group. (This is actually what the principal admin. uses)
Spawn the workflow from a JSP page, or if you don't want all that custo.
work, create a never ending workflow with this logic that assigns task to
desired users to specify parameters. You can start it via the workflow
administrator applet's initiate tab and just avoid assigning it a primary
business object.



You really don't want to also give someone the ability to delete users, try
to repair disconnected users, create organizations, etc. I think Antonio
mentioned something similar last year about granting access to only some of
the utilities under. I mentioned you create a new major tab, link to your
own JSP which have links.



I did once hear of someone using the project invite by e-mail capability to
allow others to invite users who are not already users in the system. They
basically forced the system to create the user vs. just being invited.



Also, for those who do not know, you can load any principal via an LDIF file
or load file. (For LDIF's, user is added to ldap right away, database upon
first usage) You could create a JSP page that write out a temporary file,
calls a command line program to load it on demand.



As for ACL's, I think in general PTC is of the general thinking that those
abled to create, update, and delete users and groups are power users and
wouldn't need to be restricted.



For my production system at TRW that I will be supporting, I plan to write a
workflow to approve user account requests and have picks lists for what
access they need. Once workflow tasks are signed off, the account gets
created in system. I'm lazy and desire consistency what can I say.



Dave












Folks,


As Mike has already suggested you have to use a sub select to limit query returns to the latest version. Adding to the complexity this doesn’t necessarily work if you are using View versions on wtparts, if you are using views you will have to limit returns to just the view lineage you are interested in or perhaps add a Maximum sub-select on “last updated” if you just want the newest one. The query builder is also a little buggy when attempting to add criteria particularly in the sub-select, you have to add extra criteria then remove that before saving. Needless to say the sub select is expensive and I have had problems when using it with a large return.


The rest of this post is really just whining and in no way helps with your request…….


I feel the lack of a distinct “latestVersion” is one of the weakest areas in Windchill, it is a huge gap that continues to exist because it has always been there. I suspect that nearly every implementation wants customers of their data to only be able to access the latest Version and latest Iteration of an object when it is in certain states. Similarly they probably only want data authors to be able to modify the latest Version, same story when reporting on data, generally you are only interested in the latest version and iteration. It would be great to have some distinct criteria on the objects to allow reporting and access control rule creation.


Currently the only way I know of to achieve this is to put something in place to set the lifecycle state of earlier versions when a revision takes place and have access control rules on the state of the early versions as necessary. As far as I am aware there are no out of the box tools for doing even that, but that is something you typically only realise (with great disappointment) once you are well into your first deployment.


On a related pain point, to be able to modify name/descriptions held on an object master users have to be able to modify all versions. I don’t follow that “logic”, really if they can update the latest version it is desirable for them to be able to make edits to the name/description. Ideally I would prefer the name/description to be moved from the master to the version/iteration. Such a change could be used in conjunction with an extension to the Attribute master definition and some sort of “alternate language view version” to properly support alternate language views of parts which is another gap, particularly when using an ESI connection to an ERP system that supports a multi-language dataset.


-----

Lewis

In Reply to Mike Lockwood:


Below returns latest Iteration of each Revision.
Attached gives only latest Revision; needs latest Iteration also.

What is the variable amend_Comments that is defined in the out of the box CN workflow?



Ray
860-676-5619 - voice
860-353-1356 - eFax

Just one comment on this dead horse...

For reports on Documents, EPM Documents and Parts (Revisioned and Iterated), one has to use:

- Latest Iteration = 1

- Sub Select on maximum of versionSortID

For reports on change objects that are Revised, providing one is using Change Tracking preference (Revisioned but not Iterated), one has to use:

- Latest Iteration = 1 (this actually returns the latest Revision)

For reports on various configurations that are Iterated but not Revisioned (like workflow templates), one has to use:

- Latest Iteration = 1

Seems that all this should be in some documentation about query builder reports.
cswaner
5-Regular Member
(To:sdrzewiczewski)

Greetings Steve,


Just wondering if you were able to get this to work?


I created a user, put them in as Org Admin, put them in a Profile that hid all the Org minor tabs, then gave a link to the Principle admin page. This all works, except the user is denied the ability to create a new user. Interestingly, the same user is able to create a new uservia the copy from another user(Similar User).


Any advice?


Cam


MCAD Architect


Top Tags