Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Eure Experten Meinung Bitte :)

Begonnen von silentwolf, Mai 04, 2011, 16:16:40

⏪ vorheriges - nächstes ⏩

silentwolf

Bin grad dabei Formulare zu erstellen und geht auch ganz gut voran so weit.
Nur habe ich eine Frage und zwar ist es besser ein Unterformular in ein Registersteuerelement einzufügen oder ein Listenfeld?
Ich habe ein Registersteuerelement wo ich eben momentan noch Unterformulare eingefügt habe.
Dachte mir aber vieleicht soll ich es mit Listenfeldern machen damit die Spaltenbreiten und das design eventuel besser ist.
In jeden Fall muss ich dann vom Listenfeld oder UF klicken können und ein Formular zu öffnen.
2.Kann man mit einem Listenfeld dann auch eine Suchfunktion machen.
Also im HF ein Suchfeld und dann in dem Listenfeld den Eintrag finden?

Würde mich freun wenn mir jemand einige Tipps geben könnte :)

Danke
Albert

DF6GL

Hallo,

die (allererste) Frage ist schwierig zu beantworten.. Du mußt selber wissen/entscheiden, was Du machen willst. Listenfelder könne halt nur Daten anzeigen, Formulare dagegen können auch (standardmäßig) Dateneingaben akzeptieren und speichern, zudem sind die Formatierungsmöglichkeiten weitaus größer/besser als beim Listenfeld.

Man kann auch mit einem Listenfeld (Klick auf einen Eintrag) ein weiteres Form öffnen, das dann den entspr. Datensatz anzeigt.

Zur zweiten:  Klar, kann man, wobei die "Suche" sich auf "den Eintrag markieren" reduziert. Man braucht nur dem Listenfeld den Wert (für die gebundene Spalte) aus dem Suchfeld zuzuweisen .


silentwolf

Hallo Franz,
danke für Deine Antwort.
Na ich habe es nun mit Listenfelder erstellt und kann auch schon ein neues Registerformular öffnen wenn ich den Datensatz anklicke.
Also so weit sogut :)
Nur zu der zweiten Frage wie muss ich denn das machen? Damit ich im Textfeld das Listenfeld filtern kann.
Hast Du zwar schon gesagt aber leider hab ich das noch nicht gemacht und weis es leider noch nicht. :(
Dazu noch eine Frage wie kann man den dem Listenfeld sagen das es die in der Spalte Firmenkunden den Vor und Nachnamen anzeigen soll wenn eben kein Eintrag enthalten ist?

Vielen Dank
Albert

DF6GL

Hallo,


die zweite Frage hab ich soeben im Originalthread beatwortet.

Grundsätzlich muß man beim Listenfeld zwischen "Filtern" und "Markieren" (nicht "suchen") unterscheiden.

Gefiltert (d. h. Anzeige von gefilterten Datensätzen) passiert über die Zuweisung einer Abfrage mit aktuellem Kriterium an das Listenfeld (oder Neueinlesen der Datensätze --> Requery) mittels Abfrage, die einen Kriteriumsparameter hat.)





"Markieren" sorgt für das Setzen des Cursors (Markierung) auf den betreffenden Eintrag.




Was willst  Du nun genau machen?





silentwolf

Also fangen wir ganz von vorne an :)
Ich möchte ein Listenfeld im unteren Berreich haben das mir nur gewisse Daten anzeigt also Vorname Nachname oder Firmenname und Vor und Nachname wenn es in der Tabelle enthalten ist.
Dazu habe ich in meiner Tabelle ein Feld mit Ja/Nein angelegt also wie erwähnt Firmenkunde Ja/Nein.
Im oberen Bereich habe ich ein Textfeld eingefügt das mir dann wenn möglich den Vornamen Nachnamen und den Firmennamen suchen könnte damit dieser selektiert wird. Dann kann ich mittels doppelklick das Register für entweder Kunden aufmachen wo eben alle anderen Infos diesbezüglich enthalten sind.
Du hast im anderen thread geantwortet und danke aber geht nun das auch mit ja und nein feld??
Hoffe das es so verständlich ist?

Danke!!

DF6GL

Hallo,

ja, zumindest fast....     ;)   (Oberer Bereich ?,  entweder Kunden ...  oder ..?? , Doppelklick worauf ?, warum Register (für mehrere Formulalre), wenn es sich um nur eine Tabelle (tblKudnen) handelt ?  usw... )


Im anderen Thread hab ich den Code auf ein ja/nein-Feld bezogen...


silentwolf

Ok  ;D
Also ich habe ja ziehmlich viele Tabellen und verschiedene Bereiche also ein Kunde hat Projekte und dergleichen.
Lieferanten haben Mitarbeiter..
Mitarbeiter haben Angehörige und und... deshalb habe ich ein registersteuerelement entworfen mit folgenden Seiten pgeKunden, pgeLieferanten, pgeMitarbeiter.
In diesen Registersteuerelement habe ich dann Listenfelder also zu jeder Seite ein Listenfeld eingefügt.
Dazu noch ein txtfeld wo ich eben nach Kundne, Lieferanten, Mitarbeiter suchen könnte damit ich nicht durch alle einträge scrolen muss.
Wenn ich nun auf das Listenfeld doppel klicke öffnet es mir den angeklickten Datensatz also schon gefiltert mit dem neuen Register.
Also Kunde # 1 öffnet mir das regfrmKunde mit dem Kunden # 1 angezeigt. Und dort hab ich dann noch die anderen zusätzlichen Infos die ich über den Kunden brauche auf den anderen Seiten.

DF6GL

Hallo,


dass es mehrere Tabellen in einer DB gibt , ist eher die Regel denn die Ausnahme  ;).


Ih sehe eher eine chaotische Daten(gruppen)-Verwaltung in/mit  diesen Reg-Elementen (wenn ich den Aufbau nun richtig verstanden habe)

Warum machst Du Bedienfunktionen (Anlegen ,Löschen, Ändern, Suchen/Selektieren usw. ) nicht  komplett in demjenigen Formular, das diese Datengruppe (z. B. Kunden --> Datenherkunft Tabelle Kunden)  anzeigt  ?  Um unterschiedliche, aber irgendwie zusammenhangende Einzeldaten eines Kunden zu "gruppieren", kannst Du ja ein Formular mit Datenherkunft zu Tabelle Kunden benutzen und darin mit einem Reg-El. die zusammenzufassenden  Kundendaten auf je eine Registerseite aufteilen. Weiterhin kannst Du im selben (und einzigen) Kundenform die Suchfunktionen unterbringen (z. B. Suchen mittels abhängigen Kombifeldern oder auch mittels Such-Textfeld).


Eine weitere Problematik bei der Verwendung mehrerer separater Formulare, die auf dieselbe Tabelle (Datensätze) zugreifen, liegt in dem Risiko der "Selbstsperrung" bei Datenänderungen.




silentwolf

Hallo,
eigentlich sind schon alle seperat.
Also ich erkläre wie ich es habe.
Ein register die mit 3 Seiten beinhaltet mit Kunden Lieferanten und Mitarbeiter.
Wenn ich nun einen Mmitarbeiter in dem Listenfeld anklicke dann öffnet es mir das Formular frmregMitarbeiter wo eben Stammdaten des Mitarbeiters in der ersten Seite angegeben sind und eben alle anderen relevanten Daten zu dem Mitarbeitern auf anderen Seiten angelegt sind.
So kann ich von dort aus Daten eingeben und ändern.
Ich habe leider noch nie so eine umfangreiche Db erstellt und auch keine dazugehörigen Formulare deshalb hab ich auch schon lange hier um Antworten gebeten um mir mit dem Design zu helfen.
Hab viele Tipps bekommen aber leider für mich war es zu wenig um ein gutes Design zu erstellen.
Nun habe ich eben eine Software oder besser das Design kopiert und diese Software hat es eben genau so erstellt.
Ob es nun gut oder schlecht ist kann ich nicht beurteilen da ich wie gesagt doch nicht so geübt darin bin.



DF6GL

Hallo,

kannst Du mal diese DB hochladen?


"Ein register die mit 3 Seiten  WO  befindet sich dieses Register?? beinhaltet mit Kunden Lieferanten und Mitarbeiter. Ich nehme an, das sind 3 unterschiedliche Formulare    "

"Wenn ich nun einen Mmitarbeiter in dem Listenfeld  WO befindet sich dieses Listenfeld ?? anklicke dann öffnet es mir das Formular frmregMitarbeiter  Ich dachte, das Mitarbeiterform liegt auf einer der 3 o. g. Registerseiten? Da wird nichts geöffnet  (es ist schon offen),  es wird nur die Reg-Seite angezeigt ..      wo eben Stammdaten des Mitarbeiters in der ersten Seite  des o. g.  Reg-St.-Elementes angegeben sind und eben alle anderen relevanten Daten welche sind das denn?  zu dem Mitarbeitern auf anderen Seiten von WELCHEM Reg.-Steuerelement?   angelegt sind. "

silentwolf

Hallo Franz na die DB hochladen ist jetzt wahrscheinlich nicht mehr möglich da diese ja sehr gross schon ist. Und natürlich auch schon Daten eingegeben sind:(
Habe aber par Screenshots mit dazugegeben.
Die datenbank Struktur ist auch schon auf diesen Forum muss aber erst den thread suchen :(
Wäre ja sehr nett wenn Du mir etwas Hilfe leisten könntest damit ich diese DB eventuell mal fertig bekomme :)

Hoffe das hat geholfen? Meld mich gleich wieder mit den Thread wo die DB zu sehen sein sollte!

Danke

Albert




[Anhang gelöscht durch Administrator]

silentwolf

Hier ist die DB ohne Daten hoffe das es jemanden Hilft?

Danke und viele Grüße

Albert

[Anhang gelöscht durch Administrator]

DF6GL

Hallo,

naja, die Tabellen allein nützen nichts, um etwas über die Formularstruktur sagen zu können..

Die Screenshots geben auch nicht allzuviel her...

Ich hätte aber einen anderen Vorschlag, um eine Navigation einzubauen:

Statt der Register, die unterschiedliche Formulare anzeigen/beinhalten, könntest Du ein ungebundenes Formular erzeugen, das ein Treeview-Steuerelement enthält, das wiederum als Knotenpunkte die einzelnen Funktionalitäten, die die DB insgesamt bietet, auflistet. Neben dem Treeview-St.-El. platzierst Du ein genügend großes UFO-Steuerelement, das je nach Klick auf einen TV-Knotenpunkt das entspr. Formular in das UFO-St.-Element läd und dadurch anzeigt.

Anstelle des TV kann auch eine Reihe von Schaltflächen genommen werden, um beim Klick auf eine dieser Buttons das entspr. Form ins UFO zu laden.


Die Registerelemente werden lediglich in einigen Formularen benutzt, wenn dort sehr viele Einzeldaten den Detailbereich des Form "zustopfen" würden.



[Anhang gelöscht durch Administrator]

silentwolf

Hallo,
ja danke für die Antwort leider würde ich mit TV schon wieder bei null anfangen da ich das auch noch überhaupt nie gemacht habe und nicht mal ansatzweise wüßte wo ich dort beginnen sollte.
Ich kann mir vorstellen das es etwas nervt wenn jemand keine Ahnung hat aber ist halt leider so :(
Das Problem liegt halt immer darin das es mir einfach etwas zu gross ist und ich immer wieder im Kreis laufe... die DB denk ich stimmt schon recht gut aber halt das umsetzen mit Formularen und dergleichen ist halt nicht so einfach.
Zumiendest für jemanden wie mich :(

Danke auf alle Fälle!!!

DF6GL

Hallo,


ja, das versteh ich, die Komplexität der Tabellenstruktur ist ja nun auch nicht gerade ohne... und daran ist  auf den ersten Blick nicht auszusetzen.


Aber letztendlich muß die Tabellestrukur auch mit den Formularen abzubilden sein, d. h.:

Mach für jede(!) Tabelle ein Formular, dabei bei 1-Tabellen jeweils ein "Einzel"-Form, für n-Tabellen (Detailtabellen) jeweils ein Endlos-Form.  Für 1-n Tabellenbeziehungen (Master-Detailtabellen) baust Du in das "1-Einzel-Form" ein UFO-St.-Element ein, das das "n-Endlos-Form" anzeigt.


Für Felder in Forms , die Daten aus Stammtabellen beziehen , nimmst Du zur Auswahl Kombifelder. 

Grundsätzlich sollte man zusammenhängende Datenkomplexe (z. B. Rechnungen) möglichst in einem(!) Formular darstellen (Das geht natürlich nicht immer, kann aber angestrebt werden), um die "Kapselung" der Daten möglichst einzuhalten.

Bei Verlaufs-/ Historientabellen (z. B. Kontierungen, Lagerbewegungen)   ist es ratsam, dafür eigene (Endlos-) Formulare zu benutzen.


Mehrere Formulare für die gleiche Datenherkunft sollten vermieden werden. Besondere "Rechte" (Nur Anzeigen, Ändern möglich, Neu hinzu möglich, etc. ) in Formularen werden per Code durch Setzen der entspr. Eigenschaften erreicht und nciht durch andere, anders eingesteltle Formulare mitselber Datenherkunft.


Also: ran ans Werk und schematisch einfach mal die Formulare erstellen. Fine-Tuning passiert nach erfolgreichem Test auf richtige Funktionalität.