Bonjour,
J'ai créé un projet android avec un seul fichier de données : Fichier_Pour_Import_Export.
Mon objectif dans un premier temps est simplement de stocker une donnée récupérée par l'application dans le fichier de donnée embarqué dans la tablette Android (en effet j'ai inclut le fichier de données .db dans le .apk à la génération de l'application android).
Donc j'installe l'application qui lit un code barre, je tente d'insérer la valeur du code barre récupéré et là Message d'erreur :
Or, dans l'analyse de mon projet, mon fichier de donnée est bien bleu et typé SQLite, j'ai également une connexion SQLite native. De plus j'ai mis à l'initialisation du projet un petit HChangeConnexion("*",MaConnexion_android), et finalement pour en avoir le coeur net, je redéfinis une nouvelle connexion dans le code d'insertion des données:
"Vous avez appelé la fonction HExécuteRequête. Le fichier sdReq_InsertionDonnées est associé à une connexion de type HyperFileSQL. Seules les connexions de type SQLite sont autorisées sous android. Vous pouvez modifier la connexion associée au fichier dans l'analyse du projet ou utiliser la fonction HChangeConnexion."
..............................
..............................
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43 SI InAndroidMode()=True ALORS // Execution on the Android device or on an emulator SI fExtractResource("Projet_Android_Lecture_Code_Barre_Test.db", CompleteDir(fDataDir()) + "Projet_Android_Lecture_Code_Barre_Test.db") = Faux ALORS Error(ErrorInfo(errFullDetails)) FIN New_connection est une Connexion =Fichier_Pour_Import_Export..Connexion // Parametres de la connexion New_connection..Source = ComplèteRep(SysRepCarteStockage())+"sdcard/"+"Projet_Android_Lecture_Code_Barre_Test.db" New_connection..Provider = hAccèsNatifSQLite New_connection..User = "" New_connection..Password = "" New_connection..Server = CompleteDir(fDataDir()) + "Projet_Android_Lecture_Code_Barre_Test.db" New_connection..Database = "" New_connection..Access = hOReadWrite SI HOuvreConnexion(New_connection)= Faux ALORS Error("Impossible d'ouvrir la connexion", HErrorInfo(hErrFullDetails)) EndProgram(True) SINON Info("ouverture connexion ok") FIN SI HChangeConnection("*",New_connection) = False ALORS Error("Incapable de changer la connexion", HErrorInfo(hErrFullDetails)) EndProgram(True) SINON Info("Changement de connexion OK") FIN sTexte_de_la_requete est une chaîne sdREQ_InsertionDonnées est une Source de Données sTexte_de_la_requete="INSERT INTO Fichier_Pour_Import_Export ( DATE, Code_Barre, champ_texte ) VALUES ( "+DateSys()+",'"+cb..ValeurBrute+"','toto')" SI PAS HExécuteRequêteSQL(sdREQ_InsertionDonnées,hRequêteDéfaut,sTexte_de_la_requete) ALORS Erreur("Erreur d'initialisation de la requête"+RC+HErreurInfo()) RETOUR FIN FIN
Mais rien n'y fait.
Avez vous une explication? Ais je commis une erreur ?
Partager