[de-users] Berechnung in Datenbank Base
Hallo, ich habe mir mit der Datenbank von OOo ein Tool gestrickt, dass ich ähnlich schon mal unter Access laufen hatte. Ich will Vertrags und Rechnungsdaten mit den Kundendaten verlinken. Klappt auch alles Super, außer den Berechnungen. Ich will dass das Feld [MwSt] sich selbstständig aus den Feldern ([Honorar] + [Fahrtkosten]) + MwSt.Prozent ergibt. Das Feld [Gesmtbetrag] soll sich dann aus [Honorar] + [Fahrtkosten] + [MwSt] errechnen. In Access hatte ich das am laufen, aber unter OOo habe ich bisher noch keine Funktionen dafür gefunden. Hat von euch jemand eine Idee? Gruß Olaf - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
[de-users] Berechnung in Datenbank Base
Hallo Michael, >> Ich will dass das Feld [MwSt] sich selbstständig aus den Feldern >> ([Honorar] + [Fahrtkosten]) + MwSt.Prozent ergibt. >> Das Feld [Gesmtbetrag] soll sich dann aus [Honorar] + [Fahrtkosten] + >> [MwSt] errechnen. die Rechnungen kannst Du ganz einfach in einer Abfrage durchführen: 1. Erstelle eine Abfrage mit allen Deinen Feldern. 2. Schreibe in eine leere Spalte ("Honorar" +"Fahrtkosten")*(1+"MwSt/100"). 3. Schreibe in die Alias-Zeile "Gesamtbetrag". 4. Führe die Abfrage durch Betätigen des entsprechenden Symbols aus. 5. Auf diese Abfrage kannst Du im Formular zugreifen und Dir so alle berechneten Werte anzeigen. 6. Auf die Ergebnisse der Abfrage kannst Du auch leicht in einem Serienberief zurückgreifen. Auf diese Weise sind Berechnungen beliebig möglich, und sie erfordern wenig Speicherplatz, da sie erst beim Aufrufen der Abfrage durchgeführt werden. Mit freundlichen Grüßen Jörn - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [de-users] Berechnung in Datenbank Base
Hallo Olaf, ich habe mir mit der Datenbank von OOo ein Tool gestrickt, dass ich ähnlich schon mal unter Access laufen hatte. Ich will Vertrags und Rechnungsdaten mit den Kundendaten verlinken. Klappt auch alles Super, außer den Berechnungen. Ich will dass das Feld [MwSt] sich selbstständig aus den Feldern ([Honorar] + [Fahrtkosten]) + MwSt.Prozent ergibt. Das Feld [Gesmtbetrag] soll sich dann aus [Honorar] + [Fahrtkosten] + [MwSt] errechnen. warum willst du die MwST in der Datenbank speichern, wenn du sie für jeden Datensatz erneut berechnen kannst? Das macht aus meiner Sicht nur Sinn, wenn es sich dabei a) nur um einen Vorgabewert für ein Formularfeld handelt, in welchem du die MwST ggf. korrigieren möchtest b) die Rechnung einfach den Wert der MwST aufweisen soll. Bei a) würde ich ein Macro verwenden, welches immer wenn ein neuer Datensatz erstellt wird aufgerufen wird und den Wert in das Feld schreibt. Bei b) fällt mir leider auch nur eine Makrolösung ein, welches den Text eines Formularfeldes ohne verbundenes Feld einer Datenquelle beim Laden eines Datensatzes anpasst. Für a) erstellst du ein OOo Makro mit dem Inhalt: oForm=ThisComponent.DrawPage.Forms.getByName("Formularname") REM Die nächsten Zeilen sinngemäß ergänzen, es gibt bestimmt auch noch eine Variante ohne Formularfeld an den Honorar/Fahrkosten/MwST%-Wert zu kommen, aber die fällt mir gerade nicht ein. honorar = oForm.getByName("fHonorar").boundField.getFloat(); fahrkosten = ... mwstprozent = ... mwst = (honorar + fahrkosten) * mwstprozent oForm.getByName("Elementname").boundField.updateFloat(mwst) und weist es dem Formularereignis "beim Laden" und "Datensatzwechsel" zu. (evtl. kannst du "beim Laden" auch weg lassen.) Ich kann es hier leider gerade nicht testen, beim Problemen kannst du auch mal in http://www.oooforum.org (Englisch) gucken. Für b) eigentlich ganz ähnlich, nur dass du das boundField for updateFloat weglässt und ggf. kein updateFloat existiert, dann müsstest du nach String umwandeln und die Methode updateString verwenden. Hat jemand eine andere Idee, wie man ein Feld (nur lesen) mit berechneten Werten in OOo erzeugen kann? Ansonsten wäre dies vielleicht ein Feature Request wert, in Access ist sowas wirklich ganz easy. Jedenfalls für Berichte. Mit freundlichen Grüßen, Michael Braun - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
AW: [de-users] Berechnung in Datenbank Base
Hallo, ich habe mich auch schon gefragt, ob /warum nicht die entsprechenden sql-Möglichtkeiten existieren (meine ersten Tests waren nicht erfolgreich): so oder ähnliche sollte es doch unter einer standard sql-DB möglich sein oder? SELECT.sum("honorar", "Fahrkosten") AS "gesamtNetto" "gesamtNetto"*1.14 AS gesamtBrutto FROM Die Frage ist also ob das die eingebaute DB kann und/oder ob bei den eingebundenen DB's (z.B. ACCESS oder mysql) die Treiber das zulassen... oder wenigstens bei gebundenen Formularen (soweit bin ich noch nicht) berechnete Felder möglich sind die Makro-Lösung mag funktionieren, aber ist meiner Meinung nach doch nur ein unzureichendes Workarround weis jemand mehr? Karl (kgs-ks) -Ursprüngliche Nachricht- Von: Michael Braun [mailto:[EMAIL PROTECTED] Gesendet: Dienstag, 19. Dezember 2006 13:25 An: users@de.openoffice.org Betreff: Re: [de-users] Berechnung in Datenbank Base Hallo Olaf, > > ich habe mir mit der Datenbank von OOo ein Tool gestrickt, dass ich > ähnlich schon mal unter Access laufen hatte. Ich will Vertrags und > Rechnungsdaten mit den Kundendaten verlinken. Klappt auch alles Super, > außer den Berechnungen. > > Ich will dass das Feld [MwSt] sich selbstständig aus den Feldern > ([Honorar] + [Fahrtkosten]) + MwSt.Prozent ergibt. > Das Feld [Gesmtbetrag] soll sich dann aus [Honorar] + [Fahrtkosten] + > [MwSt] errechnen. > warum willst du die MwST in der Datenbank speichern, wenn du sie für jeden Datensatz erneut berechnen kannst? Das macht aus meiner Sicht nur Sinn, wenn es sich dabei a) nur um einen Vorgabewert für ein Formularfeld handelt, in welchem du die MwST ggf. korrigieren möchtest b) die Rechnung einfach den Wert der MwST aufweisen soll. Bei a) würde ich ein Macro verwenden, welches immer wenn ein neuer Datensatz erstellt wird aufgerufen wird und den Wert in das Feld schreibt. Bei b) fällt mir leider auch nur eine Makrolösung ein, welches den Text eines Formularfeldes ohne verbundenes Feld einer Datenquelle beim Laden eines Datensatzes anpasst. Für a) erstellst du ein OOo Makro mit dem Inhalt: oForm=ThisComponent.DrawPage.Forms.getByName("Formularname") REM Die nächsten Zeilen sinngemäß ergänzen, es gibt bestimmt auch noch eine Variante ohne Formularfeld an den Honorar/Fahrkosten/MwST%-Wert zu kommen, aber die fällt mir gerade nicht ein. honorar = oForm.getByName("fHonorar").boundField.getFloat(); fahrkosten = ... mwstprozent = ... mwst = (honorar + fahrkosten) * mwstprozent oForm.getByName("Elementname").boundField.updateFloat(mwst) und weist es dem Formularereignis "beim Laden" und "Datensatzwechsel" zu. (evtl. kannst du "beim Laden" auch weg lassen.) Ich kann es hier leider gerade nicht testen, beim Problemen kannst du auch mal in http://www.oooforum.org (Englisch) gucken. Für b) eigentlich ganz ähnlich, nur dass du das boundField for updateFloat weglässt und ggf. kein updateFloat existiert, dann müsstest du nach String umwandeln und die Methode updateString verwenden. Hat jemand eine andere Idee, wie man ein Feld (nur lesen) mit berechneten Werten in OOo erzeugen kann? Ansonsten wäre dies vielleicht ein Feature Request wert, in Access ist sowas wirklich ganz easy. Jedenfalls für Berichte. Mit freundlichen Grüßen, Michael Braun - 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] Berechnung in Datenbank Base
Danke für die Reaktion! Hallo Olaf, ich habe mir mit der Datenbank von OOo ein Tool gestrickt, dass ich ähnlich schon mal unter Access laufen hatte. Ich will Vertrags und Rechnungsdaten mit den Kundendaten verlinken. Klappt auch alles Super, außer den Berechnungen. Ich will dass das Feld [MwSt] sich selbstständig aus den Feldern ([Honorar] + [Fahrtkosten]) + MwSt.Prozent ergibt. Das Feld [Gesmtbetrag] soll sich dann aus [Honorar] + [Fahrtkosten] + [MwSt] errechnen. warum willst du die MwST in der Datenbank speichern, wenn du sie für jeden Datensatz erneut berechnen kannst? Das macht aus meiner Sicht nur Sinn, wenn es sich dabei Ich wollte das in der Datenbank speichern, weil ich das in Access so gemacht hatte. Gehts es denn, diesen Wert nicht in einem Feld stehen zu haben und ihn Trotzdem beim Druck von Rechnung und Vertrag zu haben? Ich bin gerade dabei, die Daten in einer Dokumentenvorlage einzupflegen. Dazu habe ich die Vorlage als Formular mit der entsprechenden Abfrage verknüpft und auf "nur lesen" gesetzt. So kann ich bei bedarf (in der Regel 10-20% der Nutzung) die Rechnung, bzw. den Vertrag leicht von der Standartvariante abweichen lassen und sie dann ausdrucken... Gruß Olaf - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
AW: [de-users] Berechnung in Datenbank Base
Hallo Jörn, als Mitleser kommt mir Dein Beitrag sehr gelegen und ich habe das auch gleich ausprobiert und Dank dafür bin nur darüber gestolpert, dass die Feldnamen case-senitiv sind und das wahrscheinlich mit den Anführungszeichen in ..*(1+"MwSt/100") was nicht stimmt oder? wenn ich noch erfahren kann, ob/welche/wie Standardfunktionen ich bei Berechnungen verwenden kann, wäre ich optimistisch mein nächstes Projekt satt in ACCESS in OOo zu entwickeln ich bräuchte natürlich die üblichen String-Operationen am besten eine Dokumentation aller eingebauter Funktionen (alle Basic-Funktionen?) ja natürlich auch noch die Änderungs-/Anfüge-Abfragen sql: update.set gerne auch ein link zur entsprechenden Dokumentation Gruß Karl (kgs-ks) -Ursprüngliche Nachricht- Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Gesendet: Mittwoch, 20. Dezember 2006 08:49 An: users@de.openoffice.org Betreff: [de-users] Berechnung in Datenbank Base Hallo Michael, >> Ich will dass das Feld [MwSt] sich selbstständig aus den Feldern >> ([Honorar] + [Fahrtkosten]) + MwSt.Prozent ergibt. >> Das Feld [Gesmtbetrag] soll sich dann aus [Honorar] + [Fahrtkosten] + >> [MwSt] errechnen. die Rechnungen kannst Du ganz einfach in einer Abfrage durchführen: 1. Erstelle eine Abfrage mit allen Deinen Feldern. 2. Schreibe in eine leere Spalte ("Honorar" +"Fahrtkosten")*(1+"MwSt/100"). 3. Schreibe in die Alias-Zeile "Gesamtbetrag". 4. Führe die Abfrage durch Betätigen des entsprechenden Symbols aus. 5. Auf diese Abfrage kannst Du im Formular zugreifen und Dir so alle berechneten Werte anzeigen. 6. Auf die Ergebnisse der Abfrage kannst Du auch leicht in einem Serienberief zurückgreifen. Auf diese Weise sind Berechnungen beliebig möglich, und sie erfordern wenig Speicherplatz, da sie erst beim Aufrufen der Abfrage durchgeführt werden. Mit freundlichen Grüßen Jörn - 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: AW: [de-users] Berechnung in Datenbank Base
Hallo, ich habe das mit dem Makro ohne Erfolg versucht. Bekomme ständig fehlermeldungen und finde in der HILFE nichts dazu. Gibts 'ne Literaturempfehlung für die Makrosprache? Mit dem SQL-Befehl bin ich gar nicht weit gekommen. Wo könnte ich den denn einbauen? Gruß Olaf - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: AW: [de-users] Berechnung in Datenbank Base
Olaf K. Spiers schrieb: > Hallo, > > ich habe das mit dem Makro ohne Erfolg versucht. Bekomme ständig > fehlermeldungen und finde in der HILFE nichts dazu. Gibts 'ne > Literaturempfehlung für die Makrosprache? jupp...das gibt es ;-) hier die ISBN: 3-89842-657-2 Galileo Press; Autor. Thomas krumbein Gruß Niels - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]