Switch to: V12V11V10V9V8V7V6V5

Xojo: Migration to Valentina SQLite Server

On this page we will show how easy it really is to switch an existed Xojo project, that uses built-in SQLite database to Valentina SQLite Server.

This tutorial exists as video on yuotube.

Step

We will use example “Xojo/Example Projects/Database/SQLite/SQLiteExample.xojo_binary_project” to modify it. Let`s copy it, for example, to the Desktop and open in Xojo.

Add Init/Shutdown Valentina

To start working with Valentina plugin we should add one or few of its initialization methods:

  • Valentina.Init() to use local Valentina DB engine.
  • Valentina.InitReports() to use local Valentina Reports engine.
  • Valentina.InitClient() to access Valentina Server (never mind what you are going to use: Valentina DB, SQLite DB, Reports).

In this example, we are going to access Valentina Server as SQLite Server. So let's add in Application class a new event handler Open().

Also we should shutdown Valentina plugin using one of 3 shutdown methods. Let's add into Application class a new event handler Close().

Add flag 'gClientMode'

We will make application to be able to work in both modes Local and Client. To choose a mode let's add into the Application class gClientMode property with default value = False

Window

Click SQLiteWindow to see it.

Double click button “Create SQLite DB” to see its method, which creates local SQLite db.

Change mDB to VSQLiteDatabase

In the above method we can see that original code uses

mDB = new SQLiteDatabase

Instead we should use VSQLiteDatabase class from V4RB plugin. For this click property mDB

and change its type in the inspector

Change Method

Now we can change method itself as following:

Run Application in the LOCAL Mode

At this point you can try to RUN this modified project in LOCAL mode, to see that it still works using built-in SQLite engine of Xojo.

Run Application in the CLIENT Mode

To run the project in the CLIENT mode, change the default value of gClientMode to TRUE.

Open the folder of Valentina Server to see that database will be created in the folder 'databases_sqlite'. You can use prefs panel Valentina Servers to open it. Or just go directly to Vserver folder. On Mac OS this is '/Library/VServer_x64'. On Windows '\Program Files\Paradigma Software\VServer'.

Now let's start application again, and click all 4 buttons. You will see that application still works, and you see the correct results

Again let's look into Valentina Server folder. This time you will see new folder 'databases_sqlite' with database 'example.sqlite'.

Resume

We was need only

  • 2 events in App
  • about 10-12 lines of code

to convert EXISTING SQLite Example of Xojo to Valentina SQLite Server.

The same amount of job you will need for projects of any size, because you only need correct db create/open/connect code.

See Also