Login ProductsSalesSupportDownloadsAbout |
Home » Technical Support » ElevateDB Technical Support » Support Forums » ElevateDB General » View Thread |
Messages 1 to 10 of 13 total |
Query ServerSessionsLocks and ServerSessions from client |
Wed, Jan 23 2019 2:14 AM | Permanent Link |
Yusuf Zorlu MicrotronX - Speditionssoftware vom Profi | Hello,
as i can read in forum, in case of Error # 1005 (Cannot lock the row in the table) we want to show on client-side some information about the user currently locking but if we run: SELECT SS.User, SS.IPAddress, SS.Process FROM Configuration.ServerSessionLocks SSL LEFT JOIN Configuration.ServerSessions SS ON (SS.ID = SSL.SessionID) WHERE LockType = 'Row' AND UPPER(ObjectName) = UPPER('$CURRENT$TABLE$NAME$') we get a result if we do this within edbManager. But if we do this right after the user gets the exception on client side, of course only with user permission, we don't get a result. Is this normal? How can we get this information without admin-rights on database? Yusuf Zorlu MicrotronX |
Fri, Jan 25 2019 4:52 AM | Permanent Link |
Yusuf Zorlu MicrotronX - Speditionssoftware vom Profi | So, how can we show on user side, that current row is locked by other user?
There must be a functionality in elevatedb .. i don't think that we have to write our own code on onEdit: insert into locks table onPost: delete form locks table ?? Yusuf Zorlu MicrotronX |
Fri, Jan 25 2019 11:39 AM | Permanent Link |
Tim Young [Elevate Software] Elevate Software, Inc. timyoung@elevatesoft.com | Yusuf,
<< Is this normal? How can we get this information without admin-rights on database? >> You can't - as indicated in the manual, querying these tables requires admin privileges (the calling user must be granted the Administrators role). Tim Young Elevate Software www.elevatesoft.com |
Sun, Jan 27 2019 8:16 AM | Permanent Link |
Yusuf Zorlu MicrotronX - Speditionssoftware vom Profi | <<
You can't - as indicated in the manual, querying these tables requires admin privileges (the calling user must be granted the Administrators role). >> And how do you show your users that another user with name / IP / computer is currently editing this record? Yusuf Zorlu MicrotronX |
Mon, Jan 28 2019 3:32 AM | Permanent Link |
Roy Lambert NLH Associates Team Elevate | Yusuf
From the manual <<This table reflects all locks currently acquired by all of the sessions that are present on the ElevateDB server that the current session is logged in to. The current user must be granted the system-defined Administrators role in order to view this table. Please see the User Security topic for more information.>> If my interpretation is good you just need to be a bit inventive. A small function which creates its own TEDBSession, TEDBDatabase and TEDBQuery should do the job. Create the components in code, login as an administrator, get the info, stuff into result, free the components. The biggest difficulty I can see is obfusticating the admin password. Roy Lambert |
Mon, Jan 28 2019 4:08 AM | Permanent Link |
Yusuf Zorlu MicrotronX - Speditionssoftware vom Profi | Roy Lambert wrote:
<<If my interpretation is good you just need to be a bit inventive. A small function which creates its own TEDBSession, TEDBDatabase and TEDBQuery should do the job. Create the components in code, login as an administrator, get the info, stuff into result, free the components. The biggest difficulty I can see is obfusticating the admin password. Roy Lambert>> Hi Roy, yes the problem is that different customers have different passwords for their "Admin accounts" ... and this would need that the client-configuration needs not only a client password, also the admin-password needs to be saved on client side. Make no sense to me. I think we need a functionality in ElevateDB where the server sends back the locking users details to the client, where we can show it somehow. This should be a basic functionality of DB-Servers ... hit me if i'm wrong! >> Tim, is there anything planned? Yusuf Zorlu MicrotronX |
Mon, Jan 28 2019 4:19 AM | Permanent Link |
Matthew Jones | Yusuf Zorlu wrote:
> different customers have different passwords for their "Admin accounts" Note the requirement is for an account with the administrator role, not the "admin account". You can create another account for this purpose and give it just that role. It does strike me that a new role for just this purpose would make sense though. -- Matthew Jones |
Mon, Jan 28 2019 5:33 AM | Permanent Link |
Roy Lambert NLH Associates Team Elevate | Yusuf
1. I agree with Matthew. 2. I've seen this requirement posted here a few times, I've also had it asked of me when I was in a corporate role. My guess 99+% of the time its not needed. Firstly - edits should be kept short and people shouldn't start editing a record and wander off to lunch. Secondly - apart from in a small organisation the fact that Fred in accounts (way over there) has the record locked doesn't help Thirdly - it often doesn't matter to work flow if person B has to wait until person A has unlocked the record sometime in the next hour or two Fourthly - sometimes the record HAS to stay locked while a problem is sorted out Question to be asked is "what is going to happen when they find out who locked the record?" If its that important mandate that they create a WHOHASWHATLOCKED account with admin privileges. My bet is that its something they've been told is a good idea, or think is a good idea but haven't thought things through. If its vitally important then yes, as you suggested, implement your own monitoring system and wait for complaints about performance. Roy Lambert |
Mon, Jan 28 2019 5:41 AM | Permanent Link |
Yusuf Zorlu MicrotronX - Speditionssoftware vom Profi | Hi Roy,
1. i agree with matthew, too and will force our server.exe to create an internal admin-account for this 2. we have customers working on terminalservers with more than 80 users at the same time in server-farms. Mostly logistics companies doing something within orders, two or more people can work at the same time with same positions so yes we need a mechanism to inform user that his collegue in another country is currently locking this position so they can get in touch with each other ... I hoped that we have something from ElevateDB available here (as it was with advantagedatabaseserver), but now we use 1.) to solve our issue. Yusuf Zorlu MicrotronX |
Mon, Jan 28 2019 7:03 AM | Permanent Link |
Roy Lambert NLH Associates Team Elevate | Yusuf
>1. i agree with matthew, too and will force our server.exe to create an internal admin-account for this That sounds like you're modifying the server code - if so why not build something in there? >2. we have customers working on terminalservers with more than 80 users at the same time in server-farms. Mostly logistics companies doing something within orders, two or more people can work at the same time with same positions so yes we need a mechanism to inform user that his collegue in another country is currently locking this position so they can get in touch with each other ... I'm ancient and cynical - in theory its a good idea but I wonder how often practice and theory coincide. At least, as you say, you have a solution. Roy |
Page 1 of 2 | Next Page » | |
Jump to Page: 1 2 |
This web page was last updated on Thursday, May 23, 2024 at 07:54 PM | Privacy PolicySite Map © 2024 Elevate Software, Inc. All Rights Reserved Questions or comments ? E-mail us at info@elevatesoft.com |