Supportnet Computer
Planet of Tech

Supportnet / Forum / Datenbanken

Suchen in Formularen anpassen





Frage

Hallo an alle! Ich habe fogendes Problem: Ich soll eine Datenbank anlegen mit Ersatzteilen, ( die Datensätze kommen von den verschiedenen Herstellern )wo man schnell nach der Teilenummer oder seltener nach Bezeichnung Datensätze raussuchen kann. Von einem Import in unser kaufm. Programm haben wir abgesehen, da es sich um über 200K Datensätzen handelt, von denen wir nur einen winzigen Bruchteil dann wirklich brauchen, was das System unnötig bremsen würde. Ich dachte mir das nun so: Ideal wäre eine Vorselektion nach einem bestimmten Hersteller als Kriterium oder Tabellennahme (im Formular) mit Feldliste oder so, danach Eingabe von Zahlen oder Textfragmenten mit *x*. Dann sollten in einer Liste alle in Frage kommenden Sätze erscheinen- Durch klicken auf den richtigen soll dieser wiederum in Einzelfeldern erscheinen.( Bei der Übernahme aus Tabellen passieren zu viele Fehler wegen Zeilensprüngen ) Wenn sich pro Hersteller eine Tabelle machen ließe, die sich dann alle von derselben Feldliste aus aufrufen ließen, wäre das prima wegen der späteren aktualisierung. Wenn sich dieser Datensatz per Mausklick jetzt noch in eine andere Tabelle übernehmen ließe ( Bestellliste ö.ä.) wäre das ganz Toll, muss aber nicht sein !! Die Access Suche ist dazu zu umständlich- zu viel geklicke und Meldungen. Ich hab mit div. Tools und Codeschnipseln alles einzeln irgendwie hingekriegt, aber nie alles zusammen.- Eh ich ganz verzweifle:geht das überhaupt, wenn man wie ich ein bischen von Access, aber nix von VB versteht ?? Ich bin bisher immer prima mit Excel ausgekommen, aber das sprengt den Rahmen Daten: Access 2000,OS XP, Einsatz der DB später auf NT. Können bei Servereinsatz mehrere Benutzer gleichzeitig lesezugreifen ? Eine Laiengerechte Antwort würde mir sehr weiterhelfen- Code kopieren kann ich gut- anpassen schon weniger ;-) !! Danke im Voraus - Andreas

Antwort 1 von Teddy7

Hallo Andreas !

Was Du da haben willst ist ohne weiteres realisierbar.
Wenn´s aber nur halbwegs professionell aussehen soll sind VBA-Kenntnisse unabdingbar.

Und was nutzt es Dir, wenn Du hier im Forum mit Codeschnipsel gefüttert wirst, Du aber voll auf dem Schlauch stehst, wenn was zu ändern ist.

Z.B. ist es für die Antwortzeit besser wenn die Daten aller Hersteller in einer Tabelle stehen.

Zum Update kann man auf Knopfdruck die Daten eines Herstellers rauslöschen und durch die neuen Daten ersetzen - wobei man die Exceldateien, die man von den Herstellern bekommt automatisch öffnen und einlesen kann (man kann dabei sogar Preisänderungen feststellen und anlisten).

Ich hab sowas mal programmiert.
Wenn man wirklich was damit anfangen will, dann ist das so anspruchsvoll, daß ich Dir bzw. Deiner Firma nur empfehlen kann damit einen Profi zu beauftragen !!

Gruß
Teddy

Antwort 2 von allessoschwer

Hallo,
Danke für die schnelle Antwort, leider wird in unserer Branche nicht soo doll verdient, und das Teil brauchen wir auch nicht allzu oft.
Was ich oben geschrieben habe, wäre nur der Idealfall, reichen würde mir auch schon eine Liste der Artikel, die der Suchanfrage entsprechen, von der aus ich einen Einzelartikel anklicken kann, den Rest kriege ich sicher selbst hin.
Ich will halt nur umgehen, daß auf eine mehrdeutige Anfrage z.B. 123**67 nur ein einziger Datensatz erscheint.

Gruß Andraes

Antwort 3 von Teddy7

Hallo Andreas !

Warum denken alle Leute ein Access-Profi wäre teuer ??

Ist Dir mit einer Beispieldatenbank geholfen ?

Der gleichzeitige Zugriff von bis zu ca. 10 Usern ist mit akzeptablen Zugriffszeiten möglich.

Gruß
Teddy

Antwort 4 von El Bobbele

Hallo allessoschwer!

Deine Aufgabenstellung ist sogar relativ einfach und mit einem Minimum an Aufwand zu lösen. Voraussetzung ist allerdings, dass du nicht pro Hersteller eine Tabelle usw. anlegst. Sowas ist tabu, ansonsten müsstest du die Tabellendefinitionen ändern, wenn sich bei den Herstellern etwas ändert!

Die Daten sollten sich mit einer normalen 1:n-Beziehung abbilden lassen können:

tblHersteller
----------------------------
HERST_ID        Autowert  
HERST_Name      Text

tblErsatzteile
----------------------------
TEIL_ID         Autowert
TEIL_HERST_ID   Long Integer
TEIL_Name       Text

Beziehung:
tblHersteller.HERST_ID -> tblErsatzteile.TEIL_HERST_ID


Benötigt wird eine Haupt-/Unterformularlösung. Es werden hier nur Eigenschaften aufgeführt, die geändert werden müssen. Der Rest kann bei den Standardeinstellungen bleiben.


Hauptformular
-----------------------------------------
Name:                frmHersteller


Kombinationsfeld
-----------------------------------------
Name:                cboHersteller
Datenherkunft:       tblHersteller
Spaltenanzahl:       2
Spaltenbreite:       0cm;3cm
Nach Aktualisierung: [Ereignisprozedur]


Textfeld
-----------------------------------------
Name:                txtSuche
Nach Aktualisierung: [Ereignisprozedur]


Code von frmHersteller
-----------------------------------------
Private Sub cboHersteller_AfterUpdate()
    With Me
        .txtSuche = Null
        .fsubHersteller_Artikel.Requery
    End With
End Sub

Private Sub txtSuche_AfterUpdate()
    Me.fsubHersteller_Artikel.Requery
End Sub


Unterformular
------------------------------------------
Name:                fsubHersteller_Ersatzteile
Datenherkunft:       qryErstatzteile
Standardansicht:     Endlosformular
Anfügen zulassen:    Nein


Abfrage
-------------------------------------------
Name:                qryErsatzteile
SQL:                 
SELECT tblErsatzteile.TEIL_ID, 
tblErsatzteile.TEIL_Teilenummer, 
tblErsatzteile.TEIL_Bezeichnung, 
FROM tblErsatzteile
WHERE (((tblErsatzteile.TEIL_Teilenummer) 
Like "*" & [Forms]![frmHersteller]![txtSuche] 
& "*") AND ((tblErsatzteile.TEIL_HERST_ID)=
[Forms]![frmHersteller]![cboHersteller])) OR 
(((tblErsatzteile.TEIL_Bezeichnung) Like "*" & 
[Forms]![frmHersteller]![txtSuche] & "*") AND 
((tblErsatzteile.TEIL_HERST_ID)=
[Forms]![frmHersteller]![cboHersteller]));


Das Unterformular muss in das Hauptformular eingefügt werden, allerdings ohne Verknüpfungseinstellungen. Die Beziehung der Formular wird über die Steuerelemente selbst geregelt. Im Unterformular können dann noch Schaltflächen hinterlegt werden, die dann alles kopieren und machen, was du willst. Durchsucht werden bei einer Sucheingabe sowohl die Spalte [Teilenummer] als auch [Bezeichnung].

Für ein Anfügen von Daten ist das Formular nicht geeignet, weil das Hauptformular ungebunden ist. Dafür sollten z.B. andere Formulare herhalten.

Gruss
El Bobbele

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: