Hallo,
das Unterformular dient dem erfassen von Quartetten und deren Einzelkarten. Aktuell ist das alles möglich, ich kann Flaggenbilder; Daten etc. zuweisen usw.
Ich will noch ein Feld im Detailbereich oder Formularkopf hinzufügen, welches einen Wert eingetragen bekommt, z.B. 647_1969, der dann für das Spiel und dessen Quartette fix ist. Es handelt sich dabei um eine Verzeichnisangabe, wo diese Bilder liegen. In diesem Unterformular sind die tblQuartette und tblQuKarten über frmErfassungUfoQuart und frmErfassungUfoQuartUfoKarten und deren Abfragen qryfrmErfassungUfoQuart und qryfrmErfassungUfoKarten involviert.
Ich dachte im 1. Schritt, mache erstelle ich in der tblQuartette ein Feld, QKVerzeichnis (siehe bild1). Diese habe ich dann entsprechend in der Abfrage mit einbezogen. Dann ein Textfeld, Steuerelementinhalt wäre dann QKVerzeichnis. Soweit so gut. Wenn ich nun den Wert z.B. 647_1969 im Feld eintrage und ein Quartett und dessen Einzelkarten eintrage, passt das auch. Aber wenn ich dann ein weiteres Quartett mit Karten anlegen will, dann muss ich auch wieder die Vorgabe 647_1969 eintragen. Warum ist das so bzw. was muss ich tun, damit der Wert für alle 4 Quartette respektive 32 Karten Gültigkeit hat und ich den nicht 4x hinterlegen muss??
Vielen Dank für eure Hinweise, wo ich da den Fehler mache
Gruß Andreas
Hallo Andreas,
ZitatIch will noch ein Feld im Detailbereich oder Formularkopf hinzufügen, welches einen Wert eingetragen bekommt, z.B. 647_1969, der dann für das Spiel und dessen Quartette fix ist.
dann gehört diese Information doch ganz eindeutig zum Spiel (und nicht zu den Quartetten!), und kann somit auch von dort für die Quartette übernommen werden.
Hi,
ich ahnte es. Wenn ich ehrlich bin, habe ich mir gestern beim betrachten der Beziehung das auch gedacht. Aber dann meinte ich, ich habe da unten im UFO schon den Bilderpfad, das Quartett, die Einzelkarten, dann muss ich letztendlich das Verzeichnis angeben, und kann dann die Bilder gemäß den Angaben Karte 1a 1b 1c etc. so auch zuweisen. Aber okay, das ist eben nur so Anfängerhaft und zu kurz gedacht :(.
Du meinst also einen Ordnerverzeichnis in tblSpiele definieren. Dann lass mich mal schauen und berichten, wie weit ich komme.
Gruß Andreas
Hi Maggie,
Zitatdann gehört diese Information doch ganz eindeutig zum Spiel (und nicht zu den Quartetten!), und kann somit auch von dort für die Quartette übernommen werden.
Ich habe das jetzt mal so eingerichtet. Feld Verzeichnisname in tblSpiele. Daten wie 58822_st76 können nun hinterlegt werden. Jetzt habe ich ja schon eine Funktion, nach dessen "Stil" der Idee nach das ganze funktionieren sollte. Ich habe ja das Unterformular frmEfassungUfoBilder. Da gibt es die Möglichkeit ein Bild in einem Extraformular in Originalgröße darzustellen. Dafür ist das folgende Ereignis bei Doppelklick hinterlegt
Private Sub imgBild_DblClick(Cancel As Integer)
DoCmd.OpenForm "frmDeckblatt", acNormal, , , , acDialog, Me.Parent.BilderPfad & Me.BildDateiName
End SubHier habe ich aber wohl die einfache Version der Ausführung :). Ich habe den Pfad, den Verzeichnisnamen, aber wie bekomme ich die Einzelkarten mit den richtigen Bildern verknüpft? Da habe ich ja als statische Vorgabe nur die Reihenfolge der Quartette und deren Einzelkarten. Also Quartett 1 ist 1a, 1b, 1c und 1d, Quartett 2 ist 2a, 2b usw. Die Quartette sind ja nicht immer nummeriert, dann werden sie ja Alphabetisch sortiert. Dann ist eben ein Quartett das z.B. Anker heißt das Quartett 1. Ergo müsste ich im Formular frmErfassungUfoQuart z.B. das Feld Kartenbezeichnung oder KartenNr mit einem Ereignis Doppelklick belegen. Bildpfad ist ja vorgegeben durch den Verlag, aber wie verkette man jetzt die dafür relevanten Daten wie Kartennummer z.B. 6c, sowie den Verzeichnisname aus der tblSpiele mit diesem Bildpfad, damit er dann auch die Datei 58822_st76_6c.png im Pfad W:\AccessDB\fxs im Verzeichnis 58822_st76 findet??
Gruß Andreas
Hallo Andreas,
ZitatIch habe den Pfad, den Verzeichnisnamen, aber wie bekomme ich die Einzelkarten mit den richtigen Bildern verknüpft?
wenn bspw. "1a" die Kartenbezeichnung ist und du die Bestandteile des Zugriffspfades kennst, sollte es doch kein Problem sein, daraus den vollständigen Zugriffspfad zum Kartenbild zu erzeugen.
Was genau ist dir dabei unklar?
Hi
Zitat
wenn bspw. "1a" die Kartenbezeichnung ist und du die Bestandteile des Zugriffspfades kennst, sollte es doch kein Problem sein, daraus den vollständigen Zugriffspfad zum Kartenbild zu erzeugen.
Was genau ist dir dabei unklar?[/quote]
Eben wie das im VBA aussieht :(.
Private Sub KartenKZ_DblClick(Cancel As Integer)
DoCmd.OpenForm "frmDeckblatt", acNormal, , , , acDialog, Me.Parent.BilderPfad & Me.Parent.Verzeichnisname & ?????
End SubDas müsste dann ja wahrscheinlich so aussehen, allerdings weiß ich jetzt nicht, wie ich das mit dem Verweis mit der Kartennummer hin bekomme, damit er auch weiss, ah okay er will jetzt 2b sehen :(. Das sieht ja im Formular so aus wie in bild1. Bild2 ist im Editmode, damit man auch die Realnamen der Felder sieht. bild_3 zeigt mal Varianten, die möglich sind bei den Kartenbezeichnungen.
Gruß Andreas
Ich vermute einfach mal, dass aufgrund der bevorstehenden Schließung des Forum auch die Teilnahme an den Beiträgen rapide schwindet. Ich muss es dann wohl woanders versuchen, Unterstützung für mein Anliegen zu finden. Schade...
Hallo Andreas,
sorry, ich hatte das hier aus den Augen verloren, ehrlich gesagt weiß ich auch nicht wie ich dir bei der Lösung helfen könnte. Ich kann so etwas immer am besten erkennen, wenn ich die Tabellen, ihre Beziehungen und die Daten einsehen kann. All das kannst du ja eigentlich auch selbst am besten machen.
Bleiben wir mal beim Beispiel Kartenkennzeichen "1a": Steht das so im zugehörigen Datenfeld oder ist das ein zusammengesetzter Begriff, der in der Abfrage ermittelt wird? (weil "1" ja auch schon die Quartett-Kennung ist)
Steht das so im Datensatz, so brauchst du doch nur das Feld für den Pfad zu verwenden - oder eben den zusammengesetzten Begriff..
Beispiel:
Me.Parent.BilderPfad & Me.Parent.Verzeichnisname & Me!KartenKZ
dabei darauf achten, dass auch die "\" in ausreichender Anzahl enthalten sind.
Werte Maggie,
ZitatIch kann so etwas immer am besten erkennen, wenn ich die Tabellen, ihre Beziehungen und die Daten einsehen kann. All das kannst du ja eigentlich auch selbst am besten machen.
Ich habe ja Probleme mit dem Thema, das ganze in VBA abzuhändeln. Da ist einfach Nullo angesagt :(. Du kannst dir sicher sein, wenn mir das von der Hand ging, dann wäre ich nicht hier im Forum damit aufgeschlagen!
ZitatBleiben wir mal beim Beispiel Kartenkennzeichen "1a": Steht das so im zugehörigen Datenfeld oder ist das ein zusammengesetzter Begriff, der in der Abfrage ermittelt wird? (weil "1" ja auch schon die Quartett-Kennung ist)
Steht das so im Datensatz, so brauchst du doch nur das Feld für den Pfad zu verwenden - oder eben den zusammengesetzten Begriff..
Das ist ein zusammen gesetzter Wert. KartenKZ ergibt sich aus dem Feld QuartettKz (Quartett Kennung) und meinem Eintrag im Feld KartenNr (Nr.). Dazu habe ich ja im Beitrag #5 ein Bild angehängt, wo ersichtlich ist, welche Konstellationen es maximal gibt. Das Problem dabei ist, dass eigentlich
lstQuartettAuswahl die Haupt Vorgaben hat, unabhängig der 3 Konstellationen/Möglichkeiten.
Das Verzeichnis ist ja bekannt, z.B. II86_1961 (im bild_3 in Beitrag #5 das mittlere Beispiel). Das bzw. die Kartenbilder haben dann auch eine eindeutige Kennung, sind dann mit II86_1961_1a oder II86_1961_3d benamst.
Ergo war jetzt mein Gedanke, in lstQuartettAuswahl ist z.B. Quartett IV ausgewählt. Wenn ich dann unter KartenKZ auf IV/3 gehe, dann ist damit Karte 4c gemeint! Ob nun Symbole, oder Nummern in römisch oder was auch immer in der lstQuartettAuswahl steht, die Reihenfolge ist entscheidend ob es Quartett 4, 8 oder 1 ist. Die ist in der Liste immer gleich, von 1-15 oder A-O sortiert. Das ist erst einmal meine triviale Sicht der Sache :(.
Me.Parent.BilderPfad & Me.Parent.Verzeichnisname & Me!KartenKZDie Karten im Verzeichnis haben ja wie gesagt
IMMER folgende Kennungen, Verzeichnisname_1a-1d, 2a-2d, 3a-3d usw. Im Code muss ja irgendwie diese Logik abgebildet sein, was abe aus meine rSicht so nicht ist, oder?
Wenn lstQuartettAuswahl Zeile4 (können bis zu 20 sein) und Feld KartenKZ 3 (das sind immer nur 1-4), dann die Karte Verzeichnisname_4c aufrufen.
Das ist zum einen schon schwer zu erklären und zum anderen bin ich damit nun erst einmal heillos überfordert :(. Ansätze wie das aussehen könnte sind in "kleineren" nicht so schweren Sachen für mich auch umsetzbar, aber hier nicht. Hey und klar ist mir auch, dass ich nicht erwarten kann, dass du das jetzt weisst oder machst. Wenn dem so ist, dann muss ich primär wissen, ob das generell möglich ist. Dann kann/muss ich mich darum kümmern, wer mir da die Lösung "basteln" kann. So jetzt habe ich mal wieder verwirrt wahrscheinlich.
Gruß Andreas
PS: War die Fastnacht hart :)? Ich bin kein Fastnachter, sehe immer nur die anderen morgens Leiden, auch mein Frauchen.
Hallo Andreas,
ZitatWenn ich dann unter KartenKZ auf IV/3 gehe, dann ist damit Karte 4c gemeint!
das war mir jetzt neu, also muss "umgerechnet" werden?! Oder hast du schon eine andere Idee dazu?
Aber:
Gibt es eine sachlich oder sonstwie begründete Erklärung dafür, warum die Bildnamen nicht direkt aus den Bezeichnungen generiert werden können? Denn was machst du bspw., wenn im Beispiel-1 zu "Anker", "Boje", "Flagge" nachträglich noch "Dingsbums" hinzukommt? Dann stimmt doch die alte Nummerierung nicht mehr.
Abgesehen davon, machbar wäre bspw. folgendes:
Me.Parent.Parent.BilderPfad & Me.Parent.Parent.SpielVerzeichnis & "_" & Me.Parent.lstQuartettAuswahl.ListIndex +1 & getSuffix(Me!KartenNr)(Parent.Parent weil aus einem UUF heraus angestoßen)
wobei "getSuffix" erstmal eine fiktive Funktion ist, welche den zur lfd. Nummer zugehörigen Buchstaben liefern soll. Allerdings wäre es deutlich einfacher, wenn dieser Buchstabe direkt mit der Karte erfasst würde. Wenn du davon ausgehst, dass hier nur "/n" (für n = 1-4) oder "x" (für x = a-d) vorkommen kann, wäre das mAn eine ziemliche Einschränkung.
Soweit erstmal meine Gedanken hierzu. Am spannendsten dabei finde ich die Frage nach dem "Dingsbums". ;-)
Und nein, ich bin nicht Karnevals-geschädigt, der hat ja dieses Jahr eh nur eingeschränkt stattgefunden, ist aber auch sonst nicht so recht meine "Welt".
Hi,
Dingsbums :).
Zitatdas war mir jetzt neu, also muss "umgerechnet" werden?! Oder hast du schon eine andere Idee dazu?
Nein, habe ich nicht und deswegen gleich zum Dingsbums.
ZitatAber:
Gibt es eine sachlich oder sonstwie begründete Erklärung dafür, warum die Bildnamen nicht direkt aus den Bezeichnungen generiert werden können? Denn was machst du bspw., wenn im Beispiel-1 zu "Anker", "Boje", "Flagge" nachträglich noch "Dingsbums" hinzukommt? Dann stimmt doch die alte Nummerierung nicht mehr.
Die Erklärung ist simpel. Zwischen 197-1970 gab es ne Menge Spiele von einem Verlag, da gab es schlicht weg keine Nummerierung! Es gab nur Symbole. Ergo hat man Quartette nach diesen Symbolen Alphabetisch geordnet und die Karten natürlich auch! Weiterhin ist es von der Konvention für ein Webportal später einfacher, man hat eine einheitliche Namenskonvention. Das ist erst mal der Haupt Hintergrund. In der Db Dokumentiere ich das so genau wie möglich, sprich 1:1 wenn machbar. Ich habe dann nur versuchsweise hinter so KartenKZ wie Anker noch ein /1 dazu gemacht, weil man es eventuell braucht für das Feature wo ich gerne hätte.
In der DemoDB welche ich dir hochgeladen habe, da kannst du es an den Bilder nachvollziehen wie die Aussehen.
Aber an deinem VBA Codeschnipsel den du angefügt hast sieht man ja jetzt schon Ansatzweise, dass einfach anders ist :).
Gruß Andreas
Hallo,
ZitatDie Erklärung ist simpel.
beantwortet aber nicht wirklich meine Frage. Es geht mir um die "Lücke" die entsteht, wenn ein Quartett (vorübergehend?) nur unvollständig erfasst wird.
ZitatErgo hat man Quartette nach diesen Symbolen Alphabetisch geordnet und die Karten natürlich auch!
soweit ok, aber was ist, wenn ein Spiel nicht vollständig ist, erfasst du dann trotzdem auch die fehlenden Quartette/Spielkarten?
Worauf ich hinaus will ist, dass man die Quartette nicht einfach fortlaufend durchnummerieren kann, wenn die Nummer nicht gespeichert wird und wenn die Quartette evtl. unvollständig sind. Die Zuordnung der Bilder muss (von vornherein) eindeutig sein - verstehst du nun was ich meine?
ZitatIch habe dann nur versuchsweise hinter so KartenKZ wie Anker noch ein /1 dazu gemacht
Heißt das, anstelle von "/1" könnte da auch einfach "a" (oder "1") stehen - so wie es im Endeffekt gebraucht wird?
Nachtrag:
Ich denke, du könntest auf den Eintrag des Flaggen-Pfades verzichten, wenn du eine feste Ordnerstruktur festlegst und voraussetzt, dass sie einzuhalten ist.
Bilderpfad: Zugriffspfad zur Anwendung oder auch frei wählbar
Beispiel: X:\Quartette\Bilder\
Flaggenpfad: separater Unterordner für die Landesflaggen
Beispiel: X:\Quartette\Bilder\Flaggen\
Bilder verlagsbezogen: automatisch generiert aus Bilderpfad + Verlagsbezeichnung
Beispiel: X:\Quartette\Bilder\verlag\
Bilder verlags- und spielebezogen: automatisch generiert aus Bilderpfad + Verlagsbezeichnung + Spielverzeichnis
Beispiel: X:\Quartette\Bilder\verlag\spiel\
Das heißt du brauchst nur
einen dynamisch änderbaren Pfad, der Rest wird konstant (-> Flaggen) oder variabel (-> Verlag, Spiele-Verzeichnis) festgelegt.
Hi,
Zitatbeantwortet aber nicht wirklich meine Frage. Es geht mir um die "Lücke" die entsteht, wenn ein Quartett (vorübergehend?) nur unvollständig erfasst wird.
Zitat. Ergo hat man Quartette nach diesen Symbolen Alphabetisch geordnet und die Karten natürlich auch!
soweit ok, aber was ist, wenn ein Spiel nicht vollständig ist, erfasst du dann trotzdem auch die fehlenden Quartette/Spielkarten?
Ich bin Sammler, kein Messie :). Es bleibt deshalb simpel, da ich keine unvollständigen Spiele habe. Kommt so ein Spiel rein, dann fliegt es in den Müll. Ergo, den Vielleicht Fall gibt es nicht :). Aber selbst wenn dem so wäre, dann könnte man eine Dummykarte/Platzhalter für die Fehlkarte pflegen. Das Bild dafür wäre dann ein spezielles Dummybild für alle Fehlkarten. Aber, ein Fall, den ich nicht habe bzw. nie haben werde.
ZitatHeißt das, anstelle von "/1" könnte da auch einfach "a" (oder "1") stehen - so wie es im Endeffekt gebraucht wird?
Wie gesagt, in der DB dokumentiere ich 1:1. Der Zusatz /1 war nur versuchsweise, wenn man das benötigen sollte. Ja, man könnte dann also auch /a oder 1 schreiben. Aber ich will in der DB so genau wie möglich dokumentieren. Wenn ich also mit den Originaldaten auskomme, also im Beispiel Anker ohne /1 dann lieber ohne /1 (Spinner... ähmmm Sammler, ich weiss...).
ZitatNachtrag:
Ich denke, du könntest auf den Eintrag des Flaggen-Pfades verzichten, wenn du eine feste Ordnerstruktur festlegst und voraussetzt, dass sie einzuhalten ist.
Das ist wohl wegen dem Kopierthema, weil du das anschneidest, oder?
Aktuell habe ich ja folgenden Pfadverlauf:
W:\AccessDB\(Verlage)\, W:\AccessDB\Verlag\II86_1961\ und W:\AccessDB\Flaggen\
Das bedeutet, aktuell habe ich es ja eigentlich so wie du es aufgelistet hast, nur ohne das Zusatzverzeichnis Bilder. Den Flaggenpfad hatten wir doch generiert, weil sie eben unabhängig vom Verlag sind und ich die nicht "wild" im Rootverzeichnis liegen haben wollte. Verstehe ich gerade nicht bzw. sehe ich gerade deinen Wink mit dem Zaunpfahl nicht, wo man es einfacher gestalten könnte?
Gruß Andreas
PS: Danke dass du dich dem Thema wieder angenommen hast.
Hi,
Zitatda ich keine unvollständigen Spiele habe
OK, umso besser, ich kam nur drauf wegen des diesbezüglichen Datenfeldes ("komplett") in der Spieletabelle.
Zitateigentlich so wie du es aufgelistet hast, nur ohne das Zusatzverzeichnis Bilder
Das war auch nicht als Zusatzverzeichnis (=eigenständiger Order mit dem Namen "Bilder") von mir gedacht.
So gesehen entspricht das Beispiel "X:\Quartette\Bilder\" deinem aktuellen Verzeichnis "W:\AccessDB\".
ZitatDas bedeutet, aktuell habe ich es ja eigentlich so wie du es aufgelistet hast
So ist es und das würde ich auch so beibehalten und dann brauchst du auch kein zweites Datenfeld für den Flaggenpfad, weil der einfach als Unterordner mit diesem Namen festgelegt wird. Ich bin der Meinung, dass man das in diesem Fall durchaus so machen kann.
ZitatWie gesagt, in der DB dokumentiere ich 1:1.
Gibt es denn eine "Rangordnung" bei den Quartettkarten, d.h. ist eine als die erste, zweite etc. gekennzeichnet bzw. zu identifizieren - und wenn ja, wie?
ZitatDer Zusatz /1 war nur versuchsweise, wenn man das benötigen sollte.
Aber es muss doch eine Grundlage dafür geben, welche Karte du mit /1 oder /2 etc. bezeichnest?
Und Ja, ich denke du benötigst das. Du brauchst eine manuell vergebene "Nr.", spätestens dann, wenn du die Bilder zuordnen willst, ohne jetzt für jede Karte wieder einen extra Bildnamen speichern zu müssen.
Hi,
das Feld komplett habe ich in der Tat dafür gedacht, sofern ich die DB mal im Massenrollout zu HUnderttausend verkaufe, dann muss ich an die Messies denken ;D. Aber da habe ich dir ja gesagt, wenn das eintrifft dann gibt es auch ein fettes Honorar nachträglich!
ZitatSo ist es und das würde ich auch so beibehalten und dann brauchst du auch kein zweites Datenfeld für den Flaggenpfad, weil der einfach als Unterordner mit diesem Namen festgelegt wird. Ich bin der Meinung, dass man das in diesem Fall durchaus so machen kann.
Heißt, du würdest das Datenfeld Flaggen aus dem UFo entfernen? Da kann ich dir jetzt nicht ganz folgen, wie ich das dann bewerkstelligen will wenn ich das anzeigen will wie in der DemoDB die ich dir hochgeladen habe ???
ZitatGibt es denn eine "Rangordnung" bei den Quartettkarten, d.h. ist eine als die erste, zweite etc. gekennzeichnet bzw. zu identifizieren - und wenn ja, wie?
Ja klar, bei den Spielen, wo die Karten udn Quartette auch schon klar definiert sind ist es logisch, da sind die Karten ja mit 1a-1d, 2a-2d usw. gekennzeichnet. Ebenso bei den Spielen mit Römischen Zahlen. Bei Spielen mit Symbolen, da geht man nach Alphabet vor (siehe bild1 bzw. DemoDB Datensatz ID 495).
Anker =1
Boje = 2 usw.
Im Quartett Anker (Quartett 1) ist MS Carl Offerson aufgrund Alphabet Anordnung Karte a (1a), MS Johann Schulte Karte c (3c) usw. Das ist in dem Fall die Rangordnung. Anders kann ich das nicht lösen, außer eben alphabetisch. Aber funktioniert. Die Bilder sind dann auch so nummeriert im Verzeichnis. Zusätzlich habe ich dann im KartenKZ Feld diese /1 oder /3 dazu gemacht als Bestätigung. Aber die Sortierung im Steuerelementinhalt sollte das primär regeln.
So jetzt ab in die Falle. Ich freu mich, wenn du dran bleiben könntest, auch wenn ich nicht die Zeit deiner Aufwände abschätzen kann. Ich hab dir ja gesagt, du wirst es nicht umsonst machen!
Liebe Grüße und Gn8
Andreas
ZitatHeißt, du würdest das Datenfeld Flaggen aus dem UFo entfernen?
In erster Linie würde ich das Datenfeld "Flaggenpfad" in der "tblBildPfad" entfernen - ja und dann natürlich auch das nach langen Suchen gefundene Steuerelement namens "Flaggenpfad" im Unterformular "frmErfassungUfoQuart" - und, naja, natürlich auch jeglichen Bezug darauf.
Was die Reihenfolge betrifft, so hätte ich ein besseres Gefühl, wenn sie explizit angegeben würde, aber darüber lass uns mal ruhig noch eine Nacht schlafen. ;-)
Ich verstehe grad nur nicht, dass du "Experimente" mit "/1" oder "a" etc. gemacht hast, wenn diese Bezeichnung kein Bestandteil der Karte ist. Warum dann nicht gleich "1-4" oder "a-d" eintragen?
Ebenfalls gute n8!
PS:
Habe mir eben noch die Kartenbeispiele angesehen, und verstehe das mit der (teilw. vorhandenen) Nummerierung nun besser.
Hi und guten Morgen,
wünsche wohl geruht zu haben :).
Zitat von: MaggieMay am Februar 09, 2016, 23:13:44
Was die Reihenfolge betrifft, so hätte ich ein besseres Gefühl, wenn sie explizit angegeben würde, aber darüber lass uns mal ruhig noch eine Nacht schlafen. ;-)
Ich verstehe grad nur nicht, dass du "Experimente" mit "/1" oder "a" etc. gemacht hast, wenn diese Bezeichnung kein Bestandteil der Karte ist. Warum dann nicht gleich "1-4" oder "a-d" eintragen?
Okay, in der DB habe ich das nur experimentell gemacht, weil ich die Anfrage zu diesem Feature gestellt habe und damit zeigen wollte, dass ich da entgegenkommen kann, wenn notwendig.
Aber, grundsätzlich will ich es so
nicht haben was die Doku in der DB angeht, eben nur wenn unbedingt nötig, dann würde ich es machen.
Auch hier muss ich ja wieder davon ausgehen, dass jemand es so dokumentiert, wie es in der Realität auch ist (wenn ich die DB Millionfach veräußert habe ;D ). Deshalb sollte/muss die Logik "Wenn lstQuartettAuswahl oberster Eintrag (gleich 1 oder A oder I oder Anker) --> und KartenKZ (gleich Rangordnung A oder Zeile1) --> dann Bild (Verzeichnisname_1a.png) eben als Ansatz ziehen.
Das sind schon Ansprüche, ich weiss :(.
ZitatPS:
Habe mir eben noch die Kartenbeispiele angesehen, und verstehe das mit der (teilw. vorhandenen) Nummerierung nun besser.
Das ist doch schon mal gut.
Ich werde jetzt auch mal ein paar Menschen glücklich machen und denen Löcher in unsere Firewalls bohren, damit die Arbeiten können.
Ich wünsch dir trotz all meinen komplexen Wünschen, wir mir auch, einen schönen Tag auf der Arbeit ;).
Gruß aus dem Büro
Andreas
Hallo,
natürlich kann man sowohl bei der Quartettliste als auch bei den Karten für die Bestimmung des Namens der Bilddatei allein nach der Reihenfolge der Anzeige gehen, wenn die Eingabe vollständig und mit entsprechender Sorgfalt vorgenommen wird - und wenn du das gerne so möchtest.
Das könnte dann folgendermaßen aussehen:
Me.Parent.Parent.BilderPfad & Me.Parent.Parent.SpielVerzeichnis & "_" & _
Me.Parent.lstQuartettAuswahl.ListIndex +1 & _
Choose(Me.CurrentRecord, "a", "b", "c", "d")
Hi Maggie,
Zitat von: MaggieMay am Februar 10, 2016, 12:42:44
- und wenn du das gerne so möchtest.
Das könnte dann folgendermaßen aussehen:
Me.Parent.Parent.BilderPfad & Me.Parent.Parent.SpielVerzeichnis & "_" & _
Me.Parent.lstQuartettAuswahl.ListIndex +1 & _
Choose(Me.CurrentRecord, "a", "b", "c", "d")
Wenn es machbar ist, dann hätte ich das gerne so :). Ich habe es jetzt mal als Doppelklick-Aktion auf dem Feld KartenKZ hinterlegt. Da ich ja will, dass er es in einem Formular öffnet (genauso wie wenn man in der Demo-DB links das Bild/Deckblatt doppelt klickt), dachte ich, es muss aktuell dann so aussehen:
Private Sub KartenKZ_DblClick(Cancel As Integer)
DoCmd.OpenForm "frmDeckblatt", acNormal, , , , acDialog, Me.Parent.Parent.BilderPfad & Me.Parent.Parent.SpielVerzeichnis & "_" & _
Me.Parent.lstQuartettAuswahl.ListIndex 1 & _
Choose(Me.CurrentRecord, "a", "b", "c", "d")
End SubDann springt er aber sofort an
ListIndex 1 & _ und markiert die 1 und bringt die Fehlermeldung Anweisungsende (siehe Bild).
Das mit dem DoCmd passt ja so, oder?
Gruß Andreas
Hi,
Me.Parent.lstQuartettAuswahl.ListIndex [b][color=red]+ [/color][/b]1 & _
da ist das Plus-Zeichen verloren gegangen, vmtl. weil ich ein Leerzeichen vergessen hatte.
(+ 1 weil der Index bei 0 beginnt)
Hi,
Zitat von: MaggieMay am Februar 10, 2016, 18:10:16
Me.Parent.lstQuartettAuswahl.ListIndex [b][color=red]+ [/color][/b]1 & _
da ist das Plus-Zeichen verloren gegangen, vmtl. weil ich ein Leerzeichen vergessen hatte.
(+ 1 weil der Index bei 0 beginnt)
Komisch, weil im Post von dir ist es ja da. Dann ist das mir wohl beim kopieren abhanden gekommen, mal wieder typisch für mich :(. Ich habe das jetzt geändert und hab trotzdem noch ein Prob, dass es nicht geht. Du hast offensichtlich keines in der Demo-DB, in welcher ich es auch gerade teste und verprobe.
Ich habe die Doppelklick-Aktion auf das Feld KartenKZ gelegt. Wenn ich dann den Doppelklick durchführe, startet er den Debugger mit der Meldung
Laufzeitfehler 2465:
Anwendungs- oder objektdefinierter Fehler. Wenn ich auf Debuggen gehe, dann springt er zum Code und markiert ihn komplett gelb, mit Pfeil auf die letzte Zeile weisend, also auf
Choose(Me.CurrentRecord, "a", "b", "c", "d").
Bedeutet, er findet die a b c d nicht? Bilderpfad kennt er, Spielverzeichnis ist da, lstQuartettauswahl Index hat er :-\. Was meldet der bei dir in der Demo-DB??
Gruß Andreas
Hi,
Zitatweil im Post von dir ist es ja da. Dann ist das mir wohl beim kopieren abhanden gekommen
ich vermute eher, dass bei "+1" das Plus als (vermeintlich überflüssiges) Vorzeichen einfach entfernt wird und erst bei " + 1" die Additionsabsicht erkannt wird.
Den Doppelklick hatte ich noch nicht getestet, musste auch erstmal das Textfeld dafür aktivieren. Dann stellte sich heraus dass ein Feldname nicht stimmte.
So sollte es nun eigentlich funktionieren:
Private Sub KartenKZ_DblClick(Cancel As Integer)
Dim strPfad As String
strPfad = Me.Parent.Parent.Form!BilderPfad & _
Me.Parent.Parent.Form![b]txtVerzeichnisname [/b]& "_" & _
Me.Parent.Form!lstQuartettAuswahl.ListIndex + 1 & _
Choose(Me.CurrentRecord, "a", "b", "c", "d")
DoCmd.OpenForm "frmDeckblatt", acNormal, , , , acDialog, strPfad
End Subwenn es bei dir nicht noch das "Zwischen-Verzeichnis" als separaten Ordner gäbe.
Demnach muss der Pfad folgendermaßen zusammengesetzt werden:
strPfad = Me.Parent.Parent.Form!BilderPfad & _
Me.Parent.Parent.Form![b]txtVerzeichnisname [/b]& "\" & _
Me.Parent.Parent.Form![b]txtVerzeichnisname [/b]& "_" & _
Me.Parent.Form!lstQuartettAuswahl.ListIndex + 1 & _
Choose(Me.CurrentRecord, "a", "b", "c", "d")Zuallerletzt fehlt dann noch der Dateityp, der an den Pfad anzuhängen wäre, in deinem Fall wohl ".png":
strPfad = Me.Parent.Parent.Form!BilderPfad & _
Me.Parent.Parent.Form![b]txtVerzeichnisname [/b]& "\" & _
Me.Parent.Parent.Form![b]txtVerzeichnisname [/b]& "_" & _
Me.Parent.Form!lstQuartettAuswahl.ListIndex + 1 & _
Choose(Me.CurrentRecord, "a", "b", "c", "d") & ".png"
Hi,
wow, das ist mal eine Codeschnipsel. Ich erinnere mich noch an deine Aussage zu mitte des Threads....Ich weiss eigentlich nicht, woran es noch hängt, es sind doch alle Vorgaben dazu da :).
Zitat von: MaggieMay am Februar 10, 2016, 21:12:46
ZitatSo sollte es nun eigentlich funktionieren:
Private Sub KartenKZ_DblClick(Cancel As Integer)
Dim strPfad As String
strPfad = Me.Parent.Parent.Form!BilderPfad & _
Me.Parent.Parent.Form![b]txtVerzeichnisname [/b]& "\" & _
Me.Parent.Parent.Form![b]txtVerzeichnisname [/b]& "_" & _
Me.Parent.Form!lstQuartettAuswahl.ListIndex + 1 & _
Choose(Me.CurrentRecord, "a", "b", "c", "d")
DoCmd.OpenForm "frmDeckblatt", acNormal, , , , acDialog, strPfad
End Sub[/code]
Es kommt leider noch ein Fehler. Es öffnet sich wieder das Debugfenster, Laufzeitfehler 2220:
Microsoft Access kann die Datei W:\AccessDB\ass\647_1969\647_1969_1a nicht öffnen.
Wenn ich Debuggen starte, dann springt er zu Form_frmDeckblatt
Option Compare Database
Option Explicit
Private Sub Form_Open(Cancel As Integer)
Me.imgqryDeckblatt.Picture = Me.OpenArgs
End Sub
wobei er die Zeile Me.imgqry... gelb markiert.
Wenn ich es richtig deute, dann fehlt ihm die Endung, kann das sein? Er kann die Datei 647_1969_1a nicht öffnen.
Zum einen, weil es keine Dateienduzng hat und somit keiner Bilddatei entspricht und es gibt ja auch nur die Datei II86_1961_1a.png. Muss man da bei dem 2. Eintrag Me.Parent.Parent.Form![b]txtVerzeichnisname [/b]& "_" & _ die Dateiendung .png noch mitgeben? Das Ziel vor Augen und doch noch mal hart eingebremst :(
Gruß Andreas
Hallo Andreas,
wenn du deinen letzten Beitrag noch einmal überarbeiten könntest, wäre er evtl. leichter zu verstehen, da stimmt etwas nicht mit den Code/Quote-Tags.
Vielleicht hilft es auch, meinen letzten Beitrag noch einmal komplett zu lesen, da ich ihn (wie so oft, leider) nachträglich mehrfach überarbeitet/ergänzt hatte.
Apropos:
ZitatMicrosoft Access kann die Datei W:AccessDBass647_1969647_1969_1a nicht öffnen.
Die fehlenden "\" sollten eigentlich in den Teilstrings enthalten sein.
Was ist denn da wieder geändert worden?
Hi,
Zitat von: MaggieMay am Februar 10, 2016, 21:41:02
Vielleicht hilft es auch, meinen letzten Beitrag noch einmal komplett zu lesen, da ich ihn (wie so oft, leider) nachträglich mehrfach überarbeitet/ergänzt hatte.
Jo, hab erst jetzt gesehen, dass du um 21:30 den Zusatz/Änderung mit & ".png" gesehen. Jetzt geht es auch, danke.
ZitatMicrosoft Access kann die Datei W:AccessDBass647_1969647_1969_1a nicht öffnen.
Die fehlenden "\" sollten eigentlich in den Teilstrings enthalten sein.
Was ist denn da wieder geändert worden?
[/quote]
Von mir nichts, ich hatte nur & ".png" vergessen, thats it. Vielen Dank Maggie.
Gruß Andreas