Hallo Andreas, > > > > openSUSE 11.2 mit der original OpenOffice.org 3.1.1 und der > > Base-Datenbank mit integrierter HSQLDB. > > Das macht wirklich den entscheidenden Unterschied. Hoffentlich benutzt > Du diese Sun Java. Andernfalls könnte es unspezifische Probleme mit Base > geben.
Nach leidigen anderen Erfahrungen mit Abstürzen vor allem bei der Erstellung von Datenbanken mache ich es so. > > > Aufgabe ist ein Kassensystem. Schon beim Anzeigen der zu zahlenden > > Beträge bedarf es eines Makroeinsatzes, wenn das Ganze nicht über > > zusätzliche Buttons laufen soll, denn an Eingabemöglichkeiten > > funktioniert das Ganze wie an der Supermarktkasse: Datum im > > Hauptformular, im Subformular nur Anzahl und Barcodenummer (mit Scanner > > einzulesen). In einem Nebenformular wird über eine Abfrage eine > > Produktliste mit Einzelpreis und Gesamtpreis sowie der Summe des Einkaufs > > erstellt. Müsste also bei Änderung in einem Subformular im anderen eine > > Aktualisierung erfolgen. Geht nur über Mausbewegung zu einem Button im > > anderen Formular mit Drücken und zurück zum Eingabeformular oder eben per > > Makros. > > Also irgendein Einzeiler ähnlich wie "subform.rowset.refresh()" wenn > eine Anzahl eines Artikel zur Rechnung hinzugefügt wurde. Ja, ganz so einzeilig ist es nicht, da das Subformular natürlich mit Namen angesprochen werden soll und die Schüler das Ganze auch verstehen sollten. Das gesamte Subformular (weil eine Tabelle und darunter dann wieder die Summe) werden in das refresh() mit einbezogen. > Ohne besagten Barcodescanner würde man die Artikel per Tastatur aus > einem Listenfeld fischen und wennn alle Artikel eingeben sind, einen > Knopf drücken, um die Summen anzuzeigen. Ohne besagten Barcodescanner würden die Schülerinnen und Schüler aber nur mit halb so viel Begeisterung bei der Sache sein. Erst der Scanner vermittelt ihnen das Feeling, etwas erstellt zu haben, was mit ihrer Erfahrungswelt zu tun hat. Die Möglichkeit mit Listenfeld haben wir vorher ausprobiert und dann entschieden: An der echten Kasse geht das schneller, Mengenangabe und Barcode und die Ware ist über die Theke gegangen. Langsam ist nur der Kunde, der sein Geld zücken muss ... > Wie ware es denn mit einem Eingabeformular, das wirklich nur zur > Eingabe dient und einem Report, der am Ende die Rechnung zum Ausdrucken > mit allen Berechnungen liefert? Das ganze läßt sich mittels einer > Hilfstabelle und einer Abfrage miteinander verbinden. > Eingabeformular, um einen Datensatz (ein Bild) per Auswahl anzuzeigen > und der Report druckt nur den im Formular angezeigten Datensatz: > http://user.services.openoffice.org/en/forum/download/file.php?id=3751 Die Variante mit Rechnungen hatte ich schon - und bin damit etwas über das Ziel hinausgeschossen, hatte dann auch die Scanner nur kurz im Einsatz. Unsere Datenbank besteht bisher nur aus 4 kleinen Tabellchen ohne irgendeine Adressverwaltung, an die die Rechnung geht. Und ehrlich: Das ist erst einmal besser so. Denn ein Bericht, erstellt mit Base, macht jeden Zeitvorteil des Barcodescanners zunichte. Da würde ich gegebenenfalls lieber bei gewünschtem Ausdruck mit druckbaren und nicht druckbaren Feldern in einem Formular arbeiten, Button "Kassenbon" dazu und fertig ist das Ganze. Die Übersicht soll sofort da sein und nicht irgendwo voller Überraschung dann der zu zahlende Betrag stehen. > > > Das war der Stand, den ich mit dem gesamten Kurs (Wahlfachunterricht > > Klasse 8) bisher erarbeitet habe. Funktioniert auch soweit ganz gut. > > > > Komplizierter wird's , wenn zusätzlich noch die Aufnahme der Waren in den > > Bestand mit berücksichtigt werden soll. Zur Zeit können die Schülerinnen > > und Schüler beliebig viel "verkaufen". Eine Wareneingangtabelle sollte > > aber so ausgewertet werden, dass nicht mehr verkauft werden kann als > > wirklich an Waren vorhanden ist. Passiert natürlich bei tatsächlich > > aufgeklebten Barcodes nicht, ist aber eine Absicherung des Systems. Wenn > > also die eingegebene Anzahl einer Ware im Verkauf die Anzahl der > > aufgenommenen Ware überschreitet meldet dies das Makro und soll die > > Speicherung verhindern. Und da hänge ich etwas: Gemeint hier: Ich hänge, weil mir bestimmte Sachen nicht eindeutig erklärbar sind. Die schmeiße ich dann lieber ganz raus, bevor ich die (bei mir funktionierende) Blackbox so an Schülerinnen und Schüler übergebe. Also: Das Prinzip ist nicht das Problem. Es klappt. Der Weg ist etwas umständlich und der Code für mich einfach an der benannten Stelle unbegreiflich. Gruß Robert --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
