Valentina.GetDatabaseVersion() and remote database

Charles Yeomans charles at declareSub.com
Wed Mar 14 15:53:07 CDT 2007


Now I'm not sure what you're talking about.  GetDatabaseVersion  
returns a value representing the db file format.  If VServer opened  
it, then the file format of that database has been upgraded by  
VServer to the current file format.  The only reason to use  
GetDatabaseVersion is that you are about to open a local database,  
and you want to check the file format first -- because if you let  
Valentina open it, the file format will be upgraded to the current  
one -- and you want perhaps to let the user confirm that it's okay to  
upgrade.

Charles Yeomans



On Mar 14, 2007, at 4:35 PM, Stan Busk wrote:

> Hi,
>
> Yes, but when opening a remote DB you pass a FolderItem to it,  
> right? Valentina is supposed to recognize it is a remote DB as you  
> have initiated VDatabase using the server-like constructor. It  
> should work then. Anyway the point is it works on the place where  
> you open the connection but not from a function you call from where  
> you open the connection. I use global properties everywhere so it  
> should work but it doesn't. The same happen with OPEN. It works  
> from where you open the connection but not from a function you call  
> passing the folderitem. I have tried all day and no way. The only  
> possible way to open a file is thru a single method in the middle  
> of the connection code...That means none of my 15 schema updates  
> can be called.
>
> Stan
>
>> I think you're missing the point of Valentina.GetDatabaseVersion.   
>> As I understand it, all that it does is to read some bytes from  
>> the file represented by the FolderItem and return the  
>> information.  This functionality should work no matter how  
>> Valentina is initialized.  For a remote database, you cannot of  
>> course represent a database on the server as a FolderItem, in  
>> general.  Thus Valentina.GetDatabaseVersion does not make any  
>> sense in that context.
>>
>> Unfortunately, the VDatabase interface is misleading.
>>
>> Charles Yeomans
>>
>>
>>
>>
>> On Mar 14, 2007, at 2:41 PM, Stan Busk wrote:
>>
>>> Hi,
>>>
>>> Strange. The code below works:
>>>
>>> dbi = mValentinaServer.DatabaseInfo(1)
>>> myDb = new myDatabase( mVConnection )
>>> f = new FolderItem( dbi.path, FolderItem.PathTypeShell )
>>> DBVersion = Valentina.GetDatabaseVersion( f )
>>>
>>> but as soon as I call Valentina.GetDatabaseVersion( f ) from  
>>> inside a method I get a Valentina Exception #-39. In other words,  
>>> rather than calling DBVersion = Valentina.GetDatabaseVersion( f )  
>>> directly I have that function:
>>>
>>> Function Database_UpdateSchema( inFile As FolderItem )
>>>   Dim DbVersion as Integer
>>>   DbVersion = Valentina.GetDatabaseVersion( inFile )
>>> End Function
>>>
>>> I don't understand the point here.
>>>
>>> stan
>>>
>>>> On 12/3/07 8:18 PM, "Stan Busk" <maxprog at mac.com> wrote:
>>>>
>>>> Hi Stan,
>>>>
>>>>> Are the two last lines of the following code correct?
>>>>>
>>>>> ---
>>>>> mVConnection = new VConnection( aHost, aUserName, aPassword,  
>>>>> aPort,
>>>>> aTimeOut, aParameter )
>>>>> mVConnection.Open()
>>>>> mValentinaServer = new VServer( mVConnection )
>>>>>
>>>>> dbi = mValentinaServer.DatabaseInfo(1)
>>>>>
>>>>> myDb = new myDatabase( mVConnection )
>>>>>
>>>>> f = new FolderItem( dbi.path, FolderItem.PathTypeShell )
>>>>>
>>>>> DBVersion = Valentina.GetDatabaseVersion( f )
>>>>> ---
>>>>
>>>> Not a fact this is correct.
>>>> Db already should be registered under VSERVER.
>>>>
>>>>> I am just trying to get the served DB version. It works fine  
>>>>> when the
>>>>> database in on localhost but I have doubts that would work on  
>>>>> remote
>>>>> DBs as well unless Valentina is clever enough to just use the  
>>>>> DB name
>>>>> and already know what and where to look at. It looks like the  
>>>>> Open()
>>>>> method is already that clever.
>>>>
>>>> Right. Open() opens db by name as it is registered under vserver
>>>>
>>>>
>>>> -- 
>>>> Best regards,
>>>>
>>>> Ruslan Zasukhin
>>>> VP Engineering and New Technology
>>>> Paradigma Software, Inc
>>>>
>>>> Valentina - Joining Worlds of Information
>>>> http://www.paradigmasoft.com
>>>>
>>>> [I feel the need: the need for speed]
>>>>
>>>>
>>>> _______________________________________________
>>>> Valentina mailing list
>>>> Valentina at lists.macserve.net
>>>> http://lists.macserve.net/mailman/listinfo/valentina
>>>
>>> _______________________________________________
>>> Valentina mailing list
>>> Valentina at lists.macserve.net
>>> http://lists.macserve.net/mailman/listinfo/valentina
>>
>> _______________________________________________
>> Valentina mailing list
>> Valentina at lists.macserve.net
>> http://lists.macserve.net/mailman/listinfo/valentina
>
> _______________________________________________
> Valentina mailing list
> Valentina at lists.macserve.net
> http://lists.macserve.net/mailman/listinfo/valentina



More information about the Valentina mailing list