Februar 26, 2021, 13:43:36

Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!


2 Parameter wurden erwartet...

Begonnen von FrauAntje, Februar 15, 2021, 22:39:22

⏪ vorheriges - nächstes ⏩

FrauAntje

Hallo und guten Abend,

ich möchte eine Auswahlabfrage exportieren, als .txt-Datei. Allerdings kommt da die Meldung "2 Parameter wurden erwartet, aber es wurden zu wenig Parameter übergeben."
Die Abfrage enthält bestimmte Spalten innerhalb eines bestimmten Datumsbereiches; mehr nicht.

Leider hab ich keine Ahnung, wo ich hinschauen soll.

Danke für eure Mühe.  :)

MzKlMu

Hallo,
ZitatLeider hab ich keine Ahnung,
und wo soll bei uns die Ahnung herkommen, wenn man keine Ahnung hat wie die Abfrage aussieht ?
Gruß
Klaus

FrauAntje

Februar 15, 2021, 23:23:43 #2 Letzte Bearbeitung: Februar 15, 2021, 23:59:54 von MzKlMu
Ich hab schon eine Ahnung, wie die Abfrage aussieht. ;-) Die funktioniert ja auch. Auch die Neuanlage der Abfrage und daraus resultierend die Anzeige der Daten klappt.
Mein Problem ist der Export (Über Externe Daten --> Textdatei) - da kommt die beschriebene Meldung.

MzKlMu

Hallo,
Du bist etwas schwer von Begriff, das war ein mehr oder weniger dezenter Hinweis, dass Du die Abfrage (SQL) hier zeigen sollst.


PS:
Bitte keine vollständigen Beiträge als Zitat. Ich habe es oben wieder gelöscht.
Gruß
Klaus

PhilS

Zitat von: FrauAntje am Februar 15, 2021, 23:23:43Ich hab schon eine Ahnung, wie die Abfrage aussieht. ;-) Die funktioniert ja auch. Auch die Neuanlage der Abfrage und daraus resultierend die Anzeige der Daten klappt.
Mein Problem ist der Export (Über Externe Daten --> Textdatei) - da kommt die beschriebene Meldung.
Wenn die Abfrage an sich funktioniert und es nur beim Export zu dem Fehler kommt:
Benutzt du eine Export Spezifikation für den Export? Wenn ja, schau dir die Spezifikation an. Dort sind vermutlich Spalten definiert, die es in der Abfrage nicht gibt. (Tippfehler im Spaltennamen?)
Access DevTools - Find and Replace
Komfortables Suchen und Ersetzen in den Entwurfseigenschaften von Access-Objekten. In Abfragen, Formularen, Berichten und VBA-Code - Überall und rasend schnell!

ebs17

ZitatWenn die Abfrage an sich funktioniert ...
Naja. Es kommt auch darauf an, wo und mit welcher Methode man eine Abfrage aufruft in Verbindung damit, wie die Abfrage nun konkret definiert ist => vollständige SQL-Anweisung auch zeigen, wenn das eigene Wissen mit dem Umgang darüber nicht ausreicht.
So sind z.B. fest installierte Formularbezüge in einigen Konstellationen nicht auflösbar und führen zu solch einer Fehlermeldung. Unbekannte Felder werden als Parameter nachgefragt oder schlicht als Fehler bemängelt.
Mit freundlichem Glück Auf!

Eberhard

FrauAntje

Die Abfrage ist simpel und über den Abfrageentwurf erstellt. Eine Tabelle liefert die Daten. Die Felder, die abgefragt werden, sind auch alle vorhanden. Es findet eine Eingrenzung nach "Vorgang" (fest vorgegeben) und nach "Datumsbereich", das im Startformular eingetragen wird, statt.

In SQL sieht das dann so aus:
SELECT Auftrage1.Auftrag, Auftrage1.Vorgang, Auftrage1.Nummer, Auftrage1.Kundennummer, Auftrage1.Name1, Auftrage1.Name2, Auftrage1.Adresszusatz, Auftrage1.Strasse_Postfach, Auftrage1.Postleitzahl, Auftrage1.Ort, Auftrage1.Versand, Auftrage1.Bruttosumme, Auftrage1.Gesamtgewicht, Auftrage1.Laendercode, Auftrage1.Land, Auftrage1.Datum, Auftrage1.Platzhalter1, Auftrage1.Platzhalter2, Auftrage1.E_Mail
FROM Auftrage1
WHERE (((Auftrage1.Vorgang)='L') AND ((Auftrage1.Datum) Between [Formulare]![Start]![Startdatum] And [Formulare]![Start]![Enddatum]));

Die Daten werden wunschgemäß angezeigt.

Rechte Maustaste auf die Abfrage und Exportieren wählen, als Textdatei.
Export ohne Format und Layout.
Nach OK kommt noch der Hinweis, dass die Datei bereits vorhanden ist. Und nach Bestätigung, das die vorhandene Datei überschrieben werden soll, kommt es zu der Meldung mit den Parametern.

Ich arbeite oft auf diese Art, aber diese Meldung ist mir neu.

ebs17

Zitat...
WHERE (((Auftrage1.Vorgang)='L') AND ((Auftrage1.Datum) Between [Formulare]![Start]![Startdatum] And [Formulare]![Start]![Enddatum]));
Wie gesagt: Formularbezüge.

Tausche testweise in
... WHERE Auftrage1.Vorgang='L' AND Auftrage1.Datum Between Date() - 20 And Date();
ZitatAhnung, wo ich hinschauen soll
Käme die jetzt?
Mit freundlichem Glück Auf!

Eberhard

FrauAntje

ebs17, vielen Dank für die Hilfe.  :)

Die Ahnung ist nun da und ich kann weitermachen.

Bleibt gesund!