webForumDet fria alternativet

Overflow?

7 svar · 227 visningar · startad av PatrikB

PatrikBMedlem sedan mars 20002 836 inlägg
#1

Hello!

Har fått problem med denna SQL :

strSQL = "SELECT Count(*) As AvvTotal, fldArtikelnr, " & _
	"(Sum(fldTim1 + fldTim2 + fldTim3 + fldTim4 + fldTim5)* " & constKostPerTim & ") As ArbKost, " & _
	"Sum((fldStdPris/fldPrisPer)*fldKasserade) As MaterialKost, " & _
	"(Sum(fldOredovisadTid)*300) As AdmKost " & _
	"FROM tblAvvikelse "

	Select Case strFelTyp
		Case "artnr"
			strSQL = strSQL & "WHERE fldFelkod = '" & strFelTyp & "' AND " & _
				"(fldAvvDatum >= #" & sDate & "# AND fldAvvDatum <= #" & eDate & "#) GROUP BY fldArtikelNr ORDER BY Count(*) DESC"

		Case "felkod"
			strSQL = strSQL & "WHERE fldFelkod = '" & strFelTyp & "' AND " & _
				"(fldAvvDatum >= #" & sDate & "# AND fldAvvDatum <= #" & eDate & "#) GROUP BY fldArtikelNr ORDER BY Count(*) DESC"

		Case Else
			strSQL = strSQL & "WHERE fldAvvDatum >= #" & sDate & "# AND " & _
				"fldAvvDatum <= #" & eDate & "# GROUP BY fldArtikelNr ORDER BY Count(*) DESC"

	End Case

'## -- exekverings kod som får overflow --

Om inget "case" är valt så får jag felmeddelande om ett overflow.
Om jag väljer ett "case", vilket som helst av dem, så får jag inget fel, frågan går igenom klockrent med summeringar/uträkningar perfekt.

MEN!
tar jag bort denna rad:


	"Sum((fldStdPris/fldPrisPer)*fldKasserade) As MaterialKost, " & _

så går den igenom alla "casen" ... även "case else".
Räknar summeringar i sql-frågor med integers? dvs max 32k? eller är min fråga felställd?
Jag vet med säkerhet att fldStdPris, fldPrisPer och fldKasserade har värden. fldPrisPer har default värde 1 fldStdPris har oxå default värde 1, fldKasserade default värde 0

ALLA dessa fält har värden.

Please! ... some help ... before I GO CRAZYYY!

Fråga inte varför det är Access ... eller om struktur ... inte mitt "barn" från början :-(

cya,
/PatrikB

Engine^Medlem sedan dec. 20003 887 inlägg
#2

Låter konstigt att det inte fungerar... om du inte redan gjort det, så testa slänga paranteser runt den rad som "orsakar" problemet.

PatrikBMedlem sedan mars 20002 836 inlägg
#3

he, he ... har jag redan provat .... blir Overflow (Spill) ändå ...

Verkar som att det ändå är ngt värde som inte är som det ska vara......inte direkt lätt att kolla efter då tabellen innehåller i runda slängar 40 000 poster

hmm, får väl "fixa en workaround" .... men känns inte direkt rätt

thx,
PatrikB

Engine^Medlem sedan dec. 20003 887 inlägg
#4

Du kanske ska kolla så att inte fldPriserPer är 0 någonstans. Det kan nog orsaka Overflow ;)

PatrikBMedlem sedan mars 20002 836 inlägg
#5

visst var det så .... eller, det var inte noll ... det var en post av 40 000 som hade ett null-värde......hu nu fasen det har kommit in.....

Blir till att gå igenom rutinerna när en avvikelse rapporteras.

cya,
PatrikB

Engine^Medlem sedan dec. 20003 887 inlägg
#6

Divisioner... farliga saker det.

PatrikBMedlem sedan mars 20002 836 inlägg
#7

mmmm, speciellt om man själv inte har utvecklat applikationen (vb-client app från början) själv .... utan fått tagit över för att utveckla den mot webben ... BAH!!!! mardröm då det inte finns ngt dokumenterat

Thx för hjälpen

cya,
PatrikB

Engine^Medlem sedan dec. 20003 887 inlägg
#8

Varsågod.

Ingen dokumentation... lider med dig ;)

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