Med risk för lite dubbelpost.. men frågan är annorlunda.
Jag har denna funktion som "loopar" ut fakta ur en db.
Jag vill kombinera den med en liknande sats som hämtar fg. års siffror och sen sätta in dom i en htmltabell.
Mitt problem ligger i hur gör jag för att matcha veckorna?
Om jag har valt v 1-10 år -99 och samma period fg år kommer inte raderna att matcha OM det saknas data fg år, jag önskar få in ett tomrum i så fall. Hur göra?
Detta hämtar ett års siffror:
<%
Set cADO = Server.Createobject("ADODB.Connection")
Set rADO = Server.Createobject("ADODB.Recordset")
sDSN = "databasXL"
cADO.Open sDSN
sSQL = "select Mid(VECKA, 6,2), SUM(BELOPP) from kundtabell where VECKA >= '1999-01' and VECKA <= '1999-15' and kundtabell.KNDNR = '100' Group by VECKA"
Set rADO = cADO.Execute(sSQL)
If Not rADO.EOF Then
myArray = rADO.GetRows()
End If
%>
Här hämtar jag fg års siffror: (hur smart det nu är att göra på detta sätt?)
<%
sSQL = "select Mid(VECKA, 6,2), SUM(BELOPP) from kundtabell where VECKA >= '1998-01' and VECKA <= '1998-15' and kundtabell.KNDNR = '100' Group by VECKA"
Set rADO = cADO.Execute(sSQL)
If Not rADO.EOF Then
myArray2 = rADO.GetRows()
End If
%>
Här skrivs det hela ut, det är här det inte fungerar:
<table border = "1">
<tr><td> Veckonr: </td><td> Belopp i år</td><td> Veckonr fg år: </td><td> Belopp fg år</td></tr>
<% For i = 0 To Ubound(myArray,2) %>
<td> <% response.write myArray(0,i)%>
</td><td><% response.write myArray(1,i)%>
</td><td><% response.write myArray2(0,i)%>
</td><td><% response.write myArray2(1,i)%>
</td></tr>
<% next
cADO.Close %>
<% [b]if isArray(myArray) then[/b]
For i = 0 To Ubound(myArray,2) %>
<td> <% response.write myArray(0,i)%>
</td><td><% response.write myArray(1,i)%>
</td><td><% response.write myArray2(0,i)%>
</td><td><% response.write myArray2(1,i)%>
</td></tr>
<% next
[b]else
' skriv ut tomt i stället
end if[/b]
------------------
<A HREF="http://cartman.nu" TARGET=_blank>
can i borrow your goat?
</A>
Hm, jag får inte det att fungera, om "myArray" är tom skriver den inget.
Men jag vill ha ut det som finns i myArray, och om jag då får ut tex v 1,2,3,4,5,6
Vill jag på samma rad i htmltabellen få ut föregående års v 1,2,3,4,5,6.
Saknas då tex v 1-2 fg år vill jag att det inte ska skrivas något i den cellen -alltså skall årets värde stå, men är det tomt idatabasen på fg år skall den sas hoppa över - skriva inget i motsvarande cell.
Nu blir det ju som så att myArray2 töms på sitt innehåll från början till slut och tar datan i arrayen slut får jag ett felmedelande:
Körningsfel i Microsoft VBScript fel '800a000d'
Inkompatibla typer: 'myArray2'
/databas/testpilot_fg.asp, rad 36 '
(Rad 36 är där myArray2 skrivs ut.)
Finns det något sätt att jämföra värdena på? Så att den kollar att veckonumren matchar?
(Snacka om att ha tagit sig vatten över huvudet..)
[r]stavfel mm[/r]
------------------
/solbulle
[Redigerat av solbulle den 07 jul 2001]
256 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2