[de-users] Re: Datenbank, intern: Filterung von Datensätzen
Hallo Joern, dein Problem interessiert mich, aber leider habe ich nur wenig Erfahrung mit Starbasic/OOBasic. Kannst du bitte das komplette Makro senden, dann versuche ich mit Stichworten zu googlen und eine Loesung zu finden. viele Gruesse Martin Jenniges martinjenni...@skynet.be Jörn Schwarz schrieb: ich habe ein kleines Problem bei der Filterung der Datensätze einer Adressdatenbank. Mit dem Befehl "FilterName ("A*'")" filtere ich alle Datensätze, deren Feld "Name" mit dem Buchstaben "A" beginnt. Das funktioniert einwandfrei (und für jeden Buchstaben habe ich mir ein Makro erstellt). Wenn das geschehen ist, kann ich mich allerdings mit den Navigationssymbolen nicht durch die gefilterten Datensätze bewegen. Das geht erst, wenn ich vorher in ein beliebiges Feld klicke. - To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org For additional commands, e-mail: users-h...@de.openoffice.org
Re: [de-users] Re: Starbasic: fuehrende Nullen in Calc
Hallo Volker, vielen Dank, ich habe es hingekriegt. Und noch danke an Alle, die gepostet haben. viele Gruesse Martin martinjenni...@skynet.be Volker Heggemann schrieb: Sorry, ich hatte die eigendliche Funktion vergessen anzuhängen! Jetzt noch mal alles Komplett - geht sogar mit Copy & Paste: * Sub SetValue Dim oDoc As Object, oSheet As Object, oCell As Object oDoc=ThisComponent oSheet=oDoc.Sheets.getByName("Tabelle1") oCell=oSheet.getCellByPosition(0,0) 'A1 oCell.setValue(23658) oCell.NumberFormat = FindCreateNumberFormatStyle("00.000,00", odoc) 'hier kann der unten aufgeführte Code für ein eigenes Zahlenformat rein 'oCell.NumberFormat=2 '23658.00 'oCell.SetString("oops") 'oCell.setFormula("=FUNCTION()") 'oCell.IsCellBackgroundTransparent = TRUE 'oCell.CellBackColor = RGB(255,141,56) End Sub Function FindCreateNumberFormatStyle(ByVal sFormat As String,doc As Object) As Long Dim aLocale As New com.sun.star.lang.Locale Dim oFormats As Object Set oFormats = doc.getNumberFormats() Dim formatNum As Long formatNum = oFormats.queryKey(sFormat, aLocale, True) If (formatNum = -1) Then formatNum = oFormats.addNew(sFormat, aLocale) If (formatNum = -1) Then formatNum = 0 End If FindCreateNumberFormatStyle = formatNum End Function So , das ist dann auch getestet! mfg Volker - To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org For additional commands, e-mail: users-h...@de.openoffice.org - To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org For additional commands, e-mail: users-h...@de.openoffice.org
[de-users] Re: Starbasic: fuehrende Nullen in Calc
Hallo Rainer, ich habe wohl vergessen, fuer Uneingeweihte hinzuzufuegen, dass Starbasic gleich OO-Basic ist; also die Programminterne Makrosprache. Ich will in einem Script viele Zellen bez fuehrende Nullen formatieren und nicht nur per Menue Format. viele Gruesse Martin Jenniges martinjenni...@skynet.be Rainer Schock schrieb: Ich hoffe allerdings dass Starbasic das selbe wie OpenOffice ist! Unter Umständen müsste man eine Formatierung bei "Benutzerdefiniert" "00.000" eingeben. - To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org For additional commands, e-mail: users-h...@de.openoffice.org
[de-users] Starbasic: fuehrende Nullen in Calc
Hallo, ich habe mir ein kleines Script fuer Calc geschrieben, mit dem ich Nummern zB von 1 bis 2, schnell erstellen kann. Um das Script abzurunden, wuerde ich die Nummern gerne mit fuehrenden Nullen versehen. Doe Werte in den Zellen sind als Numeric, im Internet habe ich leider noch keine Loesung gefunden. Deshalb meine Frage hier: Wie kann ich die Zellen in Calc per Starbasic bezueglich fuehrende Nullen formatieren ? Ich danke Euch im Voraus fuer Eure Antworten, Martin Jenniges martinjenni...@skynet.be - To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org For additional commands, e-mail: users-h...@de.openoffice.org
Re: [de-users] OO Basic = StarBasic ?
Hallo Michael, danke fuer Deine Antwort. Ich habe mir das Dokument "Basic-Programmierung in Calc" angeschaut; die Objektbezeichnungen sind voellig anders. Da werde ich mir neue Literatur besorgen. viele Gruesse Martin Jenniges Michael Dannenhöfer schrieb: Hallo, hier gibt es Verwechslungen! Es gibt keine Unterschiede zwischen StarBasic und OOBasic. Starbasic ist der Name in StarOffice und OOBasic in OpenOffice. Leider hat sich aber mit Einführung von StarOffice 6 und OpenOffice 1.0 die zugrundelegende API geändert. Damit ist das alte StarBasic von StarOffice vor 6.0 teilweise nicht mehr kompatibel zu aktuellen Version. Dies gilt leider auch für die Literatur zur alten Version, die teilweise einfach nicht mehr stimmt. Ein Buch von 1999 behandelt die alte Version und ist damit nur begrenzt geeignet! mfg Michael Martin Jenniges schrieb: Hallo Leute, ich will mich mehr mit OO Basic beschaeftigen. Nun habe ich noch ein StarBasic-Buch von 1999; gibt es inzwischen groessere Aenderungen zwischen OO Basic und StarBasic ? viele Gruesse Martin Jenniges martinjenni...@skynet.be - To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org For additional commands, e-mail: users-h...@de.openoffice.org - To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org For additional commands, e-mail: users-h...@de.openoffice.org
[de-users] OO Basic = StarBasic ?
Hallo Leute, ich will mich mehr mit OO Basic beschaeftigen. Nun habe ich noch ein StarBasic-Buch von 1999; gibt es inzwischen groessere Aenderungen zwischen OO Basic und StarBasic ? viele Gruesse Martin Jenniges martinjenni...@skynet.be - To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org For additional commands, e-mail: users-h...@de.openoffice.org
[de-users] Re: Fazit: Industrielle Buchfuehrung mit OOo
Hallo Leute, nachdem ich mich ueber den Datenpilot und Zero-Buch schlau gemacht habe, mein Fazit. - Der Datenpilot : ist ein sehr interessantes Werkzeug; aber fuer meine Zwecke nur bedingt geeignet. Gerade fuer die komfortable Eingabe der Daten benoetige ich ein gutes Formular/Programm, und da hilft der Datenpilot nicht. Wenn ich mir die Formulare in Base mache, kann ich auch den Rest -Abfragen, Berichte, Automatisierungsmakros, ...- in Base machen. - Zero-Buch : ebenfalls interessant, aber es fehlen Automatisierungen - zB zum Jahresabschluss oder zur Bereinigung-. Derzeit sieht es so aus, dass jede Buchung von Hand gemacht werden muss. Gesamtfazit: ich glaube, ich stricke mir selber eine Base-Datenbank fuer die Buchfuehrung; mich reizt vor allem die Probleme der Erstellung und die Programmierung. Ausserdem kann ich die Buchfuehrung dann auf meine Beduerfnisse anpassen. Aber das Projekt eilt nicht und ich muss mich erst ueber die Programmierung schlau machen. Ich danke allen, die in diesem Thread geschrieben haben, Martin Jenniges - To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org For additional commands, e-mail: users-h...@de.openoffice.org
Re: [de-users] Re: Industrielle Buchfuehrung mit OOo
Stefan Weigel schrieb: Ich möchte den OP dazu animieren etwas mehr "Butter bei die Fische" zu geben. Gruß Stefan Hallo Stefan, ich werde mal ausfuehrlicher meine Gruende fuer meine Anfrage darlegen: Ich mache die Buchfuehrung fuer meinen Bruder. Er ist Landwirt und seit 17 Jahren muss er dem Mehrwertsteueramt alle 3 Monate (Trimester) die Liste der Betraege seiner zuzahlenden MWS und seiner zurueckzuerhaltenhde MWS schicken. Zu diesem Zweck haben wir damals ein Buchfuehrungsprogramm fuer Industrielle Buchfuehrung (Kontenbuchfuehrung) angeschafft. Ich habe dann eine komplette Kontenbuchfuehrung gestartet, mit Ein- und Ausgang, Aktiva und Passiva, Abschreibungen ect. Alle 3 Monate muss ich Listen erstellen, die die Aus- und Eingaenge der vorigen 3 Monate auflisten; mit Kundennamen, Buchungsnummer, Betraege ohne MWS, MWS und Total sowie ein Total der Konten, die in diesem Zeitraum benutzt wurden. Das Programm macht diese Listen natuerlich automatisch. Ausserdem ziehe ich noch Listen der gekauften und verkauften Mengen; und natuerlich den Jahresabschluss. Im Jahr kommen ca - 50 Kundenrechnungen - 130 Lieferantenrechnungen - 100 Bankkontoauszuege - sowie diverse andere Buchungen (Pacht, Abschreibungen, Bereinigungen,...) zusammen Da das Buchfuehrungsprogramm unter MS-Dos laeuft und ich irgendwann ein neues brauche, suche ich halt nach Alternativen fuer die teuren -1000 Euro- Programme. In einem OOo Base Buch las ich, dass man mit Base eine Industrielle Buchfuehrung machen koenne; da hat mich halt interessiert ob es sowas schon gibt. Vermutlich werde ich das selbst stricken muessen. Noch eines zu meiner -kritisierten laschen- Movitation: das Projekt eilt nicht und ich habe nicht immer Zeit am PC zu arbeiten. Wenn jemand noch weitere Fragen hat, antworte ich gerne. viele Gruesse Martin Jenniges - To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org For additional commands, e-mail: users-h...@de.openoffice.org
Re: [de-users] Re: Industrielle Buchfuehrung mit OOo
Hallo, vielen Dank an Alle, die bisher geschrieben haben. Leider hatte ich noch keine Zeit, die Infos zu ueberpruefen. Ich habe das Thema angefangen, weil ich ein Buchfuehrungsprogramm benoetige, mit dem ich die noetigen Listen fuer die trimestrielle Mehrwertsteuererklaerung drucken kann. Mein bisheriges Programm stammt noch aus MS-DOS-Zeiten; und die Listen muss ich erst exportieren und dann in Writer weiter bearbeiten. Das neue Windows-Programm der Firma wuerde 1.000 Euro kosten. Zuviel fuer mich. Ausserdem muesste die Buchfuehrung fuer Belgien angepasst werden. Deshalb meine Frage nach einer OOo-Loesung ,weil ich dachte, die koennte ich eventuell anpassen. Mein System ist Windows XP. In den naechsten Tagen werde ich Eure Hinweise mal auf Tauglichkeit pruefen, viele Gruesse Martin Jenniges martinjenni...@skynet.be - To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org For additional commands, e-mail: users-h...@de.openoffice.org
Re: [de-users] Calc: Zahl in Text + mit Text kombinieren
Hallo, erstmal danke ich allen, die geantwortet haben. Ich hatte in der Zelle =s+Text(A1) geschriebenm das + und s ohne " war also falsch. viele Gruesse Martin Thomas Kübler schrieb: Hallo Martin, wenn in A1 die Zahl steht (z.B. 4711), so kannst Du mit der Funktion '="s"&TEXT(A1;"0")' in einem anderen Feld das Ergebnis 's4711' erhalten. Natürlich ohne die einfachen Hochkommas ('). Am 31.03.2009 13:53, Martin Jenniges schrieb: Ich habe vergeblich nach eier Funktion gesucht, um die Zahl in einer Zelle in einer anderen Zelle in Text umzuzwandeln und mit Text (s) zu kombinieren. Ich hoffe das ist es was Du brauchen kannst. Viele Grüße Thomas Kübler - To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org For additional commands, e-mail: users-h...@de.openoffice.org - To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org For additional commands, e-mail: users-h...@de.openoffice.org
[de-users] Industrielle Buchfuehrung mit OOo
Hallo, in einem Buch fuer Base habe ich gelesen, es waere durchaus moeglich, eine Buchfuehrung mit Base/OOo zu realisieren. Hat jemand schon so etwas gemacht ? Mich wuerde eine solche Realisierung sehr interessieren. viele Gruesse Martin Jenniges martinjenni...@skynet.be - To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org For additional commands, e-mail: users-h...@de.openoffice.org
[de-users] Calc: Zahl in Text + mit Text kombinieren
Hallo, gestern musste ich 100 Spalten Titel vergeben; die Titel sollten so aussehen: s1, s2, s3 Ich habe vergeblich nach eier Funktion gesucht, um die Zahl in einer Zelle in einer anderen Zelle in Text umzuzwandeln und mit Text (s) zu kombinieren. Wie geht das ? Vielen Dank im voraus fuer Eure Antworten. Martin Jenniges martinjenni...@skynet.be - To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org For additional commands, e-mail: users-h...@de.openoffice.org
Re: [de-users] Base Formular mit Auswahlliste + SQL
Hallo robert, vielen Dank fuer deine Hilfe, hat alles wunderbar geklappt. Gruesse Martin Jennigers Robert Großkopf schrieb: Hallo Martin, Ich habe eine DBmit zwei Tabellen erstellt empfaenger Empf-ID Name Adresse Postleitzahl Ort Kontonummer ueberweisungen ID Datum Betrag Mitteilung Empf-ID Ich würde folgendes machen: 1. Gründe eine Tabelle tmp Diese Tabelle hat 2 Felder: ID und Empf-ID. ID wird automatisch erstellt, ist Primärschlüssel. 2. Hauptformular - besteht nur aus einer Listbox, in der der Empfänger steht. Tabelle für das Hauptformular ist die Tabelle tmp. SELECT "Name","Empf-ID" FROM "empfaenger" Empf-ID wird hier in tmp geschrieben. Anschließend erfolgt die Speicherung über ein Makro, verbunden mit dem Ereignis "Modifiziert" sub DatenAktualisieren rem -- rem define variables dim document as object dim dispatcher as object rem -- rem get access to the document document = ThisComponent.CurrentController.Frame dispatcher = createUnoService("com.sun.star.frame.DispatchHelper") rem -- dispatcher.executeDispatch(document, ".uno:RecSave", "", 0, Array()) rem -- dispatcher.executeDispatch(document, ".uno:Refresh", "", 0, Array()) end sub Das Makro ersetzt Dir lediglich Den Druck auf den Button "Speichern" und das anschließende "Aktualisieren". Das Hauptformular soll jedes Mal sicher auf den neuesten Datensatz springen (ist allerdings immer nur einer, wenn nicht irgendetwas unvorhergesehenes passiert). Das Makro wird direkt mit dem Formular verbunden, Ereignis "Beim Laden" sub Neuer rem -- rem define variables dim document as object dim dispatcher as object rem -- rem get access to the document document = ThisComponent.CurrentController.Frame dispatcher = createUnoService("com.sun.star.frame.DispatchHelper") rem -- dispatcher.executeDispatch(document, ".uno:NewRecord", "", 0, Array()) end sub 2. Deine vorherigen Tabellen stehen jetzt in 2 Unterformularen zu dem Hauptformular. Das Ganze braucht man gar nicht vom Layout her zu erkennen erkennen. Das Auswahlfeld steht einfach da, wo Du vorher in Deinem vorherigen Hauptformular das Namensfeld hattest. Beide Unterformulare beziehen jetzt aus tmp die Empf-ID und zeigen die dazugehörigen Informationen an. 3. Der einzige Haken: Du kannst so keine neuen Empfänger eingeben. Hier würde ein gesondertes Feld für neue Empfänger helfen, das neben dem Hauptformular in dem Formular liegt. Auch die Eingabe kann durch Makros automatisiert werden. Ich habe so etwas einmal als Beispieldatenbank hergestellt, bevor ich mich größer mit Makros befasst habe. Die dort verwandten Makros sind alle mit dem Makrorecorder erstellt. Der Link zu diesem Beispiel mit einem Formularblatt, das zwei Hauptformulare und zu dem zweiten Hauptformular auch noch zwei Unterformulare enthält: http://www.scoolonline.de/download/Inventur.zip Wenn Du deine Datenbank nur selbst betreibst und nicht auf viele andere PCs transportieren willst rate ich Dir allerdings, die Formulare nicht im Dokument selbst zu speichern. Das ist zwar praktisch zum Transport der Makros, aber leider hat OpenOffice in der Base-Version hier einen Bug, der auch in der 2.3.1 noch existiert: Das Formular muss 2 Mal hintereinander gestartet werden, damit die Makros auch gefunden werden. Melde Dich gerne zurück, wenn etwas zu kompliziert aussieht. Gruß Robert - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [de-users] Base Formular mit Auswahlliste + SQL
Hallo Robert, ich fuerchte, ich habe mein Problem nicht richtig beschrieben. Hier nun etwas ausfuehrlicher: Ich habe eine DBmit zwei Tabellen erstellt empfaenger Empf-ID Name Adresse Postleitzahl Ort Kontonummer ueberweisungen ID Datum Betrag Mitteilung Empf-ID Diese beiden Tabellen sind ueber Empf-ID miteinander verknuepft. Zwecks Dateneingabe der Ueberweisungen habe ich ein Formular mit Subformuilar: Hauptformular = alle Felder aus empfaenger Subformular = Datum, Betrag, Mitteilungaus ueberweisungen Dieses Formular arbeitet auch gut, nur muss ich bei der Auswahl der Empfaenger den Datensatz vor/zurueck schalten. Stattdessen haette ich gerneeine Auswahlmoeglichkeit des Empfaengers ueber den Namen via Listenfeld. Und dies kriege ich einfach nicht hin. Robert Großkopf schrieb: Ich kann das Feld in eine Auswahlliste umwandeln und gebe dann in dem Datenfenster unter SQL SELECT "Name" FROM "empfaenger" ein. Du willst doch vermutlich in dem Unterformular die Identifikationsnummer des Empfängers stehen haben. Dann muss in dem Auswahlfeld einmal der Name und dann noch die Identifikationsnummer aus der Tabelle ausgelesen werden. SELECT "Name","ID" FROM "empfaenger" Wobei OpenOffice die Daten aus dem ersten Feld anzeigt und die des zweiten Feldes in die andere Tabelle einträgt. Danke, jetzt kann ich aus einer Liste den Namen des Empfaengers auswaehlen aber die uebrigen Formularfelder springen nicht zu dem ausgewaehlten Datensatz. Gruesse Martin - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
[de-users] Base Formular mit Auswahlliste + SQL
Hallo, ich habe ein Problem mit der Erstellung einer Auswahlliste. Ich habe fuer eine Ueberweisung-DB zwei Tabellen, eine mit den Daten der Empfaenger und eine mit denen der Ueberweisungen. Fuer die Eingabe habe ich ein Formular mit Unterformular. Zuerst waehle ich im Hauptformular den Empfaenger und gebe im Subformular die Daten fuer die Uberweisung ein. Nun haette ich gerne, dass ich den Empfaenger mittels Auswahlliste ueber den Namen waehlen kann. Ich kann das Feld in eine Auswahlliste umwandeln und gebe dann in dem Datenfenster unter SQL SELECT "Name" FROM "empfaenger" ein. Aber leider funktioniert das nicht. Was muss ich noch einstellen ? Gruesse Martin Jenniges - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [de-users] Liste im csv format in DB importieren
Sebastian Gödecke schrieb: Die *.xls habe ich in calc geöffnet und sie dann als csv abgespeichert. Mit automatisiert meine ich das die ganzen einträge automatisch eingefügt werden und ich nicht alle händisch eintippen muss. Ich will aber nicht JDBC nutzen, weil da mit dann wieder einige andere Sachen nicht laufen (oder ist ein gleichzeitiger mischbetrieb möglich, also ODBC und JDBC laufen zu lassen) Hallo, ich habe vor einigen Tagen mehrere Datenbanktabellen mit calc-Inhalten erstellt. In den ersten Zeilen der calc-Tabelle sollten die Feldbezeichnungen stehen. Dann waehlst du alles aus, gehts zu Base in die Tabellenansicht -die Tabelle nicht oeffnen - klickst in das Tabellenfenster mit der rechten Maustaste und solltest dort ein Auswahlmenue erhalten -Neue Tabelle erstellen, an bestehende Tabelle anfuegen-. Dies habe ich mit OO 2.2.1 gemachund weiss nicht ob es mit 2.3 geht. Ich hoffe, es klappt. Gruesse Martin Jenniges - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [de-users] Base: einfache DB in rel. DB umwandeln
Hallo, diesmal hat es geklappt. Grund war wohl ein Schreibfehler von OO generiert. Die falsche war SELECT "Tabelle1"."TITEL", "Serien1"."ID" AS "IDs", "Tabelle1"."NUMMER", "Tabelle1"."1AUTOR", "Tabelle1"."2AUTOR", "Tabelle1"."VERLAG", "Tabelle1"."PREISS", "Tabelle1"."PREIS_EURO", "Serien1"."SERIE" FROM "Serien1", "Tabelle1" WHERE ( ( "Serien1"."SERIE" = 'Tabelle1.SERIE' ) ) die richtige SELECT "Tabelle1"."TITEL", "Serien1"."ID" AS "IDs", "Tabelle1"."NUMMER", "Tabelle1"."1AUTOR", "Tabelle1"."2AUTOR", "Tabelle1"."VERLAG", "Tabelle1"."PREISS", "Tabelle1"."PREIS_EURO", "Serien1"."SERIE" FROM "Serien1", "Tabelle1" WHERE ( ( "Serien1"."SERIE" = "Tabelle1"."SERIE" ) ) Der Fehler ist bei dem letzten Eintrag von Tabelle1.SERIE vielen Dank fuer Eure Hilfe, Martin Jenniges - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [de-users] Base: einfache DB in rel. DB umwandeln
Hallo, hier der Text, wenn ich die Abfrage im Entwurfmodus erstelle. SELECT "Tabelle3"."TITEL", "Serien"."ID" AS "IDs", "Tabelle3"."NUMMER", "Tabelle3"."1AUTOR", "Tabelle3"."2AUTOR", "Tabelle3"."VERLAG", "Tabelle3"."PREISS", "Tabelle3"."PREISEURO" FROM "Serien", "Tabelle3" WHERE ( ( 'Tabelle3.SERIE' = 'Serien.SERIE' ) ) Diesmal kriege ich kein Ergebnis auf die Abfrage. Gruesse Martin Jenniges Robert Großkopf schrieb: Hallo Martin, Ich habe die Tabellen mittels Select distinct gemacht; aber die andere Formel Select From Where funktioniert nicht. Kann es sein, dass die Syntax geaendert wurde. zB bei einem einfachen Test geht es nicht, wenn ich Tabellenname.Spaltenname from tabellenname eingebe aber wohl wenn ich Spaltenname FROM Tabellenname eingebe Ich schiebe hier einmal eine kleine Änderung ein. Deine Datenbank soll schlicht Bibi heißen: Zusammenfassung der Tabellen über eine Abfrage "SELECT Ursprungstabelle.ID, Autor.ID AS IDa, Ursprungstabelle.Titel, Verlag.ID AS IDv FROM Bibi.Ursprungstabelle Ursprungstabelle, Bibi.Autor Autor, Bibi.Verlag Verlag WHERE Ursprungstabelle.Autor = Autor.Autor and Ursprungstabelle.Verlag = Verlag.Verlag" Die Abfrage ergibt ID IDa TitelIDv 1 1 Emil und die Detektive1 2 1 Der 35. Mai 1 3 2 MySQL 2 Eigentlich ist der Hinweis auf die Datenbank nur notwendig, wenn Tabellen aus mehreren Datenbanken betroffen sind. Aber vielleicht funktioniert der Treiber nur so. Wie Mechthilde schreibt: Was steht in der SQL-Anweisung, wenn Du 2 Tabellen über die Entwurfsansicht verknüpft abfragst? Gruß Robert - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [de-users] Base: einfache DB in rel. DB umwandeln
Hallo Robert, vielen Dank fuer die etwas ausfuehrlichere Erklaerung. Ich habe die Tabellen mittels Select distinct gemacht; aber die andere Formel Select From Where funktioniert nicht. Kann es sein, dass die Syntax geaendert wurde. zB bei einem einfachen Test geht es nicht, wenn ich Tabellenname.Spaltenname from tabellenname eingebe aber wohl wenn ich Spaltenname FROM Tabellenname eingebe viele Gruesse Martin Jenniges Robert Großkopf schrieb: Hallo Martin, Noch mal mein Problem: ich habe eine einfache Buecherdatenbank von Works in Base konvertiert. Diese Datenbank besteht aus einer Tabelle; jetzt moechte ich diese Datenbank in eine relationale umwandeln, um wiederholende Eintraege -Serie, Autor, Verlag - in separate Tabellen erfassen und mit der alten Tabelle verknuepfen. Mein Wunsch yaere ein Makro oder Skript, das dies moeglichst automatisch erledigt. Wozu brauchst Du ein Skript? Der Vorgang wird doch lediglich einmal durchgeführt. Da ist die Entwicklungszeit für das Skript doch länger als das Umkopieren der Ursprungstabelle. Ich mache einmal an einen kleinen Beispiel klar, wie ich das (vor einiger Zeit) realisiert habe. Ursprungstabelle ID Autor Titel Verlag 1 Kästner Emil und die Detektive Dressler 2 Kästner Der 35. Mai Dressler 3 Kofler MySQL Wessley Jetzt die erste Abfrage "SELECT DISTINCT Autor FROM Ursprungstabelle" Die Abfrage ergibt eine Tabelle mit lediglich Autor Kästner Kofler Die Abfrage nehme ich, ziehe sie in die Tabellenansicht, werde nach einem Primärschlüssel gefragt, lasse diesen automatisch zusätzlich erstellen und habe dann die Tabelle Autor IDAutor 1 Kästner 2 Kofler Gleiches Verfahren für Verlag und andere Redundanzen (Ort, bei Dir 'Serie'). Zusammenfassung der Tabellen über eine Abfrage "SELECT Ursprungstabelle.ID, Autor.ID AS IDa, Ursprungstabelle.Titel, Verlag.ID AS IDv FROM Ursprungstabelle, Autor, Verlag WHERE Ursprungstabelle.Autor = Autor.Autor and Ursprungstabelle.Verlag = Verlag.Verlag" Die Abfrage ergibt ID IDa TitelIDv 1 1 Emil und die Detektive1 2 1 Der 35. Mai 1 3 2 MySQL 2 Diese Abfrage wird auch in die Tabellenansicht gezogen und als neue Haupttabelle verwandt. Primärschlüssel ist ID, sollte wie in den anderen Tabellen automatisch weiter erzeugt werde. Bei dem ganzen Verfahren musste ich damals etwas Handarbeit anlegen, weil manchmal Autoren oder Verlage fehlten. Ich habe dafür in die Ursprungstabelle jeweils ein "-" eingefügt. Da diese (leeren) Einträge ja einfach ausgefiltert werden können ist dies lediglich entweder eine wiederkehrende Tastaturtätigkeit oder Du nimmst die ganze Tabelle, liest sie in Calc ein und lässt die Zellen einfach Ausfüllen. Diese Ziehverfahren geht in der Basetabelle nicht. Bei Unklarheiten kannst Du mich auch gerne privat kontaktieren - wenn Dir nicht ein anderes Listenmitglied eine bessere/einfachere Lösung präsentieren kann. Gruß Robert - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [de-users] Base: einfache DB in rel. DB umwandeln
Hallo Robert, mir ist noch nicht klar, wie ich mit Select distinct arbeiten soll, beziehungsweise wie ich das Skript schreiben soll. Gibt es fuer mein Probleö kein fertiges Skript zum download ? Dein unten aufgefuehrtes Skrip scheint mir eine andere Funktion zu haben, als ich benoetige. Noch mal mein Problem: ich habe eine einfache Buecherdatenbank von Works in Base konvertiert. Diese Datenbank besteht aus einer Tabelle; jetzt moechte ich diese Datenbank in eine relationale umwandeln, um wiederholende Eintraege -Serie, Autor, Verlag - in separate Tabellen erfassen und mit der alten Tabelle verknuepfen. Mein Wunsch yaere ein Makro oder Skript, das dies moeglichst automatisch erledigt. Viele Gruesse Martin Jenniges Robert Großkopf schrieb: Hallo Martin, ich habe mir vor Jahren mit MS-Works eine Bibliothek-DB angelegt und wuerde diese Eintraege jetzt gerne in eine relationale DB umwandeln. Die Tabelle ist bereits in Base konvertiert. Ich habe das vor einigen Jahren mit einer Bibliotheksdatenbank meiner Schule gemacht (zu der Zeit ca. 5000 Medien). Die Aufteilung in Untertabellen (z.B. einer Tabelle für Ort, einer für Verlag usw.) habe ich mit Hilfe von Select distinct sowie damals noch StarOffice 5.2 Calc erzeugt. Die Verknüpfung von Haupttabelle und Untertabelle habe ich mit einer Abfrage realisiert. So ergab die erste Abfrage dann eine Haupttabelle mit Ortsziffern statt der Ortsangaben, die zweite Abfrage eine Haupttabelle mit Ortsziffern und Verlagsziffern usw. Bei Autoren ist die Sache noch etwas komplizierter, da ja Autoren auch in Gruppen auftreten - hier ging die Umwandlung nur über eine Verknüpfungstabelle und letztlich den Aufruf der jeweiligen Datensätze in dem Bearbeitungsformular. Aktuell haben wir ein ähnliches Verfahren um die Schlagwortliste aus der ursprünglichen Tabelle zu lösen. Das läuft allerdings über MySQL und PHP und ersetzt erst dann die alten Einträge, wenn der alte Datensatz in der Bearbeitung aufgerufen und neu abgespeichert wurde - dies ganze aber im Hintergrund ohne zusätzliche Eingaben. Das Datenbankscript steht übrigens im Internet frei zur Verfügung: www.scoolonline.de/download Gruß Robert - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
[de-users] Base: einfache DB in rel. DB umwandeln
Hallo, ich habe mir vor Jahren mit MS-Works eine Bibliothek-DB angelegt und wuerde diese Eintraege jetzt gerne in eine relationale DB umwandeln. Die Tabelle ist bereits in Base konvertiert. Was ich jetzt suche, ist ein Makro oder Skript, welches einen Eintrag aus der Tabelle - zb Serie - in der verknuepften Tabelle fuer die Serieneintraege sucht und wenn gefunden, die ID-Nummer in ein bestimmtes Feld der Haupttabelle einfuegt, wenn nicht gefunden, in der verbundenen Tabelle fuer Serieneintraege deen gesuchten Begriif in ein neuen Datensatz einfuegt und dessen ID-Nummer in die Haupttabelle einfuegt. Kennt Ihr soch ein Skript/Makro ? vielen Dank im voraus Gruesse Martin Jenniges - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]