Question

J'ai écrit une application qui permet à un utilisateur de créer et d'exécuter une requête, puis enregistrez le rapport au dossier. Ils peuvent charger le rapport du dossier à une date ultérieure et vue sur l'écran.

J'utilise un composant TADOQuery pour exécuter la requête, et appelez SaveToFile lorsque la requête a retourné des données. J'utilise ensuite LoadFromFile pour charger le dos de données dans un TADOQuery et à partir de là, je peux lire les données dans un listview virtuel. Dans les deux cas, je spécifie « pfXML » comme paramètre de format.

Un utilisateur a signalé un problème dans lequel l'un des domaines dans le rapport affiche des déchets au lieu de texte lisible. Après enquête, la définition du champ dans leur document XML pour ce domaine particulier est spécifié comme « dt: « bin.hex »= type ». Quand je lance la même requête sur un système ici, la définition du champ dans mon document xml est spécifié comme. « Dt: type = « string » »

Ma question est donc pourquoi est-il une différence? Les bases de données sont identiques, alors pourquoi les données enregistrées en tant que bin.hex sur le système de l'utilisateur et comme une chaîne sur tout le monde d'autre? Peut-être plus au point, comment est le type de données déterminé? Quand j'appelle SaveToFile, comment le savoir composant TADOQuery ce que le type de données est, et ce qu'il doit écrire le document XML en tant que type de données?

Est-ce que les données sont envoyées au PC au format hexadécimal, et la composante TADOQuery prend sa queue de cela, ou le fait (pour une raison quelconque) pensent que le type de données pour ce champ est hex et modifie les données en fonction de?

Je ne peux pas trouver quoi que ce soit en ligne à ce sujet et je ne peux pas travailler ce qui se passe, de sorte que toute aide serait appréciée.

Était-ce utile?

La solution 2

Il semble que cela a quelque chose à voir avec la façon dont le serveur est configuré. Nous avons seulement eu le problème sur un site client et sur une version très ancienne de OS400 (requêtes exécutées sur des bases de données DB2).

Autres conseils

Au 1er coup d'oeil, les sons comme un encodage unicode / char pour moi.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top