Bonjour,

Dans un script VbScript, j'ai ce code qui me casse la tête


MaPage1.asp :
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
 
Dim Toto(2)
 
Set Rs = Server.CreateObject("ADODB.Recordset")
 
' 1ère récupération
Rs.open "SELECT champ1 FROM TABLE1 WHERE Cle = 1", cn, adOpenDynamic, adLockOptimistic
if (not Rs.eof) then
	Toto(0) = Rs("champ1") 
Rs.Close()
 
' 2ème récupération
Rs.open "SELECT champ2 FROM TABLE2 WHERE Cle = 1", cn, adOpenForwardOnly, adLockReadOnly
if (not Rs.eof) then
	Toto(1) = Rs("champ2")
Rs.Close()



MaPage2.asp :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
<!--#include file="MaPage1.asp" -->
 
If isnull(Toto(0)) = FALSE then
	response.write(replace(Toto(0), vbCr, "<BR>"))
end if
 
if isnull(Toto(1)) = FALSE then
	response.write(replace(Toto(1), vbCr, "<BR>"))
end if

Le problème est qu'à l'affichage dans le navigateur, la 1ère valeur (Toto(0)) est tronquée aux alentours de 1000 caractères sur des environnements et pas sur d'autres. Serait-ce donc de la faute du recorset ? Ou alors lorsque l'on rempli le champ Toto(1), il tronque une partie de Toto(0) pour qu'il puisse quant à lui rentrer ? Le code tourne sur IIS, est ce que le serveur peut limiter la taille de retour d'un champ ?


Si qqun peut m'éclairer ... merci !