Bonjour,
Dans une appli intranet, je propose en téléchargement le contenu de certaines tables avec le code suivant :
Pour certaines tables (qui n'ont rien de particulier), j'obtiens ce message d'erreur :
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
44 Dim i Dim sLine Const DEF_EXPORT_SEP = ";" Const DEF_EXPORT_VAL = """" ' Initialisation de l'entête HTTP Response.Buffer = TRUE Response.Clear Response.ContentType = "application/msexel" Response.addHeader "content-disposition","attachment;filename=Donnees.xls" set m_RS = Server.CreateObject("ADODB.Recordset") m_RS.open txtSQL, Application("DsnODBC") m_RS.MoveFirst ' Entête sLine = "" for i = 0 to m_RS.Fields.count - 1 sLine = sLine & DEF_EXPORT_VAL & m_RS.Fields(i).Name & DEF_EXPORT_VAL & DEF_EXPORT_SEP next if sLine <> "" then sLine = Left(sLine, Len(sLine)-1) Response.Write sLine & vbCrLf end if ' Données Do while not m_RS.EOF sLine = "" for i = 0 to m_RS.Fields.count - 1 Valeur = Replace(m_RS.Fields(i).Value, vbcrlf, " ") Valeur = Replace(m_RS.Fields(i).Value, "'", "''") sLine = sLine & DEF_EXPORT_VAL & Valeur & DEF_EXPORT_VAL & DEF_EXPORT_SEP next if sLine <> "" then sLine = Left(sLine, Len(sLine)-1) Response.Write sLine & vbCrLf end if m_RS.MoveNext Loop m_RS.Close set m_RS = Nothing Response.End
Selon le site de Microsoft, la cause est :Internet Explorer ne peut télécharger....
Ce problème est-il contournable SVP ?Cause
Ce problème se produit car l'en-tête de disposition de contenu (content-disposition) pour le flux de fichier est supérieur à 150 octets environ et le jeu de caractères latin est de 150 caractères. Il peut se produire si l'en-tête de disposition de contenu est mis en forme avec un jeu de caractères autre que le latin, comme le japonais ou le russe.
Merci
Partager