![]() |
![]() |
|
![]() |
![]() |
|
Programmierung Rat & Tat für Programmierer |
![]() |
|
Themen-Optionen | Ansicht |
![]() |
#1 |
Inventar
![]() Registriert seit: 06.01.2000
Alter: 43
Beiträge: 2.232
|
![]() hi, ich möchte das listfeld definieren, leider meint er immer, dass ich das nicht setzen kann
weiss wer wie ich das machen kann ? Private Sub Report_Activate() Set con = CurrentProject.Connection Set rstds = New ADODB.Recordset Set rstVerleih = New ADODB.Recordset Set rstAdresse = New ADODB.Recordset Set rstTableOpen = New ADODB.Recordset Dim str_suchkriterium As String int_g_mitarbeiterid = 1 ds = "select Filiale_ID from tbl_mitarbeiter where ID = " & int_g_mitarbeiterid & ";" 'Listet FilialID des Mitarbeiters auf rstds.Open ds, con, adOpenDynamic, adLockOptimistic rstAdresse.Open "tbl_filiale", con, adOpenDynamic, adLockOptimistic If (rstAdresse!ID <> rstds!filiale_id) Then str_suchkriterium = "[ID] = " + "'" + rstds!filiale_id + "'" rstAdresse.Find str_suchkriterium, adSearchForward End If rstds.Close txt_filiale = rstAdresse!Adresse rstAdresse.Close txt_datum = Date rstVerleih.Open "tbl_verleih", con, adOpenDynamic, adLockOptimistic rstVerleih.MoveLast txt_rnummer = rstVerleih!ID txt_betrag = rstVerleih!Gesamtbetrag 'ds = "SELECT tbl_cdarchiv.ID, tbl_cdarchiv.CDName FROM tbl_verleihzeile, tbl_cdarchiv WHERE " _ & " (((tbl_verleihzeile.Lagerbestandcd_ID)=[tbl_cdarchiv].[id]) AND ((tbl_verleihzeile.Verleih_ID)=rstVerleih!id));" lst_artikel.RowSource = "SELECT tbl_cdarchiv.ID, tbl_cdarchiv.CDName FROM tbl_verleihzeile, tbl_cdarchiv WHERE " _ & " (((tbl_verleihzeile.Lagerbestandcd_ID)=[tbl_cdarchiv].[id]) AND ((tbl_verleihzeile.Verleih_ID)=rstVerleih!id));" End Sub
____________________________________
20x Die Ärzte LIVE@2008 Moskau, Prag, Eupen, 6x Berlin etc. ![]() |
![]() |
![]() |
![]() |
#2 |
Master
![]() Registriert seit: 22.03.2000
Alter: 66
Beiträge: 550
|
![]() dein posting ist für mich nicht sehr aufschlussreich
wenn ich's richtig kapiere willst du zur laufzeit ein DBList füllen. die rowsource-eigenschaft kann aber zur laufzeit nicht geändert werden. ist bei diesem steuerelement nicht vorgesehen. du kannst aber ein recordset erstellen, und dann ein listenfeld mit den daten füllen. wenn es viele zeilen sind, kann das aber dauern. dann würde ich ein grid verwenden. falls ich es falsch verstanden habe, bitte eine möglichst genaue beschreibung vom gewünschten effekt. bitte mit folgenden angaben: welche VB-Version welche controls stehen dir zur verfügung in welchem container soll das control sein was soll mit den angezeigten daten weiter geschehen WB |
![]() |
![]() |
![]() |
#3 |
Inventar
![]() Registriert seit: 06.01.2000
Alter: 43
Beiträge: 2.232
|
![]() hi
access xp ich hab ne abfrage gemacht "ds" die soll nun im listfeld des berichtes stehen i weiss ned was controls, container etc sind nur dass ich die abfrage ds hab, dass im listfeld des berichtes angezeigt werden soll und das ich ADO verwende
____________________________________
20x Die Ärzte LIVE@2008 Moskau, Prag, Eupen, 6x Berlin etc. ![]() |
![]() |
![]() |
![]() |
#4 |
Master
![]() Registriert seit: 22.03.2000
Alter: 66
Beiträge: 550
|
![]() hi!
sorry, auf access war ich nicht vorbereitet mit access habe ich bei office 97 aufgehört, weil alle 2 jahre eine neue version kommt, die mit der vorigen nicht kompatibel ist. vergiss was ich geschrieben habe in dunkler erinnerung habe ich aber noch, daß man bei access die rowsource-eigenschaft mit vb einstellen kann. auch eine sql-anweisung ist zulässig. soweit sollte alles in ordnung sein. vorher muß die rowsourcetype-eigenschaft eingestellt sein. in deinem fall ist wahrscheinlich "table/query" die richtige einstellung. vielleicht funktioniert es auch bei xp noch so. ein versuch kann nicht schaden. WB |
![]() |
![]() |
![]() |
#5 |
Inventar
![]() Registriert seit: 06.01.2000
Alter: 43
Beiträge: 2.232
|
![]() ja bei formularen funkts ja auch
nur bei berichten ned.. aba irgendwie muss ja gehen sonst wärs ja unsinnig listfelder in berichte einfügen zu können
____________________________________
20x Die Ärzte LIVE@2008 Moskau, Prag, Eupen, 6x Berlin etc. ![]() |
![]() |
![]() |
![]() |
#6 |
Master
![]() Registriert seit: 22.03.2000
Alter: 66
Beiträge: 550
|
![]() eingeschränkte funktionen der steuerelemente sind mir nicht neu.
in vb6 gibt's das auch in ähnlicher weise. aber warum brauchst du in einem bericht ein listenfeld? wenn der bericht gedruckt wird, was eigentlich der sinn ist, kann man ja nichts mehr auswählen oder beeinflussen. wenn du nur eine ausgabe am bildschirm willst, muss es kein bericht sein. in deiner sql-anweisung sehe ich nur eine variable. wenn du die datensätze für den bericht filtern willst, sollte das schon früher geschehen. also wenn es kein geheimnis ist, dann sag mir, was du wirklich erreichen willst. ich bin ziemlich sicher, daß man das gewünschte ergebnis erreichen kann. mit access ist ja fast alles machbar. aber um den weg zu finden, sollte man das ziel kennen. WB |
![]() |
![]() |
![]() |
#7 |
Inventar
![]() Registriert seit: 06.01.2000
Alter: 43
Beiträge: 2.232
|
![]() also .. es isn schulprojekt
der kunde wählt aus welche filme oder musikcds er ausborgen will und bekommt ne rechnung (bericht) hier soll dann eben filiale etc drinstehen und dann alle ausgeliehenen artikel und in das listfeld wollte ich die artikel schreiben
____________________________________
20x Die Ärzte LIVE@2008 Moskau, Prag, Eupen, 6x Berlin etc. ![]() |
![]() |
![]() |
![]() |
#8 |
Master
![]() Registriert seit: 22.03.2000
Alter: 66
Beiträge: 550
|
![]() na prima, dann brauchts kein listenfeld im bericht.
sowas habe ich vor jahren für einen freund gemacht, nur das es keine cd's waren. damals habe ich noch mit access gearbeitet. ich versuche einmal aus deinem code auf die grundlage zu kommen. geht ungefähr so: tbl_filiale tbl_mitarbeiter tbl_verleih - enthält den geschäftsfall tbl_cdarchiv - entält den lagerbestand tbl_verleihzeile - ein datensatz pro verliehener cd frm_verleih ein formular mit unterformular - combo zum auswählen des mitarbeiters die filiale wird wird festgelegt, und di id in tbl_verleih gespeichert. anzeige im form nicht notwendig, aber möglich - felder für datum, kunde, ... was auch immer gespeichert wird falls zb. eine kundenkartei (tbl_kunden) existiert, combo verwenden. - verleihid anzeige im form nicht notwendig, aber speichern frm_verleihunterf |
![]() |
![]() |
![]() |
#9 |
Master
![]() Registriert seit: 22.03.2000
Alter: 66
Beiträge: 550
|
![]() sorry, ich hab einen absturz gebaut. ich schreib das ganze nochmal
na prima, dann brauchts kein listenfeld im bericht. sowas habe ich vor jahren für einen freund gemacht, nur das es keine cd's waren. damals habe ich noch mit access gearbeitet. ich versuche einmal aus deinem code auf die grundlage zu kommen. geht ungefähr so: tbl_filiale tbl_mitarbeiter tbl_verleih - enthält den geschäftsfall tbl_cdarchiv - entält den lagerbestand tbl_verleihzeile - ein datensatz pro verliehener cd frm_verleih ein formular mit unterformular - combo zum auswählen des mitarbeiters die filiale wird wird festgelegt, und di id in tbl_verleih gespeichert. anzeige im form nicht notwendig, aber möglich - felder für datum, kunde, preis, ... was auch immer gespeichert wird falls zb. eine kundenkartei (tbl_kunden) existiert, combo verwenden. - verleihid anzeige im form nicht notwendig, aber speichern - ok schaltfläche frm_verleihunterf - darsrellung tabellenansicht - mit nachschlageassistent cd auswählen. die ganze zeile wird angezeigt (titel, preis, ..), aber nur die id gespeichert. ich glaube damals habe ich eine hilfstabelle verwenden müssen. vielleicht find ich es noch. die cd wird als verliehen markiert, damit sie nicht ein 2. mal ausgegeben werden kann. auch in der auswahlliste darf sie nicht mehr erscheinen. geamtpreis aktualisieren. auf ok klicken - der bericht wird gedruckt. als einziges argument muß die verleihid übergeben werden, alles andere kann er aus den tabellen holen. ich glaube das ist so ziemlich die minimalversion. praktischer wird's, wenn man im formular nicht nur neue vorgänge anlegen kann, sondern auch die früheren anzeigen kann. eine suchfunktion ist auch noch ein goodie. kommt auf deine lehrer an. die cd-verwaltung auch nicht vergessen! ich schau jetzt noch ob ich das alte projekt noch finde. falls ja, melde ich mich nochmal. WB |
![]() |
![]() |
![]() |
#10 |
Master
![]() Registriert seit: 22.03.2000
Alter: 66
Beiträge: 550
|
![]() ich hab die beschreibung von dem damaligen project gefunden
im prinzip habe ich alles so gemacht wie vorher gepostet, nur halt aufwendiger und mit zusätlichen funktionen z.b. für eingehende lieferungen, usw. tbl_artikel - alle angaben bis hin zu mwst-satz, handelsspanne,.... tbl_bestelldetails - verbindet artikelid und bestellid. zusätzlich verwende ich noch eine lfd.nr., um die zeilen in der bestellung zu mummerieren, und die anzahl der artikel. anzahl wirst du aber nicht brauchen. tbl_bestellungen - angaben über kunden, datum, versandadresse, frachtkosten,.... und wie gesagt, für den Bericht genügt die bestellid als parameter. viel spaß WB |
![]() |
![]() |
![]() |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
|
|