[Issue][Base] Import CSV incorrect sous Firebird

Discussions et questions sur tout ce qui concerne la programmation tous langages et tous modules confondus.

Modérateur: Vilains modOOs

Règles du forum
:alerte: Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !

[Issue][Base] Import CSV incorrect sous Firebird

Messagepar Ernest » 29 Août 2019 20:52

Bonjour,
Suivant le lien ci joint:https://forum.openoffice.org/fr/forum/v%20...%20+import%2A, j' ai modifié la macro afin de l' adapter à mon besoin. J' ai du commettre une erreur quelque part car je me retrouve avec l' erreur suivante;
La requête ne peut pas être executée. Elle ne contient pas de table valide
Macro modifiée;
Code : Tout sélectionner   AgrandirRéduire
Dim maConnexion as Object, oConnexion as Object, oForm As Object

Sub AjoutDonnees
   Dim DrvMan As Object, maRequete as Object
   Dim cheminCSV As String, URLbdcsv As String, instrSQL as String
   Dim Infos(3) As New com.sun.star.beans.PropertyValue

   ThisDatabaseDocument.CurrentController.connect("","")
   maConnexion = ThisDatabasedocument.CurrentController.ActiveConnection
   DrvMan = CreateUnoService("com.sun.star.sdbc.DriverManager")
   cheminCSV = "/home/elfouste/Documents/Python/Svg_Csv/DnExif.csv"
   URLbdcsv = "sdbc:flat:" & cheminCSV
   Infos(0).Name = "HeaderLine"
   Infos(0).Value = True
   Infos(1).Name = "FieldDelimiter"
   Infos(1).Value = chr(44)
   Infos(2).Name = "StringDelimiter"
   Infos(2).Value = ","
   Infos(3).Name = "Extension"
   Infos(3).Value = "csv"
   oConnexion = DrvMan.getConnectionWithInfo(URLbdcsv, Infos())
   instrSQL = "DELETE FROM ""Tp_Pht"""
   maRequete = maConnexion.createStatement()
   maRequete.executeUpdate(instrSQL)
   oForm = thisComponent
   GererBarresOutils("f_mise_a_jour")
     CopierDonnees
End Sub
'========================================================================================================
Sub CopierDonnees
   On Error GoTo CopierDonnees_Err
   Dim unRowSet as Object, maRequete as Object, resuQuery as Object, maRequete2 as object, Resultat as Object
   Dim Fenetre as Object, FenetreForm as Object, avance as Object
   Dim instrSQL as String, instrSQL2 as String, i as Integer, dteNaiss as Date, Compte as Integer, x as Integer
   Fenetre = ThisDatabaseDocument.CurrentController.Frame.ContainerWindow
   FenetreForm = oForm.currentcontroller.Frame.ContainerWindow
   Fenetre.Enable = False
   FenetreForm.Enable = False
   avance = oForm.CurrentController.StatusIndicator
   unRowSet = createUnoService("com.sun.star.sdb.RowSet")
   instrSQL = "SELECT * FROM ""Tp_Pht"" ORDER BY ""Cf_Pht"""
   instrSQL2 = "SELECT COUNT(*) as ""nb"" FROM ""Tp_Pht"""
   maRequete = oConnexion.createStatement()
   maRequete2 = oConnexion.createStatement()
   Resultat = maRequete2.executeQuery(instrSQL2)
   Resultat.Next
   With unRowSet
      .ActiveConnection = maConnexion
      .CommandType = com.sun.star.sdb.CommandType.TABLE
      .Command = "Tp_Pht"
      .Execute
      x = 1
      avance.start("Veuillez patienter ...", Compte)
      Do While resuQuery.Next
         .moveToInsertRow
         For i = 1 to 10
            Select Case .Columns.getByIndex(i -1).TypeName
               Case "INTEGER"
                  .Columns.getByIndex(i -1).updateInt(resuQuery.getInt(i))
            '   Case "VARCHAR"
            '      .Columns.getByIndex(i -1).updateString(resuQuery.getString(i))
            '   Case "NUMERIC"
            '      .Columns.getByIndex(i -1).updateInt(resuQuery.getInt(i))               
            End Select
               If i = 1 Then
                  .insertRow
                  Else
                     .UpdateRow
               End If   
         Next i
         avance.Value = x
         avance.Text = "Ligne " & x & " recopiée"
         x = x + 1               
      Loop
        avance.Text = "Terminé " & Compte & " lignes recopiées"
   End With
   oConnexion.Dispose
   unRowSet.Dispose
   Wait 800
   avance.End
   FenetreForm.Enable = True
   Fenetre.Enable = True
   'ThisDatabaseDocument.FormDocuments.getByName("f_mise_a_jour").Close   
   CopierDonnees_Exit:   
      On Error GoTo 0
         Exit Sub
   CopierDonnees_Err:
   MsgBox(Error, 16)
   FenetreForm.Enable = True
   Fenetre.Enable = True
   oConnexion.Dispose
   unRowSet.Dispose
   Resume CopierDonnees_Exit     
End Sub

L' erreur se produit tout le temps sur la même ligne;
Code : Tout sélectionner   AgrandirRéduire
Resultat = maRequete2.executeQuery(instrSQL2)

Au bout de trois tentatives pour joindre la base (et pourtant elle était vide), je ne peux que vous transmettre la structure de la table:
1; Cf_Pht Integer et clé primaire
2; ChmPht Texte varchar
3: NmPht Texte varchar

Et pour finir, le fichier.csv;
Code : Tout sélectionner   AgrandirRéduire
['Cf_Pht', 'ChmPht', 'NmPht', 'XtnPht']
[1, '/elfouste/El_Casot/Yvon/Phototeque1/A_Trier/Noel', 'DSCF0068']


Avez-vous une idée du problème sachant que la base est sur Firebird?

Cordialement
Dernière édition par micmac le 04 Sep 2019 20:52, édité 2 fois.
Raison: Ajout de l'icône flamme
Xubuntu 18.04 en dual boot avec Win10
Libre Office 6.4.2
Avatar de l’utilisateur
Ernest
Membre OOrganisé
Membre OOrganisé
 
Message(s) : 85
Inscrit le : 26 Fév 2019 15:56

Re: [Base]-Importer fichier.csv dans une table

Messagepar Dude » 30 Août 2019 08:30

Salut,

Le lien que tu donnes ne fonctionne pas.

Ernest a écrit:Avez-vous une idée du problème sachant que la base est sur Firebird?

Si tu parcours un minimum ce forum, tu verras que ce SGBD n'est pas recommandé pour l'instant.
Commence par faire le test avec le format natif commun HSQL.
Si l'erreur est toujours présente, joins le fichier ODB qu'on puisse le tester.
Avatar de l’utilisateur
Dude
Grand Maître de l'OOffice
Grand Maître de l'OOffice
 
Message(s) : 21411
Inscrit le : 03 Mars 2006 08:45
Localisation : 127.0.0.1

Re: [Base]-Importer fichier.csv dans une table

Messagepar Ernest » 30 Août 2019 11:00

Bonjour,

Tout d' abord, voici le nouveau lien:
https://forum.openoffice.org/fr/forum/viewtopic.php?p=277809
En espérant qu' il fonctionne
Pour ce qui est de Firebird, j' y avais pensé et le résultat est identique avec HSQL.

Cordialement
Xubuntu 18.04 en dual boot avec Win10
Libre Office 6.4.2
Avatar de l’utilisateur
Ernest
Membre OOrganisé
Membre OOrganisé
 
Message(s) : 85
Inscrit le : 26 Fév 2019 15:56

Re: [Base]-Importer fichier.csv dans une table

Messagepar Dude » 30 Août 2019 11:25

Ernest a écrit: et le résultat est identique avec HSQL.

Bis repetitae :
Dude a écrit:Si l'erreur est toujours présente, joins le fichier ODB qu'on puisse le tester.
Avatar de l’utilisateur
Dude
Grand Maître de l'OOffice
Grand Maître de l'OOffice
 
Message(s) : 21411
Inscrit le : 03 Mars 2006 08:45
Localisation : 127.0.0.1

Re: [Base]-Importer fichier.csv dans une table

Messagepar Ernest » 30 Août 2019 12:48

Comme je l' ai déja précisé ci-dessus, même compressé à 37.3 MO, votre serveur refuse le fichier. A part d' une autre solution, je ne vois pas comment faire.
Xubuntu 18.04 en dual boot avec Win10
Libre Office 6.4.2
Avatar de l’utilisateur
Ernest
Membre OOrganisé
Membre OOrganisé
 
Message(s) : 85
Inscrit le : 26 Fév 2019 15:56

Re: [Base]-Importer fichier.csv dans une table

Messagepar Dude » 30 Août 2019 13:11

Ernest a écrit:Comme je l' ai déja précisé ci-dessus

Tu n'as rien précisé du tout...

Ernest a écrit:même compressé à 37.3 MO, votre serveur refuse le fichier.

Et tu crois que ce forum gratuit ferait comment s'il permettait l'hébergement de telles PJ ? :tesfou:
Il t'appartient de nous fabriquer un ODB exhaustif et limité à ta seule problématique.
Avatar de l’utilisateur
Dude
Grand Maître de l'OOffice
Grand Maître de l'OOffice
 
Message(s) : 21411
Inscrit le : 03 Mars 2006 08:45
Localisation : 127.0.0.1

Re: [Base]-Importer fichier.csv dans une table

Messagepar Ernest » 30 Août 2019 17:01

Bon voici une ODB
Pièces jointes
Test_Csv.odb
(13.21 Kio) Téléchargé 14 fois
Xubuntu 18.04 en dual boot avec Win10
Libre Office 6.4.2
Avatar de l’utilisateur
Ernest
Membre OOrganisé
Membre OOrganisé
 
Message(s) : 85
Inscrit le : 26 Fév 2019 15:56

Re: [Base]-Importer fichier.csv dans une table

Messagepar Dude » 30 Août 2019 17:31

Si tu veux qu'on avance sur ton problème, il faudrait que tu fasses ce qu'on te demande.

Dude a écrit:Commence par faire le test avec le format natif commun HSQL.

L'ODB que tu fournis est paramétré avec Firebird :
Capture.PNG


Et ajoute également un fichier CSV (que tu encapsuleras en ZIP puisque l'extension n'est pas autorisé).

:evil:
Avatar de l’utilisateur
Dude
Grand Maître de l'OOffice
Grand Maître de l'OOffice
 
Message(s) : 21411
Inscrit le : 03 Mars 2006 08:45
Localisation : 127.0.0.1

Re: [Base]-Importer fichier.csv dans une table

Messagepar Ernest » 30 Août 2019 21:40

Ci-joint, les fichiers demandés.
Pièces jointes
DnExif.7z
(227 octet(s)) Téléchargé 15 fois
Test_Csv_HSQL.7z
(11.28 Kio) Téléchargé 15 fois
Xubuntu 18.04 en dual boot avec Win10
Libre Office 6.4.2
Avatar de l’utilisateur
Ernest
Membre OOrganisé
Membre OOrganisé
 
Message(s) : 85
Inscrit le : 26 Fév 2019 15:56

Re: [Base]-Importer fichier.csv dans une table

Messagepar Dude » 31 Août 2019 10:35

As-tu au moins fait un test d'importation du CSV dans Calc ?
Capture.PNG

Cela ne fonctionne pas ou alors, on a n'importe quoi dans les colonnes importées.

Ton fichier ne respecte pas la normalisation de ce format.
Avatar de l’utilisateur
Dude
Grand Maître de l'OOffice
Grand Maître de l'OOffice
 
Message(s) : 21411
Inscrit le : 03 Mars 2006 08:45
Localisation : 127.0.0.1

Re: [Base]-Importer fichier.csv dans une table

Messagepar Ernest » 31 Août 2019 11:04

Bonjour,
Après le test dans Calc, pas de soucis, sa fonctionne. Par contre, je ne comprends pas votre remarque concernant le format puisque dans votre lien les exemples montre que mes données et séparateurs sont corrects.
Cordialement
Xubuntu 18.04 en dual boot avec Win10
Libre Office 6.4.2
Avatar de l’utilisateur
Ernest
Membre OOrganisé
Membre OOrganisé
 
Message(s) : 85
Inscrit le : 26 Fév 2019 15:56

Re: [Base]-Importer fichier.csv dans une table

Messagepar Dude » 31 Août 2019 16:13

Ernest a écrit:je ne comprends pas votre remarque concernant le format puisque [...] que mes données et séparateurs sont corrects

Et comment gères-tu les crochets ?
Regarde la copie écran, tu vois bien que ton 1er champ en garde trace.
Lors de l'importation, le type détecté (STRING) ne pourra pas être raccord avec celui déclaré dans la table (INTEGER).
Avatar de l’utilisateur
Dude
Grand Maître de l'OOffice
Grand Maître de l'OOffice
 
Message(s) : 21411
Inscrit le : 03 Mars 2006 08:45
Localisation : 127.0.0.1

Re: [Base]-Importer fichier.csv dans une table

Messagepar Ernest » 31 Août 2019 16:29

Comme je vous l' ai dis, l' importation dans calc c' est bien passé. J' ai fait plusieurs test;
crochets + '+ espace
' + espace
'
Dans les trois cas, l' importation fonctionne dans calc. Malgré tout et dans le but de simplifier les importations, j' ai modifié le script python à la base de ce fichier csv.
Jusqu' à maintenant, j' utilisé les listes avec des espaces entre chaque champs d' ou la formulation ['Cf_Pht', 'ChmPht', etc...].
Le programme modifié me donne le résultat suivant le fichier joint. Vous constaterez qu'il est plus épuré, je n' ai conservé que la virgule comme séparateur. Un tel fichier sera plus simple à contrôler si j' arrive à importer ces données dans une table.
Pour l' instant, sa me parait pas très bien parti.

Cordialement
Pièces jointes
DnExif_01.7z
(373 octet(s)) Téléchargé 13 fois
Xubuntu 18.04 en dual boot avec Win10
Libre Office 6.4.2
Avatar de l’utilisateur
Ernest
Membre OOrganisé
Membre OOrganisé
 
Message(s) : 85
Inscrit le : 26 Fév 2019 15:56

Re: [Base]-Importer fichier.csv dans une table

Messagepar Ernest » 01 Sep 2019 13:30

Bonjour,

J' ai réussi à progresser. Pour l' instant et suivant le code ci_dessous, j' arrive à importer un fichier.csv dans une table de base HSQL. Par contre, la ligne
Code : Tout sélectionner   AgrandirRéduire
.insertRow

provoque l' erreur suivante lorsque je veux importer ces même données dans une table de base Firebird :
Une exception c' est produite:
Type: com.sun.star.sdbc.SQL.Exception
Message: Erreur de séquence de fonction.

Code : Tout sélectionner   AgrandirRéduire
Dim maConnexion as Object, oConnexion as Object, oForm As Object

Sub AjoutDonnees
   Dim DrvMan As Object, maRequete as Object, Coding as Object
   Dim cheminCSV As String, URLbdcsv As String, instrSQL as String
   Dim Infos(3) As New com.sun.star.beans.PropertyValue
   Dim x As Long         '***
   Dim sNomFichier As String '***
   Dim lsNomFichier As Integer '***

   ThisDatabaseDocument.CurrentController.connect("","")
   maConnexion = ThisDatabasedocument.CurrentController.ActiveConnection
   DrvMan = CreateUnoService("com.sun.star.sdbc.DriverManager")
   Coding = CreateUnoService("com.sun.star.sdbc.FLATConnectionProperties")
   cheminCSV = "/home/elfouste/Documents/Python/Svg_Csv/DnExif.csv"

   ' extraction du nom de fichier sélectionné '***
   sNomFichier = cheminCSV
   lsNomFichier = len(sNomFichier)
   x = lsNomFichier
   while mid(sNomFichier,x,1) <> "/"
      x = x-1
   wend
   sNomFichier = mid(sNomFichier,x + 1,lsNomFichier-x-4)
   
   URLbdcsv = "sdbc:flat:" & cheminCSV
   Infos(0).Name = "HeaderLine"
   Infos(0).Value = True
   Infos(1).Name = "FieldDelimiter"
   Infos(1).Value = chr(44)
   Infos(2).Name = "StringDelimiter"
   Infos(2).Value = ","
   Infos(3).Name = "Extension"
   Infos(3).Value = "csv"
   
   oConnexion = DrvMan.getConnectionWithInfo(URLbdcsv, Infos())
   maRequete = maConnexion.createStatement()
   oForm = thisComponent
   instrSQL = "DELETE FROM ""Tp_Pht"""
   maRequete.executeUpdate(instrSQL)
   CopierDonnees(sNomFichier)
   
End Sub
'========================================================================================================
Sub CopierDonnees(NomFichier)

   On Error GoTo CopierDonnees_Err

   Dim unRowSet as Object, maRequete as Object, resuQuery as Object, maRequete2 as object, Resultat as Object
   Dim Fenetre as Object, FenetreForm as Object, avance as Object
   Dim instrSQL as String, instrSQL2 as String, i as Integer, dteNaiss as Date, Compte as Integer, x as Integer
   
   Fenetre = ThisDatabaseDocument.CurrentController.Frame.ContainerWindow
   FenetreForm = oForm.currentcontroller.Frame.ContainerWindow
   Fenetre.Enable = False
   FenetreForm.Enable = False
   avance = oForm.CurrentController.StatusIndicator
   unRowSet = createUnoService("com.sun.star.sdb.RowSet")
   
   instrSQL = "SELECT * FROM " & NomFichier
   instrSQL2 = "SELECT COUNT(*) as ""nb"" FROM " &  NomFichier   

   maRequete = oConnexion.createStatement()
   maRequete2 = oConnexion.createStatement()
   Resultat = maRequete2.executeQuery(instrSQL2)
   Resultat.Next
   Compte = resultat.getInt(1)
   resuQuery = maRequete.executeQuery(instrSQL)
   
   With unRowSet
      .ActiveConnection = maConnexion
      .CommandType = com.sun.star.sdb.CommandType.TABLE
      .Command = "Tp_Pht"
      .Execute
      x = 1
      avance.start("Veuillez patienter ...", Compte)
      Do While resuQuery.Next
         .moveToInsertRow
         For i = 1 to 17
            Select Case .Columns.getByIndex(i -1).TypeName
               Case "INTEGER"
                  .Columns.getByIndex(i -1).updateInt(resuQuery.getInt(i))
               Case "VARCHAR"
                  .Columns.getByIndex(i -1).updateString(resuQuery.getString(i))
               Case "NUMERIC"
                  .Columns.getByIndex(i -1).updateInt(resuQuery.getInt(i))               
            End Select
               If i = 1 Then
                  .insertRow
                  Else
                     .UpdateRow
               End If   
         Next i
         avance.Value = x
         avance.Text = "Ligne " & x & " recopiée"
         x = x + 1               
      Loop
        avance.Text = "Terminé " & Compte & " lignes recopiées"
   End With
   oConnexion.Dispose
   unRowSet.Dispose
   Wait 800
   avance.End
   FenetreForm.Enable = True
   Fenetre.Enable = True 
   CopierDonnees_Exit:   
      On Error GoTo 0
         Exit Sub
   CopierDonnees_Err:
   MsgBox(Error, 16)
   FenetreForm.Enable = True
   Fenetre.Enable = True
   oConnexion.Dispose
   unRowSet.Dispose
   Resume CopierDonnees_Exit     
End Sub

Sauriez-vous m' en dire plus?

Cordialement
Xubuntu 18.04 en dual boot avec Win10
Libre Office 6.4.2
Avatar de l’utilisateur
Ernest
Membre OOrganisé
Membre OOrganisé
 
Message(s) : 85
Inscrit le : 26 Fév 2019 15:56

Re: [Base]-Importer fichier.csv dans une table

Messagepar Dude » 01 Sep 2019 14:47

Ta table contient une clé primaire.
Il faut donc que chaque ligne du CSV puisse être insérée en respectant cela.
Avatar de l’utilisateur
Dude
Grand Maître de l'OOffice
Grand Maître de l'OOffice
 
Message(s) : 21411
Inscrit le : 03 Mars 2006 08:45
Localisation : 127.0.0.1

Re: [Base]-Importer fichier.csv dans une table

Messagepar Ernest » 01 Sep 2019 15:30

Bonjour,

Le fichier csv ne contient que deux lignes. La première ligne est la liste des noms des champs à importer et correspondent aux noms des champs de la table. Cette ligne est normalement ignorée, me semble-t-il par la macro. Le compteur ne trouve qu' une ligne à importer. Maintenant, il est évident que je n' ai aucune sertitude sur celle qui a été retenue. La deuxième contient toutes les valeurs à enregistrer dont le premier champ est un ID.
J' envisage de remplaçer la ligne
Code : Tout sélectionner   AgrandirRéduire
.insertRow
par une requête SQL Insert?

Cordialement
Xubuntu 18.04 en dual boot avec Win10
Libre Office 6.4.2
Avatar de l’utilisateur
Ernest
Membre OOrganisé
Membre OOrganisé
 
Message(s) : 85
Inscrit le : 26 Fév 2019 15:56

Re: [Base]-Importer fichier.csv dans une table

Messagepar Dude » 01 Sep 2019 15:45

Il contient 2 lignes mais le nombre de colonnes ne correspond pas à la structure de la table.
Capture.PNG


Ça commence à être fatiguant.
Avatar de l’utilisateur
Dude
Grand Maître de l'OOffice
Grand Maître de l'OOffice
 
Message(s) : 21411
Inscrit le : 03 Mars 2006 08:45
Localisation : 127.0.0.1

Re: [Base]-Importer fichier.csv dans une table

Messagepar Ernest » 01 Sep 2019 16:30

Afin de parler le même langage, je vous joint deux fichiers portant les dernières évolutions du projet.
Pièces jointes
Test_Csv_Firebird.7z
(11.83 Kio) Téléchargé 11 fois
DnExif_01.7z
(373 octet(s)) Téléchargé 13 fois
Xubuntu 18.04 en dual boot avec Win10
Libre Office 6.4.2
Avatar de l’utilisateur
Ernest
Membre OOrganisé
Membre OOrganisé
 
Message(s) : 85
Inscrit le : 26 Fév 2019 15:56

Re: [Base]-Importer fichier.csv dans une table

Messagepar Dude » 01 Sep 2019 18:56

Test_Csv_Firebird.7z

Et relire ma demande du 30 août.

Ernest a écrit:Afin de parler le même langage

On se demande effectivement...
Avatar de l’utilisateur
Dude
Grand Maître de l'OOffice
Grand Maître de l'OOffice
 
Message(s) : 21411
Inscrit le : 03 Mars 2006 08:45
Localisation : 127.0.0.1

Re: [Base]-Importer fichier.csv dans une table

Messagepar Ernest » 01 Sep 2019 19:20

Je confirme pour la énième fois que sous HSQL l ' importation se passe très bien. La solution simpliste consisterai à changer pour HSQL. Pourtant, j' aimerai comprendre pourquoi, sa ne fonctionne pas sous Firebird. Visiblement dans la séquence ci dessous
Code : Tout sélectionner   AgrandirRéduire
Do While resuQuery.Next
         .moveToInsertRow
         For i = 1 to 10
            Select Case .Columns.getByIndex(i -1).TypeName
               Case "INTEGER"
                  .Columns.getByIndex(i -1).updateInt(resuQuery.getInt(i))
               Case "VARCHAR"
                  .Columns.getByIndex(i -1).updateString(resuQuery.getString(i))
               Case "NUMERIC"
                  .Columns.getByIndex(i -1).updateInt(resuQuery.getInt(i))               
            End Select

Dans HSQLB; les données collectés sont correctes. En pas à pas, la macro trouve le bon type de données et donc enregistre chacun des champs.
En Firebird le contenu de resuQuery est incohérent. Le pas à pas montre bien qu' elle n' arrive pas à trouver le type de donnée. La question est donc pourquoi ?
D' autre part, est-il possible de connaitre le résultat de la requête, cela apporterai peut-être un début de réponse.
Xubuntu 18.04 en dual boot avec Win10
Libre Office 6.4.2
Avatar de l’utilisateur
Ernest
Membre OOrganisé
Membre OOrganisé
 
Message(s) : 85
Inscrit le : 26 Fév 2019 15:56

Re: [Base]-Importer fichier.csv dans une table

Messagepar Dude » 02 Sep 2019 07:48

Résumons l'historique...
Ernest a écrit:Avez-vous une idée du problème sachant que la base est sur Firebird?
Dude a écrit:Si tu parcours un minimum ce forum, tu verras que ce SGBD n'est pas recommandé pour l'instant.
Ernest a écrit:Pour ce qui est de Firebird, j' y avais pensé et le résultat est identique avec HSQL.
Ernest a écrit:Je confirme pour la énième fois que sous HSQL l ' importation se passe très bien.
Conclusion : tu as dû trouver une énième bogue pour Firebird qu'il faut faire remonter aux développeurs.

Une fois fait, tu reviens ici en rapporter le numéro et tu modifies ton titre pour [Issue][Base] Import CSV incorrect sous Firebird
Avatar de l’utilisateur
Dude
Grand Maître de l'OOffice
Grand Maître de l'OOffice
 
Message(s) : 21411
Inscrit le : 03 Mars 2006 08:45
Localisation : 127.0.0.1

Re: [Base]-Importer fichier.csv dans une table

Messagepar Ernest » 03 Sep 2019 20:07

Bonsoir,
Comme je vous l' avais annoncé, j' ai modifié la macro par une requête INSERT INTO. La présentation n' est pas top toutefois j' ai récupéré toutes les données que j' utilise.
Toutefois, le transfert ne se fait pas et une erreur m' est renvoyé:
Message firebird_sdbc error
Dynamic SQL Error
SQL error code = -104
Unexpected end of command - line1, column 1
caused by
isc_dsql_prepare

Est-ce dû à une erreur d' écriture de la requête?
Je vous joins deux fichiers à jour.
Pour ce qui est du bogue, je ne pense pas, et croyer le bien, que je sois capable de le créer. En effet, je ne connais absolument pas l' anglais et à part de le rédiger en français je ne vois pas comment faire. C' est très regrettable car ce serait rendre service à tout le monde. Désolé.

A+
Pièces jointes
Test_Csv_Firebird.odb
(13.4 Kio) Téléchargé 11 fois
DnExif.7z
(375 octet(s)) Téléchargé 11 fois
Xubuntu 18.04 en dual boot avec Win10
Libre Office 6.4.2
Avatar de l’utilisateur
Ernest
Membre OOrganisé
Membre OOrganisé
 
Message(s) : 85
Inscrit le : 26 Fév 2019 15:56

Re: [Base]-Importer fichier.csv dans une table

Messagepar Dude » 04 Sep 2019 08:17

Ernest a écrit:je ne connais absolument pas l' anglais et à part de le rédiger en français je ne vois pas comment faire

Reverso ou G**gle fournit un service de traduction assez efficace.

Mais bon, comme je suis dans un bon jour, j'ai fait la recherche à ta place.
Le rapport 118094 montre que Firebird ne supporte pas le service com.sun.star.sdb.RowSet dans sa globalité.

A toi de jouer pour le reste...
Dude a écrit:et tu modifies ton titre pour [Issue][Base] Import CSV incorrect sous Firebird
Avatar de l’utilisateur
Dude
Grand Maître de l'OOffice
Grand Maître de l'OOffice
 
Message(s) : 21411
Inscrit le : 03 Mars 2006 08:45
Localisation : 127.0.0.1

Re: [Base]-Importer fichier.csv dans une table

Messagepar Ernest » 04 Sep 2019 20:28

Bonsoir

Merci de votre intervention. Je vais regarder le lien que vous avez indiqué et balisé cette discussion. Dommage que pour l' instant le problème ne soit pas résolu. Retourner sur HSQL, pourquoi pas mais à chaque ouverture de LO on a droit au message pour nous inciter a passer sous Firebird !

Cordialement
PS, Je vais ouvrir une nouvelle discussion car j' ai un autre soucis avec une erreur SQL 104
Xubuntu 18.04 en dual boot avec Win10
Libre Office 6.4.2
Avatar de l’utilisateur
Ernest
Membre OOrganisé
Membre OOrganisé
 
Message(s) : 85
Inscrit le : 26 Fév 2019 15:56

Re: [Base]-Importer fichier.csv dans une table

Messagepar Dude » 05 Sep 2019 10:51

Ernest a écrit:Dommage que pour l' instant le problème ne soit pas résolu.

Le dire ici n'a pas d'intérêt car aucun développeur ne vient sur ce forum.
Comme je te l'ai (déjà/encore) expliqué, le seul vecteur de communication est l'outil Bugzilla.
Il faut donc ajouter ce commentaire au rapport de bogue.
Avatar de l’utilisateur
Dude
Grand Maître de l'OOffice
Grand Maître de l'OOffice
 
Message(s) : 21411
Inscrit le : 03 Mars 2006 08:45
Localisation : 127.0.0.1


Retour vers Macros et API

Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 7 invité(s)