Suche | Statistiken | Benutzerliste | Access-FAQ | Datenschutz Foren
donkarl Forum
donkarl Forum ->  Themen -> Access -> Diskussion ansehen

Du bist als Gast eingelogt. ( Anmelden | Registrieren )
  • Access-Fehler bei Verknüpfung zweier Unterabfra...
  • Kanne20.07.12 09:15
       └ RE: Access-Fehler bei Verknüpfung zweier Unterab... Karl Donaubauer20.07.12 10:17
          └ RE: Access-Fehler bei Verknüpfung zweier Unter... Kanne20.07.12 11:06
             └ RE: Access-Fehler bei Verknüpfung zweier Unt... Karl Donaubauer20.07.12 11:26
  • Abkürzungen von Schreibweisen bei Unterabfragen mö...
  • Kanne20.07.12 11:20
  • FormatCondition in Datenblattansicht
  • JanSeidel11.07.12 19:56
       └ RE: FormatCondition in Datenblattansicht Karl Donaubauer11.07.12 23:43
          └ RE: FormatCondition in Datenblattansicht JanSeidel15.07.12 18:35
             └ RE: FormatCondition in Datenblattansicht Karl Donaubauer15.07.12 19:33
                └ RE: FormatCondition in Datenblattansicht JanSeidel16.07.12 08:03
                   └ RE: FormatCondition in Datenblattansicht JanSeidel17.07.12 20:48
                      └ RE: FormatCondition in Datenblattansicht Karl Donaubauer17.07.12 23:04
                         └ RE: FormatCondition in Datenblattansicht JanSeidel18.07.12 11:36
  • Access Projekte Ausblenden A2010
  • pwakolbi14.07.12 10:36
       └ RE: Access Projekte Ausblenden A2010 Karl Donaubauer14.07.12 22:11
  • Access Stammtisch München am 12.07.2012 (Do)
  • StefanWirrer10.07.12 14:58
  • Frage zu Mail aus Access
  • Poul04.07.12 10:40
       └ RE: Frage zu Mail aus Access Karl Donaubauer04.07.12 11:06
          └ RE: Frage zu Mail aus Access Poul04.07.12 11:19
             └ RE: Frage zu Mail aus Access PeterDoering04.07.12 13:38
                └ RE: Frage zu Mail aus Access Poul04.07.12 14:12
                   └ RE: Frage zu Mail aus Access PeterDoering04.07.12 21:34
                      └ RE: Frage zu Mail aus Access Poul05.07.12 08:28
                         └ RE: Frage zu Mail aus Access Karl Donaubauer05.07.12 09:50
                            └ RE: Frage zu Mail aus Access Poul05.07.12 10:30
                               └ OT Neuer Benutzername (was: Frag... Karl Donaubauer05.07.12 11:02
                                  └ RE: OT Neuer Benutzername (was... Poul05.07.12 14:16
  • Beziehungsdesinge der Tabellen
  • Gamborin29.06.12 22:43
       └ RE: Beziehungsdesinge der Tabellen Karl Donaubauer30.06.12 19:49
  • Datenträger oder Netzwerkfehler 3043
  • swetrain27.06.12 03:01
       └ RE: Datenträger oder Netzwerkfehler 3043 Karl Donaubauer27.06.12 16:18
          └ RE: Datenträger oder Netzwerkfehler 3043 swetrain29.06.12 03:19
  • Hilfe zu DDEPOKE
  • Markgraf25.06.12 17:54
       └ RE: Hilfe zu DDEPOKE Karl Donaubauer28.06.12 00:23
  • Auto FE Updater
  • maikh126.06.12 10:42
       └ RE: Auto FE Updater Karl Donaubauer26.06.12 12:02
          └ RE: Auto FE Updater maikh126.06.12 12:59
             └ RE: Auto FE Updater Karl Donaubauer26.06.12 14:04
                └ RE: Auto FE Updater maikh126.06.12 14:39
                   └ RE: Auto FE Updater Karl Donaubauer26.06.12 16:16
  • doppelte Berichtsseiten
  • Susa26.06.12 11:56
       └ RE: doppelte Berichtsseiten Karl Donaubauer26.06.12 12:12
          └ RE: doppelte Berichtsseiten Susa26.06.12 12:19
  • aus allen UFO's und Hauptformular mit gleicher...
  • hochlenert23.06.12 13:07
       └ RE: aus allen UFO's und Hauptformular mit gl... Karl Donaubauer23.06.12 15:37
          └ RE: aus allen UFO's und Hauptformular mit ... hochlenert24.06.12 08:47
  • Unterformular deaktivieren
  • Ercu120522.06.12 17:37
       └ RE: Unterformular deaktivieren Karl Donaubauer22.06.12 18:22
          └ RE: Unterformular deaktivieren Ercu120522.06.12 21:54
             └ RE: Unterformular deaktivieren Karl Donaubauer22.06.12 23:29
  • Bedingte Formatierung
  • Hennes5720.06.12 22:53
       └ RE: Bedingte Formatierung Karl Donaubauer20.06.12 23:17
          └ RE: Bedingte Formatierung Hennes5720.06.12 23:38
             └ RE: Bedingte Formatierung Karl Donaubauer21.06.12 12:11
                └ RE: Bedingte Formatierung Hennes5721.06.12 21:34
                   └ RE: Bedingte Formatierung Karl Donaubauer22.06.12 08:48
  • Autostart bei DB öffnung
  • amconsult.ch21.06.12 12:42
       └ RE: Autostart bei DB öffnung Karl Donaubauer21.06.12 12:55
       └ RE: Autostart bei DB öffnung Gunter Avenius21.06.12 12:56
    Kanne
    Gesendet: 20.07.12 09:15
    Betreff: Access-Fehler bei Verknüpfung zweier Unterabfragen


    Hi,
    muss etwas weiter ausholen, da die Problemanalyse auch entsprechend langwierig war ... fasse das möglichst kurz zusammen:
    Wir wollen Differenzen aus zwei Buchungsdateien herausfinden.
    Dazu pro Buchungsdatei eine Abfrage mit Mengen-Summe pro Auftrag/Artikel/Buchungstag gemacht und dann in einer neuen Abfrage beides miteinander verglichen ... funktioniert auch soweit.
    Dann haben wir festgestellt, dass im Vergleichsfeld für den Buchungstag idR nur nur ein Tag steht, manchmal aber auch Tag und Uhrzeit (warum auch immer);
    also mussten für den Vergleich ein berechnetes Feld geschaffen werden, der nur den Tagesanteil als Gruppierung nimmt - in Access ja prima über Abfrage-Funktione DATWERT: "cDatumFA: DatWert([DatumZeitStart])".
    Nun zum Problem:
    In der Vergelichsabfrage werden nun überhaupt keine Sätze mehr ausgewiesen, selbst wenn man (wie vorher) zur Verknüpfung nicht die berechneten Werte sondern direkt die Datumsfelder nimmt ?!?
    Habe lange nach einen Fehler gesucht ... nichts gefunden. Die Daten selber liegen auf einem SQL2005 - dort habe ich mal die SQL-Statements geloogt ... auch sehr merkwürdig:
    ohne die DATWERT-Felder laufen auf dem SQL zwei "normal" aussehende Abfragen, die dann anscheinend in Access verknüpft werden (hätte ja eigentlich gedacht, dass die Gesamtabfrage an den Server geht),
    mit den DATWERT-Felder laufen auf dem SQL zwei "normal" aussehende Abfragen (ohne Summenbildung), die dann anscheinend in Access verknüpft werden (hätte ja eigentlich gedacht, dass die Gesamtabfrage an den Server geht).

    Als Anlage habe ich die SQL-Tabellen mal in die MDB gezogen und die Abfragen modifiziert:
    dort geht eine Verknüpfung über das notwendige Feld "Str([BelID]) AS b_Ref" gar nicht mehr ... scheint also ein Probloem im Access zu sein, eine Verknüpfung über das berechnete Feld zu machen !?
    (in Variante 1 wurde das ja auf dem SQL-Server berechnet und als Feld zurückgeliefert ... das schafft Access dann wohl gerade)

    Variante 1 - ohne berechnete Felder per DATWERT:

    1. Abfrage
    ACCESS:
    SELECT dbo_KHKLagerplatzbuchungen.Referenz, dbo_KHKLagerplatzbuchungen.Bewegungsdatum, dbo_KHKLagerplatzbuchungen.Artikelnummer, dbo_KHKLagerplatzbuchungen.Bewegungsart, Sum(dbo_KHKLagerplatzbuchungen.MengeLager) AS SummevonMengeLager
    FROM dbo_KHKLagerplatzbuchungen
    WHERE (((dbo_KHKLagerplatzbuchungen.Intern)=0))
    GROUP BY dbo_KHKLagerplatzbuchungen.Referenz, dbo_KHKLagerplatzbuchungen.Bewegungsdatum, dbo_KHKLagerplatzbuchungen.Artikelnummer, dbo_KHKLagerplatzbuchungen.Bewegungsart
    HAVING (((dbo_KHKLagerplatzbuchungen.Referenz)="402412") AND ((dbo_KHKLagerplatzbuchungen.Bewegungsart)="ZF" Or (dbo_KHKLagerplatzbuchungen.Bewegungsart)="EF"))
    ORDER BY dbo_KHKLagerplatzbuchungen.Bewegungsdatum DESC;
    SQL-LOG:
    SELECT "Referenz" ,"Bewegungsdatum" ,"Artikelnummer" ,"Bewegungsart" ,SUM("MengeLager" ) FROM "dbo"."KHKLagerplatzbuchungen" WHERE ((("Intern" = 0 ) AND ("Referenz" = '402412' ) ) AND ("Bewegungsart" IN ('ZF' ,'EF' ) ) ) GROUP BY "Referenz" ,"Bewegungsdatum" ,"Artikelnummer" ,"Bewegungsart" ORDER BY "dbo"."KHKLagerplatzbuchungen"."Bewegungsdatum" DESC

    2. Abfrage
    ACCESS:
    SELECT Str([BelID]) AS b_Ref, dbo_KHKPpsRueckmeldungen.BelID, dbo_KHKPpsRueckmeldungen.Artikelnummer, Sum(dbo_KHKPpsRueckmeldungen.MengeGut) AS SummevonMengeGut, dbo_KHKPpsRueckmeldungen.Typ, dbo_KHKPpsRueckmeldungen.Status, dbo_KHKPpsRueckmeldungen.DatumZeitStart
    FROM dbo_KHKPpsRueckmeldungen
    GROUP BY Str([BelID]), dbo_KHKPpsRueckmeldungen.BelID, dbo_KHKPpsRueckmeldungen.Artikelnummer, dbo_KHKPpsRueckmeldungen.Typ, dbo_KHKPpsRueckmeldungen.Status, dbo_KHKPpsRueckmeldungen.DatumZeitStart
    HAVING (((dbo_KHKPpsRueckmeldungen.BelID)=402412) AND ((dbo_KHKPpsRueckmeldungen.Status)=0));
    SQL-LOG:
    SELECT {fn convert("BelID" ,SQL_VARCHAR)},"BelID" ,"Artikelnummer" ,SUM("MengeGut" ) ,"Typ" ,"Status" ,"DatumZeitStart" FROM "dbo"."KHKPpsRueckmeldungen" WHERE (("BelID" = 402412 ) AND ("Status" = 0 ) ) GROUP BY {fn convert("BelID" ,SQL_VARCHAR)},"BelID" ,"Artikelnummer" ,"Typ" ,"Status" ,"DatumZeitStart"

    3. Vergleich: Ergebnis richtig: 2 Datensätze, davon einer mit unterschiedlichen Summen des Tages
    ACCESS:
    SELECT [Q_tmp_Lagerbuchungen FA Summen].*, Q_tmp_PPSRueckmeldungen_Summen.*
    FROM [Q_tmp_Lagerbuchungen FA Summen] INNER JOIN Q_tmp_PPSRueckmeldungen_Summen ON ([Q_tmp_Lagerbuchungen FA Summen].Artikelnummer = Q_tmp_PPSRueckmeldungen_Summen.Artikelnummer) AND ([Q_tmp_Lagerbuchungen FA Summen].Bewegungsdatum = Q_tmp_PPSRueckmeldungen_Summen.DatumZeitStart) AND ([Q_tmp_Lagerbuchungen FA Summen].Referenz = Q_tmp_PPSRueckmeldungen_Summen.b_Ref);
    SQL-LOG: (auf SQL nur die beiden Unterabfragen !?! Zusammenführung in Access !!!)
    SELECT "Referenz" ,"Bewegungsdatum" ,"Artikelnummer" ,"Bewegungsart" ,SUM("MengeLager" ) FROM "dbo"."KHKLagerplatzbuchungen" WHERE ((("Intern" = 0 ) AND ("Referenz" = '402412' ) ) AND ("Bewegungsart" IN ('ZF' ,'EF' ) ) ) GROUP BY "Referenz" ,"Bewegungsdatum" ,"Artikelnummer" ,"Bewegungsart"
    SELECT {fn convert("BelID" ,SQL_VARCHAR)},"BelID" ,"Artikelnummer" ,SUM("MengeGut" ) ,"Typ" ,"Status" ,"DatumZeitStart" FROM "dbo"."KHKPpsRueckmeldungen" WHERE (("BelID" = 402412 ) AND ("Status" = 0 ) ) GROUP BY {fn convert("BelID" ,SQL_VARCHAR)},"BelID" ,"Artikelnummer" ,"Typ" ,"Status" ,"DatumZeitStart"

    Variante 2 - mit berechnete Felder per DATWERT:

    1. Abfrage
    ACCESS:
    SELECT dbo_KHKLagerplatzbuchungen.Referenz, dbo_KHKLagerplatzbuchungen.Bewegungsdatum, dbo_KHKLagerplatzbuchungen.Artikelnummer, dbo_KHKLagerplatzbuchungen.Bewegungsart, Sum(dbo_KHKLagerplatzbuchungen.MengeLager) AS SummevonMengeLager, DateValue([Bewegungsdatum]) AS cDatum, Int([Bewegungsdatum]) AS iDatum
    FROM dbo_KHKLagerplatzbuchungen
    WHERE (((dbo_KHKLagerplatzbuchungen.Intern)=0))
    GROUP BY dbo_KHKLagerplatzbuchungen.Referenz, dbo_KHKLagerplatzbuchungen.Bewegungsdatum, dbo_KHKLagerplatzbuchungen.Artikelnummer, dbo_KHKLagerplatzbuchungen.Bewegungsart, DateValue([Bewegungsdatum]), Int([Bewegungsdatum])
    HAVING (((dbo_KHKLagerplatzbuchungen.Referenz)="402412") AND ((dbo_KHKLagerplatzbuchungen.Bewegungsart)="ZF" Or (dbo_KHKLagerplatzbuchungen.Bewegungsart)="EF"))
    ORDER BY dbo_KHKLagerplatzbuchungen.Bewegungsdatum DESC;
    SQL-LOG: (keine Summenbildung - wird also durch Access vorgenommen !?! Anzeige in Access aber richtig)
    SELECT "Artikelnummer" ,"Bewegungsart" ,"MengeLager" ,"Referenz" ,"Bewegungsdatum" FROM "dbo"."KHKLagerplatzbuchungen" WHERE ((("Intern" = 0 ) AND ("Referenz" = '402412' ) ) AND ("Bewegungsart" IN ('ZF' ,'EF' ) ) )

    2. Abfrage
    ACCESS:
    SELECT Str([BelID]) AS b_Ref, dbo_KHKPpsRueckmeldungen.BelID, dbo_KHKPpsRueckmeldungen.Artikelnummer, Sum(dbo_KHKPpsRueckmeldungen.MengeGut) AS SummevonMengeGut, dbo_KHKPpsRueckmeldungen.Typ, dbo_KHKPpsRueckmeldungen.Status, DateValue([DatumZeitStart]) AS cDatumFA, Int([DatumZeitStart]) AS iDatumFA, dbo_KHKPpsRueckmeldungen.DatumZeitStart
    FROM dbo_KHKPpsRueckmeldungen
    GROUP BY Str([BelID]), dbo_KHKPpsRueckmeldungen.BelID, dbo_KHKPpsRueckmeldungen.Artikelnummer, dbo_KHKPpsRueckmeldungen.Typ, dbo_KHKPpsRueckmeldungen.Status, DateValue([DatumZeitStart]), Int([DatumZeitStart]), dbo_KHKPpsRueckmeldungen.DatumZeitStart
    HAVING (((dbo_KHKPpsRueckmeldungen.BelID)=402412) AND ((dbo_KHKPpsRueckmeldungen.Status)=0));
    SQL-LOG: (keine Summenbildung - wird also durch Access vorgenommen !?! Anzeige in Access aber richtig)
    SELECT "Typ" ,"BelID" ,"Artikelnummer" ,"DatumZeitStart" ,"MengeGut" ,"Status" FROM "dbo"."KHKPpsRueckmeldungen" WHERE (("BelID" = 402412 ) AND ("Status" = 0 ) )

    3. Vergleich: Ergebnis falsch: 0 Datensätze !!!
    ACCESS: (Abfrage unverändert)
    SELECT [Q_tmp_Lagerbuchungen FA Summen].*, Q_tmp_PPSRueckmeldungen_Summen.*
    FROM [Q_tmp_Lagerbuchungen FA Summen] INNER JOIN Q_tmp_PPSRueckmeldungen_Summen ON ([Q_tmp_Lagerbuchungen FA Summen].Referenz = Q_tmp_PPSRueckmeldungen_Summen.b_Ref) AND ([Q_tmp_Lagerbuchungen FA Summen].Bewegungsdatum = Q_tmp_PPSRueckmeldungen_Summen.DatumZeitStart) AND ([Q_tmp_Lagerbuchungen FA Summen].Artikelnummer = Q_tmp_PPSRueckmeldungen_Summen.Artikelnummer);
    SQL-LOG: (auf SQL nur die beiden Unterabfragen !?! Zusammenführung in Access !!!)
    SELECT "Artikelnummer" ,"Bewegungsart" ,"MengeLager" ,"Referenz" ,"Bewegungsdatum" FROM "dbo"."KHKLagerplatzbuchungen" WHERE ((("Intern" = 0 ) AND ("Referenz" = '402412' ) ) AND ("Bewegungsart" IN ('ZF' ,'EF' ) ) )
    SELECT "Typ" ,"BelID" ,"Artikelnummer" ,"DatumZeitStart" ,"MengeGut" ,"Status" FROM "dbo"."KHKPpsRueckmeldungen" WHERE (("BelID" = 402412 ) AND ("Status" = 0 ) )


    Anhänge
    ----------------
    Anhänge Access_TEST.zip (30KB - 1 downloads)
    Top of the page Bottom of the page


    Seite: < 68 69 70 71 72 73 ... 74 75 76 77 78 79 80 ... >
    Suche in diesem Forum
    Druckfreundliche Version
    (Alle Cookies von dieser Seite löschen.)