November 27, 2020, 07:14:35

Neuigkeiten:

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


Werte von 2 Abfragen vergleichen

Begonnen von mikepo, November 17, 2020, 14:37:28

⏪ vorheriges - nächstes ⏩

mikepo

November 17, 2020, 14:37:28 Letzte Bearbeitung: November 17, 2020, 14:53:35 von mikepo
hallo zusammen, habe mal wieder ein problem wo ich nicht weiter komme, vielleicht (hoffentlich) könnt ihr mir da helfen:

ich habe eine access anwendung, wo artikel mit seriennummern gescannt werden. dies wird im formular mit 2 listenfelder angezeigt:

Listenfeld1_ArtikelZuScannen:
ArtikelNr, Matchcode

Listenfeld2_ArtikelErfolgreichGescannt:
ArtikelNr, Matchcode, GescannteSerienNr

wie kann ich es bewerkstelligen, das man nur jene artikel scannen darf, die sich im listenfeld1 befinden ?

derzeit vergleiche ich im vba mit dcount die 2 rowsourcen der listenfelder (ist jeweils 1 abfrage) und sobald dcount gleich ist, dann wäre der vorgang abgeschlossen. (If dcount (AbfrageListenfeld1) = dcount (AbfrageListenfeld2) then.....

nur wie kann ich es jetzt verhindern, das mitarbeiter 2 mal den selben artikel scannen ?

mit dcount wird ja nur die anzahl verglichen, aber nicht was gescannt wurde, dh ich würde einen vergleich der artikelnummern in beide abfragen benötigen oder ?!

hoffe ich habe mich halbwegs klar ausgedrückt.

danke u lg michael

DF6GL

Hallo,
Zitatwie kann ich es bewerkstelligen, das man nur jene artikel scannen darf, die sich im listenfeld1 befinden ?


Entweder beschreibst Du das ungünstig oder das Vorhaben ist falsch aufgezäumt..


Die DB kann niemandem etwas vorschreiben zu scannen, sie kann lediglich verhindern, dass "falsch" gescannte Codes akzeptiert werden.

Was also soll der User mit Listenfeld1 anfangen?

Soll der User wirklich dort eine Artikel-Nr ablesen, den entspr. Artikel (physikalisch) hernehmen und dann den Barcode scannen?

mikepo

hallo franz,

beim listenfeld1 wählt der mitarbeiter den zu scannenden artikel aus. hier ist spalte0 die gebundene (artikelnummer).
sobald er dann gescannt hat, scheint es im listenfeld2 auf. (läuft über ein textfeld mit anschließendem vba code zum prüfen bzw. dann mit insert into zum schreiben in eine tabelle)

habe die prüfung nun soweit gelöst, mit einem dcount. dh sobald er im listenfeld1 die artikelnr auswählt, und dann scannt, dann checke ich mit einem dcount ob diese artikelnr schon im listenfeld2 (=die erfolgreich gescannten artikelnr) aufscheint. wenn ja, dann msgbox und abbruch.

nun würde ich gerne listenfeld1 um die menge/anzahl-spalte erweitern:

Listenfeld1_ArtikelZuScannen:
ArtikelNr, Matchcode, Anzahl

beispiel:
123, scanartikelA, 1
456, scanartikelB, 2
789, scanartikelC, 3

hier funktioniert dann mein dcount nicht mehr. hier müsste scanartikelB und scanartikelC 2x bzw. 3x mal gescannt werden.

wie könnte ich dies bewerkstelligen ? mit dcount im vba komme ich da nicht weit oder ?!

danke für deine hilfe
 

DF6GL

Hallo,

sorry, ich versteh das nicht....

Was soll denn eigentlich überhaupt erreicht, bzw. gemacht  werden?

Sollen bestimmte Artikel (Listenfeld1) im Lager (?)  erstmal gesucht und dann mit dem Scannen der einzelnen Artikel  deren Menge gezählt werden? (Inventur?)

Dafür reicht doch einfach das durchgehende Scannen der einzelnen und unterschiedlichen Artikel in einem bestimmten Lagerbereich.

Voraussetzung ist, dass der Barcode die Artikelnummer enthält.


Bei jedem Scanvorgang wird lediglich die (gescannte) Artikelnummer in eine Tabelle geschrieben, solange, bis der Lagerbereich durchgearbeitet wurde. (Ein aktuelles Datum mitzuführen, könnte auch von Vorteil sein.)

Die Berechnung der Mengen geschieht dann einfach über eine über die Artikelnummer gruppierende Abfrage , evtl. mit dem oben genannten Datum als Selektionskriterium.

Vielleicht soll aber auch etwas ganz anderes bearbeitet werden ... ?


Die Listenfelder sind eher als Visualisierung denn als Ablaufsteuerung zu sehen.