Neuigkeiten:

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

Mobiles Hauptmenü

Code für Artikel Nummer erstellen

Begonnen von silentwolf, Dezember 17, 2011, 11:12:19

⏪ vorheriges - nächstes ⏩

silentwolf

Hallo liebe Access Freunde :)

hab ein kleineres Problem wo ich mir leider nicht ganz sicher bin wie man so etwas am besten Lösen könnte.
Vieleicht hat jemand schon so etwas gemacht und könnte mir bitte helfen.

Ich möchte eine Artikel nummer erstellen die aus folgenden Kriterien zusammen gesetzt werden soll.
Eine Tabelle GrundArtikel beinhaltet drei Nachschlage Tabellen. Aus jeder dieser Nachschlage Tabelle soll nun der erste Buchstabe also Artikel Code dienen.
Also ich erstelle einen neuen Artikel und wähle in einer Form Kategorie, Hersteller, und Mengeneinheit aus.
Nun soll wenn es der erste Artikel ist z.B. CBl1 in meiner GA_ArtikelNr eingetragen werden.
Habe eine Abfrage mit einem Ausdruck erstellt der mir die z.B. CBl zurück gibt. Wie muss ich nun weiter vorgehen um diesen Ausdruck mit der ArtikelId zu kombinieren und in mein Textfeld geben. Das wiederum in meine Tabelle geschrieben werden muss.

Hoffe ich habe mich verständlich ausgedrückt und jemand könnte mir diesbezüglich helfen.

Vielen Dank!!



DF6GL

Hallo Albert,


Wenn Du das wirklich so machen willst, (die ArtikelNr automatisch zusammensetzen), dann überleg Dir genau, WORAUS die ArtikelNr zusammengesetzt werden soll.



"Nun soll wenn es der erste Artikel ist z.B. CBl1 in meiner GA_ArtikelNr eingetragen werden."

ist nicht so klar, was Du meinst.. Willst Du gleichartig lautende Grundartikel "durchnummerieren" ?


Wenn so, dann wird das nur über eine kleine Funktion erreichbar sein, die das Ganze bewerkstelligt.
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

silentwolf

Hallo Franz,

ja ich dache mir das ich dann ebern die verschiedenen Artikel Gruppen durchnummeriere.
Eben mit den aufgezählten "Kategorien"

Dachte ich mir schon das ich dazu VBA funktion brauche ggg aber na ja da bin ich noch nicht so weit ggg

DF6GL

Hallo Albert,

muss nochmal sagen: Überleg Dir ein KONZEPT, mit denen die Grundartikel (warum denn aber die Grundartikel) so benannt werden sollen....  Durchnummerieren finde ich da nicht so ideal.
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

silentwolf

Hallo Franz,
hmm ok na ich dachte mir nur damit ich Artikel Nummern bekomme die für mich sind. Und nicht immer wieder eine Abkürzung und dergleichen für jeden Artikel ausdenken muss.
Soll auch danach einfacher sein Abfragen zu erstellen.

Aber wenn es nicht gut ist dann lass ich es lieber wieder :)

Ist ja kein Problem :)

Ach wenn Du grad da bist bräuchte kurz hilfe wie ich im HF auf das dazugehörige Unterformular greifen kann.
Hab einen Code der funktioniert aber nur wenn ich im UF klicke .. Würde lieber aus dem HF (button) klicken.

Danke


bahasu

Servus

silentwolf

Hallo Harald,

vielen Dank aber ich bekomme es leider nicht hin.

das wäre der Code momentan

DoCmd.OpenForm "GAVLieferantHF", , , "GAVLief_GAVer_Id =" & Me!GAVer_ID

wie muss man den im diesen Fall es änder??

Hab schon versucht aber leider ohne Erfolg.


bahasu

Hallo,

ich bin verwirrt, was nun die Zielvogabe  ist:
DoCmd.OpenForm "GAVLieferantHF", , , "GAVLief_GAVer_Id =" & Me!GAVer_ID
ist ein Code, um ein Formular (HF = Hauptformular?) zu öffnen. Woher stammt GAVer_ID (HaFo, UFo?)?

Deine obige Zielvorgabe habe ich so interpretiert, dass Du ein Formular hast, in dem ein Unterformular (bereits vorhanden) ist.
Der Hinweis auf DonKarl beschreibt diesen Fall,dass man aus einem HaFo auf ein UFo zugreift.
Wenn dieses Ziel zutrifft, dann ist aus dem HaFo der Zugriff auf z.B. ein Feld im Ufo möglich mit:
MsgBox Me!DeinUnterformular.Form.DeinFeldImUnterformular

Harald
Servus

silentwolf

Ok ich versuche es zu erklären.
Es existieren 4 tabellen die miteinander verknüpft sind.
Also Erste tabelle mit der zweiten die mit der dritten und die mit der vierten.

Jetz habe ich die ersten zwei in ein HF und ein UF erstellt.
Die zweiten in ein weiteres. Da ich aber die daten von der zweiten Tabelle(die ist ja das UF im ersten HF) weiter verarbeiten muss.
Hab ich im ersten HF einen Button eingebaut der mir eben das zweite HF mit UF öffnen soll und auf den Datensatz springt der
im ersten UF ausgewählt wurde.

Kann man das so verstehen??
Ich hätte ja am anfang alle vier Tabellen in ein Formular gestellt aber das geht ja nicht oder? Und es wäre ja auch ziehmlich gross.
Deshalb zwei Formulare mit jeweils zwei Tabellen.




bahasu

Hallo,

der Formular-Assistent läßt nur HaFo + 2 UFo's zu. Manuell sind mehr möglich.
Wenn Du per Assi HaFo + 2 UFo's erstellt hast, im 2. Ufo (sollte Deine dritte Tabelle sein) ein "Unterformular/-bericht"-Steuerelement eintragen und in dem das Formular (sollte bei Dir das Ufo aus dem 2. HaFo sein) zuweisen und dann noch die Verknüpfung regeln.

Deine obige Anweisung habe ich jetzt so verstanden, dass Du aus dem 1. HaFo heraus einen zum dort vorhanden Ufo passenden Datensatz im zweiten HaFo aufrufen willst. Dann mußt Du beim where-Teil einen Bezug zum 1. Ufo angeben:
Könnte lauten:
DoCmd.OpenForm "GAVLieferantHF", , , "GAVLief_GAVer_Id =" & Me!DeinUnterformular_im_ersten_HaFo.Form.GAVer_ID

Harald
Servus

database

#10
Hallo,

bei Versionen ab Access 95 ist die Angabe von 'Form' optional.
Wenn aber angegeben dann ...

Me!DeinUnterformular_im_ersten_HaFo.Form!GAVer_ID

einfacher und übersichtlicher, wobei die ID bei Bedarf weiterverwendet werden KÖNNTE:


Dim lngGAVerID as Long

lngGAVerID = Me!DeinUnterformular_im_ersten_HaFo!GAVer_ID

DoCmd.OpenForm "GAVLieferantHF", , , "GAVLief_GAVer_Id =" & lngGAVerID


Mehr zu Referenzen auf Unterformulare findest du hier: http://www.donkarl.com?FAQ4.2
Beachte auch den dort angegebenen Link zu Dev Ashish

silentwolf

Hallo Peter :)
auch danke für Deine mail! Bin immer noch beim probieren!!
Hab mal ein HF mit 2 Ufos erstellt aber hab jetzt wieder eine Fehlermeldung bekommen.
Weil irgend ein Ausdruck nicht zu finden ist.

Weis nicht wie es besser wäre mit 1 Hf und 2 Ufos und dann noch die 4 tabelle in das selbe einfügen
oder eben wie ich es gemacht hätte. damit es einfach etwas übersichtlicher bleibt
aber na ja da hat es dann schon etwas gefuxt tgggg

database

#12
Hallo,

Zitat....hab jetzt wieder eine Fehlermeldung bekommen
und wie lautet die GENAU?
Möglicherweise heißt ...  "GAVLief_GAVer_Id"  in deinem aufgerufenen Formular anders!

p.s. die obigen Codes beschreiben den Formularaufruf vom Hauptformular aus.
lngGAVerID = Me!DeinUnterformular_im_ersten_HaFo!GAVer_ID ... greift vom Hauptformular aus af ein ID-Feld im Unterformular zu

DoCmd.OpenForm "GAVLieferantHF", , , "GAVLief_GAVer_Id =" & lngGAVerID  ...  stellt den Aufruf des NEUEN Formulars dar und bewirkt,
dass der Datensatz geladen wird, dessen GAVLief_GAVer_ID dem Inhalt der Variablen entspricht.

Sonst hänge mal die betroffenen Tabellen und Formulare in eine BeispielDB hier herein

silentwolf

Danke Peter für Deine Antwort.

Gib mir bitte noch ein paar Minuten und dann werd ich wissen ob ich es geschafft habe oder nicht.
Hab das Formular schon verschmissen dauert länger den Fehler zu finden als ein neues zu erstellen.


silentwolf

Peter bist noch da??
Also ich habe nun ein HF mit 3 UF das letzte UF also das ich gerade eingefügt habe hab ich folgende Verknüfungen gemacht.

Nach [GAVLieferantUF].Forms![GAVLief_ID]
Von GAVA_GAVLief_Id

also auch wie die anderen UF verknüpft sind. Aber geht nicht