[ASP/ACCESS]OWC chart met meerdere lijnen

Pagina: 1
Acties:

  • DarkShadow
  • Registratie: Juli 2000
  • Laatst online: 00:03
Hallo, ik ben nu al 2 dagen bezig met het maken van een owc chart, het lukt perfect met een lijn, heel tevreden over... Maar er moeten meerdere lijnen in komen, totaal 4. Nu heb ik al heel wat fora afgezocht en ook flink gegoogled maar het lukt me niet om het voor elkaar te krijgen, vooral omdat ik ook geen expert ben in vbscript en dus veel syntaxisfouten krijg...
Het is de bedoeling dat ik de data uit een access database haal en met via een asp webservertje kan ophalen... (dus bv. http://localhost/index.html)

Het stukje code waar het om gaat:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
'Add a Clustered Column Chart with a legend to the Chartspace
set m_cspace = server.CreateObject("OWC.Chart")
set objChart = m_cspace.Charts.Add()
set c = m_cspace.Constants
objChart.Type = c.chChartTypeLine

objChart.HasLegend = True

'set the Chartspace's data source to the Recordset and add the
'SalesPerson field for series names, the Month field for the chart's
'categories and the Sales field for the chart's values

set m_cspace.DataSource = m_rs
objChart.SetData c.chDimSeriesNames, 0, "debilt_hirlam"
objChart.SetData c.chDimCategories, 0, m_station & "_hirlam.fictievedatum"
objChart.SetData c.chDimValues, 0, Array(m_station & "_hirlam.fictievedatum", 
m_station & "_xhirlam.fictievedatum")

Ik denk dat er iets fout gaat met die array, op de een of andere manier kan hij het er zo niet uithalen. Het resultaat is dan ook dat er geen enkele lijn wordt getekend. In de leganda wordt maar 1 reeks aangegeven...

maar misschien kan het ook wel met een for loop :):
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
'Add a Clustered Column Chart with a legend to the Chartspace
set m_cspace = server.CreateObject("OWC.Chart")
set objChart = m_cspace.Charts.Add()
set c = m_cspace.Constants
objChart.Type = c.chChartTypeLine

objChart.HasLegend = True

'set the Chartspace's data source to the Recordset and add the
'SalesPerson field for series names, the Month field for the chart's
'categories and the Sales field for the chart's values
set m_cspace.DataSource = m_rs
objChart.SetData c.chDimSeriesNames, 0, "Temperatuur"
for each objSeries in objChart.SeriesCollection
    objSeries.SetData c.chDimCategories, 0, m_station & "_hirlam.fictievedatum"
    objSeries.SetData c.chDimValues, 0, m_station & "_hirlam.t2m"

Dit laatste stukje snap ik eigenlijk zelf niet helemaal, maar ik kwam deze oplossing tegen via google (http://www.4guysfromrolla.com/webtech/022101-1.2.shtml)... werken doet het echter niet :(

Als jullie willen kan ik wel de hele code posten, maar dat doe ik maar niet in de OP.
edit: sorry voor het licht verneuken van de lay-out :)

[ Voor 27% gewijzigd door DarkShadow op 26-03-2004 14:39 ]


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 09:42

gorgi_19

Kruimeltjes zijn weer op :9

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • DarkShadow
  • Registratie: Juli 2000
  • Laatst online: 00:03
leukleuk :{ Ik heb die post gelezen,
ten eerste heb ik geen lap tekst van 100 regels geplaatst
ten tweede is dit geen debug probleempje maar gewoon het ontbreken van een goede oplossing
ten derde zou je er achter komen dat als je dit in google intiept het probleem heel wat complexer blijkt te zijn, en er niet echt goede oplossingen worden geboden, en dat er erg veel mensen met dit probleem zitten...

maw. Ik vraag gewoon hulp na een paar dagen intensief met dit probleem bezig te zijn geweest en veel informatie te hebben gezocht. Daar is een forum voor, aan zo'n antwoord heb ik dus helaas niets...

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 09:42

gorgi_19

Kruimeltjes zijn weer op :9

Dan moet je mijn post goed lezen. Ik heb het over het derde puntje.
Die verwijst via die keywords naar http://www.vbweb.co.uk/forums/topic-18883
Ik geef geef verwijzing naar de eerste 2 punten (debuggen en regels code).
Verder geef je aan: "Werken doet het niet". Wat doet het niet?

En ja, dat is een vb.net voorbeeld, maar via een COM-call wordt datzelfde object aangeroepen en ze lossen het op met arrays. En daar zie ik niets van in je post.

[ Voor 50% gewijzigd door gorgi_19 op 26-03-2004 14:41 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • DarkShadow
  • Registratie: Juli 2000
  • Laatst online: 00:03
gorgi_19 schreef op 26 maart 2004 @ 14:38:
Dan moet je mijn post goed lezen. Ik heb het over het derde puntje.
Die verwijst via die keywords naar http://www.vbweb.co.uk/forums/topic-18883
Ik geef geef verwijzing naar de eerste 2 punten (debuggen en regels code)

En ja, dat is een vb.net voorbeeld, maar via een COM-call wordt datzelfde object aangeroepen en ze lossen het op met arrays. En daar zie ik niets van in je post.
Natuurlijk heb ik dat stukje gezien, incl alle links...
Zie ook dat ze het opgelost hebben met arrays, ik gebruik in het eerste stukje code btw wel degelijk een array, alleen dan inline...

Heb het ook geprobeert door eerst de array te definieren, maar dat werkt ook niet...

snap trouwens niet waarom ze daar een if statement van maken

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 09:42

gorgi_19

Kruimeltjes zijn weer op :9

Kan je ook aangeven WAT het niet doet? Welke foutmeldingen krijg je? On Error Resume Next er uit gesloopt?

Welk if-statement heb je het over?

[ Voor 16% gewijzigd door gorgi_19 op 26-03-2004 14:44 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • DarkShadow
  • Registratie: Juli 2000
  • Laatst online: 00:03
Hij heeft geen foutmeldingen (dan was ik nog wel even doorgegaan)...
Hij geeft op die manier gewoon weer dat er een reeks is (in de legenda), maar hij tekent geen lijn...

Als je zou kunnen uitleggen, hoe ik dit: http://dbforums.com/arch/191/2003/9/910175 (2e post) kan vertalen naar mijn scriptje dan zou ik je zeer dankbaar zijn, vooral als het dan zou werken :)

btw. mn opmerking over dat if-statement klopt niet, foutje bij het vertalen vanuit engels, nam aan dat if gewoon bij de code hoorde, maar zie dat dat nergens op slaat, vond het al zo apart :)

[ Voor 21% gewijzigd door DarkShadow op 26-03-2004 14:47 ]


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 09:42

gorgi_19

Kruimeltjes zijn weer op :9

Ik gok iets als
ASP:
1
2
3
4
5
Dim str(4)
str(0) = "Actual"
str(1) = "Budget"
str(2) = "ActualYTD"
str(3) = "BudgetYTD"

Werkt
ASP:
1
ChartSpace.SetData(c.chDimValues, 0, str)

dan niet?

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • DarkShadow
  • Registratie: Juli 2000
  • Laatst online: 00:03
hey, ben ik weer, weekend voorbij :)

Volgens mij zit ik nu dicht bij de oplossing, maar het probleem is nog niet opgelost... Ik heb de code aangepast naar dit:

code:
1
2
3
Dim array(2)
array(0) = "debilt_hirlam.t2m"
array(1) = "debilt_xhirlam.t2m"


en dit:

code:
1
2
3
4
set m_cspace.DataSource = m_rs
objChart.SetData c.chDimSeriesNames, 0, "debilt_hirlam"
objChart.SetData c.chDimCategories, 0, "debilt_hirlam.fictievedatum"
objChart.SetData c.chDimValues, 0, array


Maar dit heeft als resultaat dat ik geen enkele lijn krijg, als ik de array echter maar 1 string lang maak, dan werkt het wel, maarja, dan heb ik nog steeds een lijn...
Als ik de code echter zoals boven heb, dan is er in de legenda ook maar 1 reeks te zien.
Heeft er iemand misschien nog suggesties?

[ Voor 5% gewijzigd door DarkShadow op 29-03-2004 09:44 ]


  • DarkShadow
  • Registratie: Juli 2000
  • Laatst online: 00:03
Ik heb het al :)
Het lag niet zozeer aan de Values, maar aan SeriesNames, je moet een kolom opgeven waarin de verschillende series worden gedefinieerd (zegmaar de primaire sleutel van je database tabel)... Maar hiervoor klopte onze query helemaal niet, dus die hebben we moeten aanpassen...

Arrays werkt overigens helemaal niet (ook niet bij SeriesNames)
Pagina: 1