PDA

Vollständige Version anzeigen : 2 Tabellen in einem Bericht


ricric
07.01.2002, 13:46
Hallo,

ich verzweifle hier an einer Kleinigkeit für einen routinierten Access Programmierer ...

Die Tabellenstruktur ist so aufgebaut:
Adresse
- Eingang
- Ausgang

Diese Tabellen sind mit einer Kundennummer verknüpft.

Ich benötige einen Bericht, der die Daten von den Tabellen Eingang und Ausgang nach Datum geordnet auflistet, aber in diesem Fall keinen Bezug zur Tabelle Kunde hat.

Beispiel:
ich erhalte von Adresse A 10 kg Äpfel (Eingang)und verkaufe an Adresse B und C 1kg und 2 kg (Ausgang)

Wie sieht die monatliche Bewegung nach Datum geordnet beim Produkt Äpfel aus.

Vielen Dank!

Richard

Kurt aus Kienitz
07.01.2002, 14:31
Hallo,

Gibt es in den Tabellen Eingang und Ausgang sowas wie eine Artikelnummer ?

ricric
07.01.2002, 14:40
Hallo,

nein, es gibt keine Artikelnummer. Es wäre aber leicht möglich eine einzuführen wenn es weiterhilft.

Danke!

Richard

Kurt aus Kienitz
07.01.2002, 14:45
Hallo,

Die Artikelnummer solltest Du unbedingt einfügen, denn nur damit kannst Du Auswertungen über Artikel machen, die kundenunabhängig sind.

Wenn Du die Artikelnummer drin hast, dann brauchst Du nurnoch die Tabellen Eingang und Ausgang über dies Verknüpfen und kannst deinen Bericht recht easy erstellen.

ricric
07.01.2002, 16:05
Könntest Du mir bitte zeigen, wie diese Abfrage aussehen muß?
Hab verschiedenes ausprobiert, bekomme aber leider immer einen Unfug als Ergebnis.

Danke!

Richard

Kurt aus Kienitz
07.01.2002, 17:32
Hallo nochmal,

Wie sehen denn die Tabelle im Detail aus ?

ricric
07.01.2002, 17:55
Datei Abholungen (Eingang):
Adressnr Zahl
Datum Abholung Datum
Gewicht Zahl
Artikelnummer Zahl

Datei Ausgang:
Adressnr Zahl
Datum Datum
Gewicht Zahl
Artikelnummer Zahl

es gibt dann noch einige Stammdatenfelder mehr, die aber für das Formular nicht benötigt werden.

Danke für die Mühe die Du Dir machst!

Kurt aus Kienitz
08.01.2002, 08:19
Hallo,

Da wir für den Bericht beides benötigen (Eingang und Ausgang) und dieses
gemeinsam sortiert sein soll, würde ich eine UNION-Abfrage vorschlagen.

SELECT Abholung.Adressnr, Abholung.Datum, Abholung.Gewicht, Abholung.Artikelnummer, "E" As EinAusgang
FROM Abholung
UNION
SELECT Ausgang.Adressnr, Ausgang.Datum, Ausgang.Gewicht, Ausgang.Artikelnummer, "A" As EinAusgang
FROM Ausgang
ORDER BY 2;

ricric
08.01.2002, 09:01
Genial!!!

Es funktioniert!

Danke vielmals!!!!!

Richard

ricric
08.01.2002, 11:02
Ähem, jetzt hat sich doch gleich noch ein Problem eingeschlichen...

Ich möchte auch noch den jeweils gültigen Lagerstand in der Ausgabezeile.

Soll so aussehen:
Datum|Firmenname|Gewicht ein|Gewicht aus|Lagerstand

zur Zeit sieht die abgesehen vom Lagerstand funktionierende Abfrage so aus:

SELECT Abholungen.[Datum Abholung], Abholungen.Gewicht As Abholungen, "" As Ausgänge, Abholungen.Artikelnummer, "E" As EinAusgang, Adressen.[Firma/Familienname]
FROM Abholungen, Adressen
WHERE Abholungen.Gewicht > 0 AND Abholungen.Adressnr = Adressen.Adressnr
UNION SELECT Ausgang.Datum, "" As Ausgänge, Ausgang.Gewicht, Ausgang.Artikelnummer, "A" As EinAusgang, Adressen.[Firma/Familienname]
FROM Ausgang, Adressen
WHERE Ausgang.Gewicht > 0 AND Ausgang.Adressnr = Adressen.Adressnr
ORDER BY 1;

Versucht habe ich es u.a. so:
[Abholungen-Ausgänge] As Lagerstand

Aber entweder bekomme ich eine Fehlermeldung, daß er solche Art von Verschachtelung nicht zuläßt (z.B.Lagerstand+Abholungen.Gewicht As Lagerstand) oder es funktioniert nicht.

Kannst Du mir bitte noch einmal helfen?

Danke
Richard

Kurt aus Kienitz
08.01.2002, 11:28
Hallo Richard,

Hast Du in den Tabellen Ausgang und Abholung eine lfd. Nummer (AutoWert) drin, sonst wird's schwierig ?

ricric
08.01.2002, 11:46
Ja, hab ich, nennt sich Übernahmenummer

Ausserdem gibts auch die Adressnummer

Kurt aus Kienitz
08.01.2002, 12:13
Hallo Richard,

Ist diese Übernahmenummer in beiden Tabellen, wenn ja, ist die dann pro Tabelle fortlaufend oder über beide Tabellen fortlaufend ?

ricric
08.01.2002, 16:01
Hallo,

die Übernahmenummer ist pro Datei.
Die Artikelnummer ist in beiden Dateien, aber immer auf 0, weil ich sie nur für diese Auswertung brauche.
Dann gibts noch die Adressnummer, an die beide Dateien gebunden sind.

Danke!
Richard

Kurt aus Kienitz
08.01.2002, 16:48
Hallo Richard,

Probier mal folgendes aus.

Ändere die Abfrage so:

SELECT Abholungen.[Datum Abholung], Abholungen.Gewicht As Abholungen, "" As Ausgänge,
Abholungen.Artikelnummer, "E" As EinAusgang, Adressen.[Firma/Familienname],
Abholungen.Gewicht As Lagerbestand
FROM Abholungen, Adressen
WHERE Abholungen.Gewicht > 0 AND Abholungen.Adressnr = Adressen.Adressnr
UNION
SELECT Ausgang.Datum, "" As Ausgänge, Ausgang.Gewicht,
Ausgang.Artikelnummer, "A" As EinAusgang, Adressen.[Firma/Familienname],
Ausgang.Gewicht * -1 As Lagerbestand
FROM Ausgang, Adressen
WHERE Ausgang.Gewicht > 0 AND Ausgang.Adressnr = Adressen.Adressnr
ORDER BY 1;

Dann lege im Bericht ein Textfeld mit den Eigenschaften:
+Steuerelemeninhalt = Lagerbestand
+Laufende Summe = Über alles