Laufende Summe im Formular

09/06/2009 - 10:28 von Martin Köster | Report spam
Hallo,

ich hoffe Ihr könnt mir helfen.

Das leidige Thema laufende Summen in Formularen verfolgt mich seit einiger
Zeit.
Ich habe ein View auf dem SQL Server die sich mit großen Datenmengen
auseinandersetzt und
die Daten zur Verfügung stellt.

Ein Query braucht ca. 1 Sekunde. Das ist also alles vollkommen ausreichend.

Nun habe ich eine zweite View gebaut:

use DB
GO

drop view View2
Go

CREATE VIEW View2
AS
SELECT TOP 100 PERCENT AG30.*,
(SELECT SUM(AUSF_ZEIT)
FROM PSL_Arbvorr_Anarb_Kant30
WHERE LfdNr <= AG30.LfdNr) AS LfdSumme
FROM dbo.PSL_Arbvorr_Anarb_Kant30 AG30
ORDER BY LfdNr

Das funktioniert soweit auch ausreichend schnell.

Wenn ich dass nun mit dem Runtime mache dann bleibt alles stehen...

Ich nutze Access 2003 und SQL-Server 2000. Die Tabellen und Views sind via
ODBC verknüpft.

Weiss einer von Euch rat?

Schöne Grüße
Martin Köster
 

Lesen sie die antworten

#1 Peter Doering
09/06/2009 - 10:48 | Warnen spam
Hallo,

Martin Köster wrote:

Das leidige Thema laufende Summen in Formularen verfolgt mich seit einiger
Zeit.
Ich habe ein View auf dem SQL Server die sich mit großen Datenmengen
auseinandersetzt und
die Daten zur Verfügung stellt.

Ein Query braucht ca. 1 Sekunde. Das ist also alles vollkommen ausreichend.

Nun habe ich eine zweite View gebaut:

use DB
GO

drop view View2
Go

CREATE VIEW View2
AS
SELECT TOP 100 PERCENT AG30.*,
(SELECT SUM(AUSF_ZEIT)
FROM PSL_Arbvorr_Anarb_Kant30
WHERE LfdNr <= AG30.LfdNr) AS LfdSumme
FROM dbo.PSL_Arbvorr_Anarb_Kant30 AG30
ORDER BY LfdNr

Das funktioniert soweit auch ausreichend schnell.



Wo? Im QA oder wenn du die verknuepfte Abfrage in Access oeffnest?

Wenn ich dass nun mit dem Runtime mache dann bleibt alles stehen...



Access Runtime? Wie verhaelt es sich unter A03 (nicht runtime)?

Alternativ kannst du mal aus www.donkarl.com?FAQ4.39 unter laufende Summe
den 2. Link (RunSum) probieren.

Gruss - Peter

Mitglied im http://www.dbdev.org
FAQ: http://www.donkarl.com

Ähnliche fragen