Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Langages serveur > ASP
ASP Forum sur la programmation ASP. Avant de poster : Cours ASP, FAQ ASP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 30/01/2007, 14h59   #1
Invité de passage
 
Inscription : novembre 2006
Messages : 62
Détails du profil
Informations forums :
Inscription : novembre 2006
Messages : 62
Points : 3
Points : 3
Par défaut Problème d'impression d'un graphique généré avec TChart (Steema)

Bonjour,

Je rencontre actuellement le problème suivant. Dans une page .asp je génère un graphique en utilisant l'activeX Tchart de la société Steema. Sur la page .html générée le graphique est bien affiché et ne comporte aucun défaut, mais lorsque j'essaie d'imprimerle résultat (en utilisant la ligne de code Javascript suivante ; window.print(); ) l'imprimante me renvoie à la plage du graphique attendu, une page blanche ou plutôt un encadré pourvu de bordures grises à la dimension du graphique avec une petite croix rouge dans sa partie supérieure gauche (signalisation habituellement utilisée pour signifier que l'image cible n'existe pas ou est inaccessible) !
De même, lorsque j'effectue un aperçu avec le navigateur (IE), j'ai ce même rectangle contenant la petite croix rouge à la place dudit graphique.
J'ai développé de nombreuses autres pages utilisant ce même activeX et l'impression du graphique est restitué avec succès.

- J'ai effectué des tests avec IE6 et IE7 en vain...,
- Le fait que le graphique soit généré au format PNG, JPEG, GIF ou tout autre format supporté par l'objet ne résolu pas le problème,
- Le graphique n'existe pas physiquement mais il est généré à la volée et injecté dans la page en utilisant la méthode Response.BinaryWrite.

Quelqu'un d'entre vous aurait-il déjà rencontré ce problème ?

Merci d'avance pour vos lumières,

cordialement
sylvebarbe78 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/01/2007, 21h06   #2
Expert Confirmé Sénior

 
Avatar de Immobilis
 
Inscription : mars 2004
Messages : 5 849
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 5 849
Points : 5 965
Points : 5 965
Salut,

Pas d'idées. As-tu un bout de code?

A+
Immobilis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/02/2007, 11h17   #3
Invité de passage
 
Inscription : novembre 2006
Messages : 62
Détails du profil
Informations forums :
Inscription : novembre 2006
Messages : 62
Points : 3
Points : 3
Re-bonjour,

Si cela peut t'éclairer ;-)... Voici la portion de code en cause. Je re-précise que la sortie sur la page Web fonctionne parfaitement et que c'est au moment de la création de l'aperçu avant impression ou à l'impression elle-même que le graph est remplacé par la signalétique de l'image manquante.
Je rappel également pour mémoire que l'image n'existe pas physiquement mais créée à la volée (voir code source - Response.BinaryWrite).

Cordialement,





Code :
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
...

if request("CreateChart") = vbNullString then

             ...
               
              'préchargement des données et placement de ces dernières dans une variable session Session("TableauHisto")

             ...

else

             'appel de la fonction générant le graph à la volée
             Response.BinaryWrite(RunChart) 

end if



function RunChart()

Dim img
Dim Chartx
Dim HistoArray
Dim ColorSerie
Dim arrayTemp
Dim i,y

Set Chartx = Server.CreateObject("TeeChart.TChart")

with chartx
	.Height = 275
	.Width = 650
	.Legend.visible=false
end with

'récupération des données pour le graph en cours (données préchargées depuis une base de données)
'Session contenant un tableau, contenant lui-même 3 tableaux à 2 dimensions
HistoArray= Session("TableauHisto") 

with chartx

for i = lbound(HistoArray) to ubound(HistoArray)
											
	.AddSeries(0)	'Ajout d'une nouvelle série pour le graphique en cours
			
	'ajout des valeurs pour la série en cours	
	with .series(i)

		arrayTemp = HistoArray(i)	'récupération du tableau à 2 dimensions pour la série en cours
		for y = uBound(arrayTemp) to lBound(arrayTemp) Step -1

			'sélection de la couleur du graph pour la catégorie en cours
			select case i
				case 0:ColorSerie = vbred
				case 1:ColorSerie = vbblue
				case 2:ColorSerie = vbgreen
			end select

                                      'Ajout des valeurs à la série (valeur,libellé,couleur)
			.Add arrayTemp(y,1) , arrayTemp(y,0),ColorSerie

		next

	end with

next

end with

img = ChartX.Export.asPNG.SaveToStream 'génération au format PNG

set ChartX = Nothing
	
RunChart = img	

end function
%>
<body>
<img src="myGraph.asp?CreateChart=1">
</body>
</html>
sylvebarbe78 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/03/2007, 21h43   #4
Candidat au titre de Membre du Club
 
Inscription : mars 2007
Messages : 63
Détails du profil
Informations forums :
Inscription : mars 2007
Messages : 63
Points : 14
Points : 14
bonjour sylvebarbe78
j'ai besoin du code pour générer un graphe est ce que tu peut me donner le code qui permet cela et merci
je vous serait reconnaissant
jbenz est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h24.


 
 
 
 
Partenaires

Hébergement Web