Daten aus Feld weiterverarbeiten

juan_

juan_

König
Hallo,

Hierbei handelt es sich zwar um Access, aber ich glaube trotzdem, dass einige Helfen können, da es sich wahrscheinlich mehr um ein logisches Problem handelt;)


Undzwar habe ich 2 Dropdownfelder:
[Art] - [Datum | #]

So, je nachdem was ich nun bei "Art" wähle, bekomme ich verschiedene Menupunkte im 2. Dropdownfeld. Alles schön und gut.
Das Problem ist, dass ich nun gerne mit dem Inhalt des 2. genauso weiterarbeiten möchte, wie mit dem ersten.
Allerdings ist hier der Inhalt nicht eindeutig, da es 2 Werte beinhaltet (Datum und ein -durch eine Zählschleife generierten- Integer).
Was ich nun bräuchte, ist das im Hintergrund mit einer Datum-Rang-ID (Die es in der Tabelle gibt) gearbeitet wird, damit ich zB in einem 3. Dropdownfeld (oder Button) sagen kann : "wähle id=2.dropdownfeld". Falls ihr versteht was ich meine ;)
(bis jetzt kann ich nur das Datum verarbeiten, aber problematisch wird es, wenn ich 2,3,x Gruppen pro Tag starte und ich Auswahl nicht mehr eindeutig ist.. daher auch die Zählschleife)


Wie kann ich nun eine Abfrage generieren, die im Hintergrund dieses 2.Feldes praktisch die Datensätze nach der Datum-Integer Kombination durchsucht, und dann deren IDs weiterverwendet.

So sieht Spaß im Moment aus:
gruppen(gruppen_id,startdatum,art)
user_gruppen.abfrage(gruppen_id,startdatum,op_art,rang) <- das 2. Dropdownfeld. rang ist der neugenerierte Integer. Um euch mal zu zeigen wie der Spaß dann ausschaut : Bild1 im Anhang.

Hier ist die dazugehörige Abfrage :
Code:
SELECT gruppen.gruppen_id, gruppen.startdatum, gruppen.op_art (SELECT count(*) FROM gruppen as t WHERE t.gruppen_id<=gruppen.gruppen_id AND t.startdatum=gruppen.startdatum AND t.op_art=gruppen.op_art) AS Rang, op_art
FROM gruppen;

Wie gesagt, ich bräuchte jetzt noch die Option, dass Datum, Rang und am besten noch die Art verglichen werden und die dazugehörige gruppen_id "rausgefiltert" wird.

Hoffe ich konnte mich verständlich ausdrücken und habe alle Infos geliefert!

Falls noch Fragen offen sind, ich lese mit ;)

ciao


//Edit:
Achso, hier ist noch eine Patientenabfrage, die per Buttonklick gestartet wird. Im Moment wird nach dem Datum gefiltert, was aber zu uneindeutig ist:
Code:
SELECT patienten.patienten_id, patienten.vorname, patienten.name, gruppen.op_art, gruppen.gruppen_id, gruppen.startdatum
FROM gruppen INNER JOIN patienten ON gruppen.gruppen_id=patienten.gruppen_id
[b]WHERE gruppen.startdatum=Forms!GUI!date_field[/b];
 

Anhänge

  • menu.gif
    menu.gif
    2,6 KB · Aufrufe: 11
Zuletzt bearbeitet:
ok, dann formuliere ich die Frage um: wie kann ich auf die 2. Spalte im Dropdownfeld zugreifen (vllt habe ich mich auch einfach nur zu kompliziert ausgedrückt)?

ciao
 
Da wirste wahrscheinlich nur mit Stringfunktionen weiter kommen.
Also scheibe den Inhalt des Dropdown Feldes auch in die value="" Attribute, und beim absenden machste das so:
PHP:
$spalte2 = explode(" | ", $_POST['dropdown']);

Was auch ginge, du übergibst im value="" Attribut einfach die ID des jeweiligen Datensatzes, und holst dir dann die Spalte aus der DB.
Code:
select spalte2 from table where datensatz=2;
2 repräsentiert da den Inhalt des value="" Attributs.
 
Hallo,
man wird es nicht glauben, aber die Hilfefunktion von der m$-Homepage hat mich auf die zündende Idee gebracht :)
(ich glaube, dass du das Gleiche meinst)

Undzwar habe ich mein Sql-Querry (Patientenabfrage) um die Abfrage der gruppen_id erweitert und mit im Dropdownfeld ausgeben lassen. Da der User die IDs aber nicht sehen soll, habe ich die 1. Spalte auf 0cm Größe gesetzt. Nun kann ich das Datum auswählen, habe aber die korrekte ID im Hintergrund zur Weiterverarbeitung!

Warum das klappt kann ich leider nicht sagen, da Access (laut m$) nur mit sichtbaren Werten aus der Spalte arbeiten kann. Es klappt aber scheinbar auch so, mir also schnuppe :)

ciao

//Nachtrag:
Binden einer Spalte aus einem Listenfeld, Kombinationsfeld oder einem Dropdown-Listenfeld

*

In einem Formular Geben Sie im Gebundene Spalte-Eigenschaftenfeld des Listenfeldes oder des Kombinationsfeldes eine Zahl an, die der Position der zu bindenden Spalte im Listen- bzw. Kombinationsfeld entspricht. Geben Sie beispielsweise 1 ein, um die erste Spalte des Listen- bzw. Kombinationsfeldes an das zugrunde liegende Feld, das für die Steuerelementinhalt-Eigenschaft angegeben ist, zu binden. Schließen Sie beim Zählen von Spalten auch die ausgeblendeten Spalten mit ein.

Wenn Sie die Gebundene Spalte-Eigenschaft auf 0 festlegen, speichert Microsoft Access den Listenindex (Listenindex: Die Reihenfolge der Nummern für Einträge in einer Liste, beginnend bei 0 für den ersten Eintrag, 1 für den zweiten Eintrag usw.) statt des Wertes einer der Spalten. Dies ist nützlich, wenn Sie anstelle des Listenwertes die Reihenfolge der Werte speichern möchten.
Quelle:http://office.microsoft.com/de-at/access/HP051877861031.aspx
 
Zuletzt bearbeitet:

Ähnliche Themen

(AufAbwegen) - MSSQL Server Statement - Syntax

dovecot und postfix Konfiguration Problem

PostgreSQL und Spaltenalias

Access / OOBase - Dropdown filter?

Bei PostgreSQL als anderer als der angemeldete Nutzer verbinden - Wo liegt der Fehler

Zurück
Oben