[Résolu] Conversion dates HSQLDB vers FIREBIRD

Discussions sur le module de base de données Base et plus particulièrement sur le langage SQL ou sur les connexions aux SGBD tiers.
Les questions sur les macros doivent être postées dans la section dédiée en dessous.

Modérateur : Vilains modOOs

Règles du forum
Cette section est dédiée au module Base et plus particulièrement sur le langage SQL ou sur les connexions aux SGBD tiers. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
Pour accélérer les réponses, vous pouvez mettre en ligne votre base en joignant un fichier ODB : comment faire.
Répondre
plonge
Membre cOOnfirmé
Membre cOOnfirmé
Messages : 297
Inscription : 09 sept. 2010 21:06

[Résolu] Conversion dates HSQLDB vers FIREBIRD

Message par plonge »

Bonsoir à toutes et à tous,
Je prends un peu de temps pour vous livrer deux fichiers Base, concernant 1 table avec différents formats de dates.
Voici mon test :
Le 1er fichier est fait avec HSQLDB avec les formats suivants :
Champ Date1 format 31/12/1999 description JJ/MM/AAAA
Champ Date2 format 31 déc.99 description J MMM AA (noter que le point disparaît dans la description)
Champ Date3 format 31.déc.1999 description J.MMM AAAA (noter que le 2éme point disparaît dans la description)
Champ Date4 format 1999-12-31 description AAAA-MM-JJ (ceci est un format ISO 8601 (EN28601))
Les dates 1-3 et 4 sont les seuls formats préconisés ici par FIREBIRD. J'ai pris en plus le format de Date2 proche de Date3 à tout hasard.
Procédons maintenant à la conversion de la base vers Firebird en respectant la préconisation de LibreOffice. Après cette conversion, on ouvre le 2éme fichier et la table sous Firebird et là! Surprise pas une seule date ne correspond à la table HSQLDB. Voir image ci-dessous.
Je ne conseillerai que trop de convertir la base sans les tables et de les copier à part, car bizarrement les dates de HSQLDB (tous formats) continuent à fonctionner sous Firebird, mais la copie d'une table échoue lorsqu'elle est copiée avec une macro utilisant la commande "com.sun.star.sdb.application.CopyTableWizard.create()".
Noter que les heures minutes secondes subissent les mêmes problèmes que les dates.
Que faut-il penser de ce type de conversion, j'aimerais votre avis, et voyez vous une solution simple et fiable de transfert de tables existantes contenant divers formats de dates et d'heures HSQLDB vers Firebird.
Cordialement
plonge
Pièces jointes
Date-HSQLDB.odb
(3.97 Kio) Téléchargé 196 fois
Date-conversion-vers-Firebird.odb
(6.12 Kio) Téléchargé 158 fois
Dates.jpg
Dernière modification par plonge le 10 sept. 2019 20:07, modifié 1 fois.
LO version 7.4.5.1 sous windows 10 et 11 standard, java 1.8.0_341
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 16955
Inscription : 03 mars 2006 17:02
Localisation : Venise verte

Re: Conversion dates HSQLDB vers FIREBIRD

Message par jeanmimi »

Bonjour,
Je fais le même constat, sans utiliser de Macro, si je fais la conversion de la Table en Firebird à l'ouverture de la boite de dialogue : j'ai bien un décalage de 1 jour sur les données saisies.
Pièces jointes
Table_Dates_HSQLDB.png
Table convertie en Firebird
Table convertie en Firebird
Table_Dates_Firebird.png (24.2 Kio) Consulté 2636 fois
LibreOffice : Version : 24.2.1 (x64)(14 mars 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
plonge
Membre cOOnfirmé
Membre cOOnfirmé
Messages : 297
Inscription : 09 sept. 2010 21:06

Re: Conversion dates HSQLDB vers FIREBIRD

Message par plonge »

Bonjour jeanmimi,
Merci de me confirmer l'anomalie, j'ai convertie une grosse base de donnée avec environ 4000 lignes de macro et les dates/heures qui ne fonctionne pas sont un détail comparés aux macros lorsqu'il faut reprendre et adapter les requêtes et dans les macros les nulls, les rows, concat, select etc.… En clair il faut vérifier chaque module, une vrai partie de plaisir. :lol:
Peut être que la version 4 de Firebird sera plus adapté! Elle est déjà disponible en test ici.
LO version 7.4.5.1 sous windows 10 et 11 standard, java 1.8.0_341
Piaf
GourOOu
GourOOu
Messages : 5622
Inscription : 25 nov. 2011 19:07
Localisation : Guyane

Re: Conversion dates HSQLDB vers FIREBIRD

Message par Piaf »

Bonjour
Je ne reproduis pas sous Linux
table HSQL
table HSQL
Conversion Cliquer pour l'animation
Conversion Cliquer pour l'animation
A+
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
plonge
Membre cOOnfirmé
Membre cOOnfirmé
Messages : 297
Inscription : 09 sept. 2010 21:06

Re: Conversion dates HSQLDB vers FIREBIRD

Message par plonge »

Bonsoir Piaf,
Effectivement, le problème viendrait il du couple LO/Windows ?
A creuser.
LO version 7.4.5.1 sous windows 10 et 11 standard, java 1.8.0_341
jdhogue
Membre lOOyal
Membre lOOyal
Messages : 43
Inscription : 03 janv. 2008 11:30

Re: Conversion dates HSQLDB vers FIREBIRD

Message par jdhogue »

Bonjour,

Non, ce n'est pas un problème spécifique à Windows. J'ai eu le même problème de décalage d'un jour et je suis sous LMDE3.
LibreOffice 6.3.5 sous LMDE 4
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 16955
Inscription : 03 mars 2006 17:02
Localisation : Venise verte

Re: Conversion dates HSQLDB vers FIREBIRD

Message par jeanmimi »

Le tutoriel en ligne reprend l'anomalie en l'expliquant avec les heures d'été et les heures d'hiver.
https://wiki.documentfoundation.org/Doc ... FromHSQLDB
LibreOffice : Version : 24.2.1 (x64)(14 mars 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Avatar de l’utilisateur
jf.l
Membre enthOOusiaste
Membre enthOOusiaste
Messages : 474
Inscription : 18 mai 2010 20:49

Re: Conversion dates HSQLDB vers FIREBIRD

Message par jf.l »

Bonjour plonge
Il est possible que ce soit lié au choix de la date de départ, puisqu'une date est définie par le nombre de tic-tacs depuis un point zéro arbitraire. Changer de date de départ décale tous les champs date en conséquence.
date.png
Je sais que c'est un réglage Calc et qu'on parle de Base, mais comme la différence est d'une journée tout rond... Et le format starcalc est si obsolète que le cas n'a peut-être pas été envisagé.
Cordialement,
JF
Linux Mint 21.1 x64 + LibO 7.3.1 / LibO 7.1.1 + W10 x64
plonge
Membre cOOnfirmé
Membre cOOnfirmé
Messages : 297
Inscription : 09 sept. 2010 21:06

Re: Conversion dates HSQLDB vers FIREBIRD

Message par plonge »

Bonsoir,

jeanmimi
Merci pour le lien , je ne l'avais pas vu. Il fallait le trouver ce bogue H d'été/d'hiver :lol: Pas vraiment pratique s'il faut convertir toutes ces dates en texte et les repasser en dates pour faire des calcul dessus! Ou bien travailler avec base 6 mois sur 12 :lol:
Décidemment je ne suis vraiment pas pressé de migrer tout sous firebird. Mes derniers essais ne sont toujours pas satisfaisants.

jf.l
Pourquoi pense tu que les dates de Calc peuvent avoir une influence sur le sgdb HSQLDB de base :?: Je vois pas!

Cordialement
LO version 7.4.5.1 sous windows 10 et 11 standard, java 1.8.0_341
Avatar de l’utilisateur
jf.l
Membre enthOOusiaste
Membre enthOOusiaste
Messages : 474
Inscription : 18 mai 2010 20:49

Re: Conversion dates HSQLDB vers FIREBIRD

Message par jf.l »

Bonjour plonge
J'ai cru lire que *toutes* les dates importées étaient décalées.
J'ai encore le souvenir d'interventions sur des fichiers calc dont les dates ne sont plus exactes quand le fichier est ouvert sur un autre poste.
Le décalage heure d'été/d'hiver explique mal les changements de date, sauf autour de minuit (je sais, c'est trois heures du matin en France donc...).
Cordialement,
JF
Linux Mint 21.1 x64 + LibO 7.3.1 / LibO 7.1.1 + W10 x64
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 16955
Inscription : 03 mars 2006 17:02
Localisation : Venise verte

Re: Conversion dates HSQLDB vers FIREBIRD

Message par jeanmimi »

plonge a écrit :Mes derniers essais ne sont toujours pas satisfaisants.
Chaque nouvelle version de LO, et au fur et à mesure qu'ils sont signalés par les migrants, corrige les bogues :
https://bugs.documentfoundation.org/bug ... ordssubstr
LibreOffice : Version : 24.2.1 (x64)(14 mars 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
plonge
Membre cOOnfirmé
Membre cOOnfirmé
Messages : 297
Inscription : 09 sept. 2010 21:06

Conversion dates HSQLDB vers FIREBIRD

Message par plonge »

Bonsoir,

jf.l
Mes dates ne sont pas importé de Calc, mais créées dans Base. Donc je ne vois toujours pas l'influence de Calc :!:

jeanmimi
C'est bien pour cela que j'attend les nouvelles versions :lol: Je charge en ce moment LO 626, je vais refaire un essai.

Cordialement

Ajout les derniers tests effectués n'étant toujours pas satisfaisants, je clos ce fil et en ouvrirais un si autre si nécessaire
LO version 7.4.5.1 sous windows 10 et 11 standard, java 1.8.0_341
Répondre