Aide du programme MAJBase.exe

 

Fonctionnement

 

Mise à jour automatique de la base : fichiers scripts et version de la base

 

Les fichiers scripts ont pour nom : « script12.1.sql » ou 12 détermine la version de la base de données (il peut y avoir plusieurs fichiers script pour une version (script12.1 et script12.2 …)).

La version de la base est enregistré dans le champ INFOSBASE.version.

Lors de la mise à jour automatique de la base les scripts ayant un numéro de version supérieur à la version de la base sont exécutés.   

 

Paramètres optionnelles de ligne de commandes :

 

auto --> les mises à jour sont lancées automatiquement à l'ouverture du programme.

    Syntaxe : MAJBase.exe auto

silent : pas de message de confirmation de l'execution d'un script

dbconnect=localhost:c:\data.gdb

basename=c:\data.gdb  (-> si paramètre "serverName" de OrcadiaCSv2.ini ajouté pour la connexion)

pass=

user=

scriptdir=

 

autres paramètres --> tout autre paramètres que "auto" correspond au nom du fichier script à exécuter.

 Seul ce fichier sera exécuter et le programme sera arrêté.

    Ex Syntaxe :  MAJBase.exe generator.sql2

                  MAJBase.exe script.sql

 

Modifier le répertoire de la base à MAJ :

Cliquer sur "menu fichier/.." ou CTRL+F3

 

Définir la version à partir de laquelle la mise à jour doit être faite :

Cliquer sur "menu version / ..." ou  CTRL+F2

 

Modifier les paramètres d ‘accès à la base (voir aussi "paramètres de ligne de cde")

Le chemin d’accès à la base par défaut est celui défini dans le fichier « OrcadiaCSv2.ini »

Si le fichier MAJBase.ini existe dans le répertoire du programme.

DBConnect=MAJBase.ini.[base].dbconnect

UserName=MAJBase.ini.[base].user

Password=MAJBase.ini.[base].pass

 

Modifier le répertoire des scripts (voir aussi "paramètres de ligne de cde")

Le chemin des scripts par défaut est « c:\OrcadiaCSv2\database\scripts »

Si le fichier MAJBase.ini existe dans le répertoire du programme.

ScriptDir=MAJBase.ini.[script].scriptdir

 

Format des fichiers scripts

insert into TYPEVALEUR values (9,'MessageType');

insert into INFOSBASE (version,DATEMAJ) values (12,current_timestamp);

 

Erreur d’exécution d’un script

 

Règle générale : Si il y a une erreur dans l’exécution d’un script, les scripts suivant ne sont pas exécutés.

 

Marque /* continue_if_error */

Si un erreur survient dans le script qui suit cette marque, les scripts suivant sont exécutés.

 

/* continue_if_error */

insert into TYPEVALEUR values (9,'MessageType');

/* continue_if_error */

insert into INFOSBASE (version,DATEMAJ) values (12,current_timestamp);

 

Marque /* STOP_IF_ERROR */

Si un erreur survient dans le script qui suit cette marque, les scripts sont arrêtés mais il n'y a pas d'exception.

 

Infos versions

 

2019 (22 mai 2008)

 

Les paramètres "DBConnect" "User", "Pass",  "ScriptDir", "basename" peuvent être passés en ligne de commande.

(voir aide ci au dessus)

 

Exemple :

MAJBAse.exe Courrier1.sql basename=localhost:C:\OrcadiaCSv2\database\courriers.gdb

 

2018 (02.01.2008)

 

Possibilité de paramétrer les paramètres d'accès à la base et le répertoire des scripts

 

Si le fichier MAJBase.ini existe dans le répertoire du programme.

DBConnect=MAJBase.ini.[base].dbconnect

UserName=MAJBase.ini.[base].user

Password=MAJBase.ini.[base].pass

 

ScriptDir=MAJBase.ini.[script].scriptdir

 

2.016 (26.06.2007)

 

Message "serveur distant ... confirmer" n'est pas afficher si BaseServer = localhost ou 127.0.0.1

 

2.015 (27.11.2006)

 

  Ajout marque STOP_IF_ERROR à mettre en commentaire avant un script. /* STOP_IF_ERROR */

  Si un erreur survient dans le sript qui suit cette marque, les scripts sont arrétés mais il n'y a pas d'exception.

 

2.014 (09/08/08)

   manquait "silent" sur MessageConfirmRadioGroup

 

2.013 (07/06/06)

   Ajout du paramètre (silent) pramstr(2).

   Si présent les messages showflashmessage ne sont pas affiché

 

2.012

   rename v2

  

2.011

   variable OldVersion supprimée

 

2.000

   -Ajout marque CONTINUE_IF_ERROR : si cette marque est présente le script suivant n'arrête pas

   le déroulement de la MAJ si il se passe mal.

   Mettre de préférence /*  CONTINUE_IF_ERROR */

   Exemple :

    /*  CONTINUE_IF_ERROR */

    CREATE PROCEDURE R_BILAN_ENCAISSEMENTS AS BEGIN EXIT; END ^

 

   -En mode debug on affiche la première de chaque script dans le log

 

1.203

  Si isServerIB5 (INFOSBASE.isServerIB5 = 1) alors "TimeStamp" est remplacé  par "date" dans les scripts

 

 

1.202   //Inutile et à virer plus tard  (Voir version 1.203)

 

    : {Version du serveur Interbase

   =================================

    cIB5 = 'VERSIONIB5';

    cIB6 = 'VERSIONIB6';            

 

   {Si VERSIONIB5 apparait en commentaire dans la ligne la ligne n'est ajouté au script que si le serveur Interbase est un IB5

    Si VERSIONIB6 apparait en commentaire dans la ligne la ligne n'est ajouté au script que si le serveur Interbase n'est pas un IB5}

 

{

1.205 :

  Init IBSecurity pass + user avec OrcadiaCSv2Ini.dbaPass et dbaUser

 

1.200 :

  Version compatible IB5

  Menu "Executer un script"

 

1.135 :

  si script non dans E: aller les prendre dans C:

  Controle de la version de la base par rapport à la version des scripts avant execution.

 

 

1.134

      : ShowFlashMessage au lieu de Showmessage

 

1.133 :

  - Message de confirmation sur serveur distant modifié

 

1.132 :

  - Modif message confirmation MAJ base serveur en réseau

 

1.131 :

  - Possibilité MAJ base serveur en réseau

 

1.125 :

  - Implementation Script..sql2

 

1.126 :

  - Si exception arrêt immédiat

  - Correction "choix base"

 

1.127 (20/06/2003):

  - Copie de la base sous  "/DataBase/save/VersionBase.data.gdb" avant MAJ (dans FormCreate)

    ex :  "/DataBase/save/V65.data.gdb"

 

1.128

  - Lance fichier ".sql2" passé en paramètres de ligne de commande

    (ex : MAJBase.exe generator.sql2)

 

1.129

  - Ne convertit pas les scripts en Uppercase

 

1.130

 - les fichiers de sauvegarde et de Copytemporaire sont copier dans des sous répertoire

   de la base

 

 

 

Utilisation du programme MAJBase.exe

------------------------------------

 

*Le programme de mise à jour de la base, execute tous les fichiers qui se trouvent

dans le répertoire script et dont la version est supérieure à la version courante de la base.