Error # 44 when connecting to DB

rzr

Member
10.1C, Windows.

All,

I installed ProKB on my machine and I'm trying to connect to ProKB from datadictionary. I get below error:

** Database has the wrong version number. (db: 8365, pro: 8342). (44)

I was able to figure out that value of "pro" is calculated as below for 10.1C / block size 8K:
pro = 150 * 8 * 1024 = 8342.

Any ideas on how is the "db" value calcualted?
 

Cringer

ProgressTalk.com Moderator
Staff member
It has nothing to do with block sizes. The db number is an encoded version of the version of Progress the bd is in, and the pro number is the encoded version of Progress you have installed. I'm afraid I don't know the version numbers though.
 

Rob Fitzpatrick

ProgressTalk.com Sponsor
DB block size is part of version number. 173 (8365 - 8192) is 11.x and 150 (8342 - 8192) is 10.x.

I don't understand why you're trying to connect to ProKB's DB with the dictionary, but you can't do it self-service unless you're using the same DLC version. Try a client/server connection (with -S).
 

rzr

Member
Thanks Rob.

Right now ProKB connects to the in a sinlge user mode and installs only on C:\
I'm trying to have ProKB installed on all dev's machines...with Db moved to a shared drive and they all connect to this Db on shared drive. This way when we need to upgrade ProKB, I only upgrade the Db on the shared drive.

Try a client/server connection (with -S).

Sorry, but how do i do this.... from proenv or from the dictionary ?
 

Rob Fitzpatrick

ProgressTalk.com Sponsor
Hmm. You may be out of luck, if you only have 10.1C. I was going to say "proserve the DB with -S, the connect to it with your 10.1C client via client/server". But because they provide a version 11 DB, you can't open it with a v10 proserve. Sorry.
 

RealHeavyDude

Well-Known Member
The compatibility in Progress always was upwards not downwards. That means that you can connect to a database of the previous Progress version - but only as a remote client and not via shared memory or single user.

But you can't connect in any way to a database of the newest version with a client of the previous version. What is possible - when the AppServer protocol has not changed - to connect a client of the previous version to an AppServer with the newest version of Progress. For example you can connect to an OE10 AppServer with a V9 client. As I don't have any OE11 at my disposal I can't test but I would assume that it is possible to connection an OE10 client to an OE11 AppServer.

But, since you need an OE11 installation to run a OE11 database and AppServer this might not help you and might not be applicable to provide access to the downloadable KB.

Heavy Regards, RealHeavyDude.
 

rzr

Member
Thanks RHD & Rob...

If i install a trial version of OE11, connect to ProKB db... dump the df ...then
come back on 10.1C, create a local ProKB db, load the df that i dumped and then load the .d files files from ProKB package.... then I'm thinking this should help me setup my ProKB database on a shared drive and also make it eaiser to upgrade in future...
 

rzr

Member
Unfortunately :( not all 4GL'ers here have access to internet (yea.. i know !!!!) due to certain restrictions...
I want them to have access to Progress KB, in an event they need to do some research or analysis on things they are working on...,
 

Rob Fitzpatrick

ProgressTalk.com Sponsor
Unfortunately :( not all 4GL'ers here have access to internet (yea.. i know !!!!) due to certain restrictions...
I want them to have access to Progress KB, in an event they need to do some research or analysis on things they are working on...,

Are you certain you can't just share the ProKB installer with them and have them run it on their machine? From what I can see this isn't a traditional Progress app. Although the executable image contains the description "OpenEdge Graphical Client" and the UI shows "Powered by OpenEdge 11", this isn't prowin32.exe. It is _prokb.exe. When I run it, it doesn't have a handle to any of my DLC resources, either files or registry entries. It appears to be completely self-contained. (See attachment.)

Try providing the ProKBsetup.exe to your users and have them install it. I believe it should work.

ProKB.png
 

Cringer

ProgressTalk.com Moderator
Staff member
Yes you can install the ProKB on any machine, but I believe the issue the OP is trying to get around is how to update it easily. At the moment each person would have to update their installation, but if he could install it centrally on a server, he'd only have to update that.
 

Rob Fitzpatrick

ProgressTalk.com Sponsor
Then I would say install it on a Terminal Server that every one has an account for, and have them run it there. As it stands, the application makes a self-service connection to the database so it's not going to work across a network. Maybe it could it he started a broker for the prokb DB with -S, and then changed the client startup parameters; I haven't played with that.

I think the simplest answer would just be to put the new installer in a centrally-accessible location (a file share) and have users re-run the setup program occasionally. It's not elegant, but it's not hard either. If someone is capable of reading and understanding KB articles, they should be able to run setup.exe every one in a while.
 

rzr

Member
If someone is capable of reading and understanding KB articles, they should be able to run setup.exe every one in a while

Only that the dev's here do not have access to install on C:\ . It has to done by the IT support folks.

Thanks for the inputs and suggestions so far.
 
Top