Suppression d'un saut à la ligne généré automatiquement par SQL Server

Signaler
Messages postés
40
Date d'inscription
samedi 2 juillet 2005
Statut
Membre
Dernière intervention
17 août 2006
-
Messages postés
40
Date d'inscription
samedi 2 juillet 2005
Statut
Membre
Dernière intervention
17 août 2006
-
Bonjour à tous,



Je bosse actuellement sur SQL Server 2000, à qui je fais générer un
fichier XML m'indiquant les données renvoyées. Le problème est que cet
@$#!§ de programme me fait un saut de ligne tous les 2033 caractères,
ce qui m'enuie beaucoup vu le nombre d'entrées de la base
(potentiellement + de 1 million...). Je me vois pas trop le faire à la
main à chaque fois! En outre, je voudrais bien aussi pouvoir inclure
les entête et pied de page caractéristiques au XML, et bien sur non
gérés par SQL Server.



Bon, tout ça c'est bien joli, mais je suis un complet noob en VB (que
l'on m'a conseillé pour résoudre ce problème) et j'ai pas la moindre
idée quand à la difficulté du truc, ni la manière de le faire.
Quelqu'un peut-il me donner quelques pistes svp, histoire que ça me
prenne pas 15 jours?



Merci d'avance,


Djizeus

5 réponses

Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
23 août 2018
19
Salut,


Je voudrais bien t'aider, mais je ne sais comment tu procèdes ...

Est-ce bien à chaque 2033 caractères ?


Je ne sais pas si c'est possible dans ton cas, mais tu pourrais faire
un Replace(...) des caractères de sauts de ligne en les remplaçant par
un caractère vide au fur et à mesure que tu crées ton XML

MPi
Messages postés
40
Date d'inscription
samedi 2 juillet 2005
Statut
Membre
Dernière intervention
17 août 2006

Salut,


Donc oui, c'est bien tous les 2033 caractères exactement. Sais-tu si
y'a des docs qui permettent de développer ce dont tu me parles, genre
tuto? C'est pas par fainéantise, hein, c'est juste que j'y connais rien
de rien! En tout cas merci de la piste, je vais la suivre de ce pas


Djizeus
Messages postés
40
Date d'inscription
samedi 2 juillet 2005
Statut
Membre
Dernière intervention
17 août 2006

Bon ben j'ai trouvé des infos sur Replace, et j'ai a peu près compris
comment ça marchait. En plus, il existe des sources sur ce site super
bien faites (merci les gars ) pour
simplifier au maximum cet apprentissage express. Cependant, un problème
demeure: replace est suuuper pratique qd tu veux virer un élément de
texte, en tant que chaine de caractère, mais comment faire la même
chose avec un saut de ligne? Autrement dit, y'a t'il un code (genre
ANSI) pour représenter le saut de ligne, et sinon y'a pas un moyen de
faire autrement qu'avec un replace?


Merci encore...
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
23 août 2018
19
Salut,

Un saut de ligne est en général un groupement de 2 caractères.

Chr(13) ou vbCr - retour de chariot

Chr(10) ou vbLf - saut de ligne


Il te reste à faire des tests pour définir exactement le ou les types
de caractères qui causent ce saut de ligne dans ton appli. Peut-être
est-ce un autre caractère mal interprété (?)


MaChaine = Replace(MaChaine, Chr(13), "")

MaChaine = Replace(MaChaine, Chr(10), "")
ou si tu as vraiment les 2 caractères

MaChaine = Replace(MaChaine, vbCrLf, "")


Ensuite tu traîtes la chaîne comme tu faisais

MPi
Messages postés
40
Date d'inscription
samedi 2 juillet 2005
Statut
Membre
Dernière intervention
17 août 2006

Okay franchement merci, je vais essayer ça tout de suite.

Pour info, les sauts de ligne sont dus à SQL Server 2000 qui fait un
classement des données par colonne. Du coup, il contraint les données à
se découper selon une largeur prédéfinie... 2033 caractères...


Je te tiendrais au courant,

Merci du couseil