Icon View Thread

The following is the text of the current message along with any replies.
Messages 11 to 19 of 19 total
Thread Attempted DBISAM Migration leading to error
Wed, Jan 26 2011 9:29 AMPermanent Link

Adam Brett

Orixa Systems

Dear Jan & Roy,

<start-minor-gripe>
I am fairly happy with EDBManager, it is a much bigger program than DBSys & better in all sorts of ways, however  I find it a bit annoying that all the menus are context sensitive, so options appear and disappear depending on what role you are logged on as where you are in the GUI etc.

I realise it simplifies the user surface & reduces the size & length of menus, however, honestly I prefer it when menus stay fixed, but options you are not allowed to use are grayed out if you don't have the permissions ... it just means that different users explaining how to do things can understand each other & all users can see the functionality of the system all the time. Static menus are also far easier to learn, map in your mind and remember.

As an example many of the operations Jan suggested I should follow in a prior message on this thread were totally invisible to me as a non-admin user ... so the suggestions didn't seem to make sense, which was confusing.
</end-minor-gripe>

--

My situation may be caused by a prior installation mucking things up, but I am not sure.

I had not touched EDB for a long while as I was working on other stuff.

I installed EDBManager on a PC which I am fairly sure has never had any EDB stuff on it.

I copied over some old EDB database files which had been used before, more by accident than anything else.

--

I started EDBManager & immediately added the old EDB DB files as a new database (I think) this added the DEFAULT connection etc.

I can access tables in this database but only as a basic user. Therefore all "high level" actions (create table, create user etc., etc) are not in my control.

If I create a new database with a new session all the log-in details I fill in are ignored (I guess because setting these also requires Admin rights) ... so I can't really do anything.

I can't see any option for switching from this "state" of using EDBManager to anything else.

--

The spooky thing is that when I uninstall & reinstall EDBManager saves my whole state ... so I am right back where I started.

I guess there must be Registry stuff which is saved between the different installations?

It seems likely these are what are causing the problem.

While I love trawling through the Registry trying to isolate these types of problem Smiley it is hard to do it for Elevate as this is a Windows key-word & so exists throughout the registry & I am not sure what to search for more effectively.

Searching on EDBMan found nothing.
Searching ElevateDB found quite a lot of stuff, none of which I was confident to play with.

... HUM.
Wed, Jan 26 2011 10:48 AMPermanent Link

Roy Lambert

NLH Associates

Team Elevate Team Elevate

Adam


I understand and sympathise about the context sensitive menus - over the time I've been using EDBManager I've grown sort of used to them but they are occasionally frustrating (at least they are consistent). Obviously one of these decades I'll write my own manager app <vbg>

The good news is EDBManager is controlled by an ini file. In my case

C:\Documents and Settings\Roy Lambert\AppData\Local\Elevate Software\ElevateDB Manager\edbmgr.ini

Simply blowing this away will reset everything back to square one. It contains a load of state information, and most importantly the settings for the various sessions including the default session. You actually have no choice but to edit this file if you want to use a different encryption password for a database (since Tim will read this at some point I'll remind him it would be nice to have that in a dialog) so its worth learning about.

When you create a session and the configuration file is created two users are created automatically - Administrator and System. Its impossible to delete System (or use it I think) Administrator can be removed so its possible you or someone else did that with the previous database. Try logging in as Administrator - EDBDefault. If you can't and there are no administrator class users you know of then the best thing to do is file the database in the recycle bin Smiley


Roy Lambert
Wed, Jan 26 2011 1:07 PMPermanent Link

Adam Brett

Orixa Systems

Thanks very much for this Roy ...  a real life-saver.

For others referencing this later in Windows 7 the ini file for EDBManager is:

C:\Users\<You UserName Here>\AppData\Local\Elevate Software\ElevateDB Manager

edbmgr.ini

--

I agree that EDBManager is nice & I will get used to which menus appear when. But I would agree that Tim (or someone!) could make some small improvements to EDBManager which would make things a lot nicer.

* Easier editing of ini content from within the manager.
* Access to Administrator log-on, log-off & ways to "chuck out" current state and load a totally new one.
* I would change the context sensitivity of a few of the menus to make them less brutally different.

--

I have changed the name of my INI file. I now have a clean install.

However now cannot even log-on to the Default session.

I start EDBManager as normal, it opens without any log-in request (not sure whether I should expect one at this stage, or only once I try to connect a session).

I edit the session to set the Username and Password to _anything_ (I have tried a number of variants) whatever I do my subsequent log-on attempts always fail. After 2 attempts I get the #501 error.

Even if I leave the password field blank when editing the session it doesn't help, I am still just presented with the Session Login request (not any specialized dialogue to enter a new password).

Quietly tearing my hair out here & also frustratingly sure that I am doing something really basic wrong ... however I have followed the on-line tutorial very closely.

Adam
Wed, Jan 26 2011 1:15 PMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Adam,

<< I am fairly happy with EDBManager, it is a much bigger program than DBSys
& better in all sorts of ways, however  I find it a bit annoying that all
the menus are context sensitive, so options appear and disappear depending
on what role you are logged on as where you are in the GUI etc.  >>

You have to remember that EDB customers often distribute the EDB Manager to
their customers, and they wouldn't necessarily want greyed-out menu options
for Administrator functionality that they don't want the end-user to see at
all.  That's primarily why the administrator-level functionality is left
out.  As for combining all of the functionality into one menu and not making
it context-sensitive, we'd end up with a menu with 30+ options on it, which
is not quite the ideal situation for most applications.  For example, the
Session, Database, and Table objects have 14 unique menu options alone that
don't encompass the standard Create/Alter/Drop/Copy/Rename/Privileges
functionality.

<< My situation may be caused by a prior installation mucking things up, but
I am not sure. >>

It most definitely is.  Do this:

Close down the EDB Manager and then delete this file:

Windows XP

C:\Documents and Settings\<User Name>\Local Settings\Application
Data\Elevate Software\ElevateDB Manager\edbmgr.ini

Windows Vista and Higher

C:\Users\<User Name>\AppData\Local\Elevate Software\ElevateDB
Manager\edbmgr.ini

When you restart the EDB Manager, you should select the Default session,
click on the Edit Session task link or menu option, click on the Local tab,
and then modify the Configuration File Path so that it refers to the desired
location where you'd like to store the configuration file (usually your
application's root directory, although you can put it anywhere that you
want), and then click on OK.  You should then be able to open the Default
session and start creating databases, etc.

This is all described here in the SQL manual tutorial on creating a local
database:

http://www.elevatesoft.com/manual?action=viewtopic&id=edb2sql&topic=Creating_Local_Database

Just remember, if you create a database that refers to a location that
already contains actual EDB database catalog (.edbcat) and table files
(.edbtbl, .edbidx, .edbblb, and .edbpbl), that you'll see tables "appear out
of nowhere" because they're already defined in the existing database
catalog.  Database definitions in the configuration file are simply
persistent definitions of *where* the actual database catalog and table
files are for a particular database name.  They allow EDB to resolve
database names efficiently and easily in SQL for local applications without
having to use path names like DBISAM required.  Such path names broke a lot
of client applications like Crystal Reports that used the DBISAM ODBC Driver
to access local databases.

<< The spooky thing is that when I uninstall & reinstall EDBManager saves my
whole state ... so I am right back where I started. >>

It's all in the edbmgr.ini file, which isn't deleted during uninstall
because that would not be nice for upgrades. Wink ElevateDB does not use the
registry at all, apart from whatever Inno Setup stores there for uninstall
purposes.

--
Tim Young
Elevate Software
www.elevatesoft.com
Wed, Jan 26 2011 2:06 PMPermanent Link

Roy Lambert

NLH Associates

Team Elevate Team Elevate

Adam


>I start EDBManager as normal, it opens without any log-in request (not sure whether I should expect one at this stage, or only once I try to connect a session).

Only when you try and connect a session. Since each session can have different users / logins there's no way logging in when opening EDBManager would work.

>I edit the session to set the Username and Password to _anything_ (I have tried a number of variants) whatever I do my subsequent log-on attempts always fail. After 2 attempts I get the #501 error.

>Even if I leave the password field blank when editing the session it doesn't help, I am still just presented with the Session Login request (not any specialized dialogue to enter a new password).

I think the mistake you're making is thinking DBISAM - I know I did for ages (still some things I still miss)

With ElevateDB you have to think in terms of three levels:

Configuration
Catalog
Tables

When you create a session in EDBManager essentially you're creating (or pointing at) a configuration file. This holds various details but the important one here is the user details. A configuration file is created with two users - Administrator & System. Until you've logged in as Administrator and created other users that's all you can use.  So when you try and connect the session use Administrator as the user and EDBDefault as the password. You can add those onto the session details via Edit of the session and then simply clicking to open works.

Only after you've added users can they be used to open the session.

>Quietly tearing my hair out here & also frustratingly sure that I am doing something really basic wrong ... however I have followed the on-line tutorial very closely.

Don't do that - tearing your hair out - it will not improve your looks no matter what you think.

Roy Lambert [Team Elevate]
Wed, Jan 26 2011 3:23 PMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

In addition to what Roy said, try to remember that the user/password
information that is set in the Edit Session dialog is not actually modifying
any user information for the configuration or database.  It is simply
telling the manager what user/password to use when logging in to the
configuration designated by the configuration file path setting.  If the
user/password don't match any valid users's name and password, then you'll
get a login error.

To actually add/modify/delete users, you have to use the
CREATE/ALTER/DROP/RENAME USER SQL statements, or use the interface provided
in the treeview in the EDB Manager.  However, as Roy indicated, you must be
logged in first as an actual administrator, or you won't even see any
options to modify the user information, and you will only see your own user
information and roles.

--
Tim Young
Elevate Software
www.elevatesoft.com

Thu, Jan 27 2011 4:58 AMPermanent Link

Adam Brett

Orixa Systems

Dear Tim & Roy,

Thanks to both of you & sorry this has taken so much time. EDBManager is lovely & I will get used to the context menus (Smile

The problem is was having was that:

1. I was being logged on at start up to the DEFAULT session (not as administrator) without having to enter a password. As I was already connected it _looked_ as if I ought to be able to do everything, but obviously I couldn't. I think it would be better if in that context there was a clear indication of this.

2. I missed it somewhere ... but on creating a new session it wasn't made clear that I should log on as Administrator with password of EDBDefault prior to trying to make any serious changes, run scripts etc.

The Link: http://www.elevatesoft.com/manual?action=viewtopic&id=edb2sql&topic=Creating_Local_Database actually doesn't mention this step, as far as I can see & without it you can't run the scripts required later in the process.

Anyway I am off & running now, so thanks for all the help.

Adam
Thu, Jan 27 2011 8:45 AMPermanent Link

Roy Lambert

NLH Associates

Team Elevate Team Elevate

Adam

>1. I was being logged on at start up to the DEFAULT session (not as administrator) without having to enter a password.

I didn't realise that was possible. Must be an effect of saving the state which I've stopped doing. I found I was always having to close more down than I needed to open up Smiley

Roy Lambert
Thu, Jan 27 2011 5:14 PMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Adam,

<< 1. I was being logged on at start up to the DEFAULT session (not as
administrator) without having to enter a password. As I was already
connected it _looked_ as if I ought to be able to do everything, but
obviously I couldn't. I think it would be better if in that context there
was a clear indication of this. >>

This must have been due to previous modifications that you made to the user
name/password for the default session that were saved in the edbmgr.ini
file.

<< 2. I missed it somewhere ... but on creating a new session it wasn't made
clear that I should log on as Administrator with password of EDBDefault
prior to trying to make any serious changes, run scripts etc. >>

Where exactly are you referring to in the documentation ?

<< The Link:
http://www.elevatesoft.com/manual?action=viewtopic&id=edb2sql&topic=Creating_Local_Database
actually doesn't mention this step, as far as I can see & without it you
can't run the scripts required later in the process. >>

It doesn't mention modifying the user name/password for the default session
because the default session is automatically set up for you with the default
Administrator user name and password when the EDB Manager is installed for
the first time.  This is to make it easier on first-time users, allowing
them to get started with creating databases, etc. without having to worry
about user security yet.

--
Tim Young
Elevate Software
www.elevatesoft.com

« Previous PagePage 2 of 2
Jump to Page:  1 2
Image