webForumDet fria alternativet

Exception occurred

2 svar · 282 visningar · startad av annesophie

annesophieMedlem sedan juni 20012 236 inlägg
#1

Hej,

Behöver er hjälp med ett felmeddelande. Jag tror jag vet varför det uppstår men är osäker på hur jag ska komma runt det.

Följande sker:

Jag har ett antal orderrader, dom ordnas efter row nummer. Dessa orderrader loopas upp under varandra. Ibland är en, eller flera, orderrad/er dellevererad/e. Om så är fallet loopas informationen om delleveransen under den orderrrad som dom hör till.

Det hela funkar ypperligt så länge det inte bara finns en orderrad i ordern och den raden också råkar vara dellevererad.

Då får jag följande:

error '80020009'
Exception occurred.

/order/showOrpNY.asp, line 580

Rad 580:

do until OrdRadNr<>objRst("OrdRadNr")

Detta är är alltså loopen som loopar dellevererad information för specifika rader inne i den stora loopen.

<%
dim ordRadNr
'--- OrdRadNr = radnummer pa orderraderna
OrdRadNr= objRst("OrdRadNr")
	
objRst.movenext
[red]do until OrdRadNr<>objRst("OrdRadNr")[/red]
%>

Loopens innehåll

<%
objRst.movenext
loop
objRst.moveprevious			
%>

Jag är som sagt inte hel säker på varför den säger exception occurred. Jag säger ju 'gör tills radnummer inte är radnummer längre', do until OrdRadNr<>objRst("OrdRadNr"), och den tycks nu inte fatta vad den ska göra om det bara finns en rad och inget mer.

Den visar då orderraden plus informationen om delleveransen helt korrekt men sedan får jag fel.

Hmm detta blev lite luddigt. Men om någon kan ge mig ett tips på vad jag behöver lägga till/ändra/ta bort så är jag evigt tacksam!

/A

OveRRidEMedlem sedan feb. 200112 078 inlägg
#2

Metoden Movenext borde inte användas innan en do until..

Byt ut den första .movenext mot .movefirst istället, så funkar det nog bättre. ;) Jag vet inte ifall det löser hela ditt problem, men det kan vara en av sakerna som är fel.

LarsGMedlem sedan dec. 200012 464 inlägg
#3

Varför behövs den inre loopen alls? Det borde gå att styra med if och någon flagga och då slipper du moveprevious också.

Om du vill ha en inre loop så måste du hantera EOF i den loopen också.

137 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)