Eingaben vom vorherigen Datensatz übernehmen?

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Eingaben vom vorherigen Datensatz übernehmen?

Re: Eingaben vom vorherigen Datensatz übernehmen?

von oo-user-mit-problem » Mi, 18.04.2012 09:20

Hi Beni,

die Sache mit dem internen und externen Namen kannte ich nicht. Danke für den Hinweis. Habe in der Datenbank jetzt alle Felder "Prod.nr" umbenannt (typischer Anfängerfehler).
In der echten Tabelle sind die Beziehungen sauber angelegt. Und so wie scheint funktioniert jetzt alles so wie es soll!

Danke dir und R für die tolle Unterstützung!!!!!!!!!!!!!!

Viele Grüße
oo-user-mit-problem (nun mindestens 2 Probleme weniger ;-) )

Re: Eingaben vom vorherigen Datensatz übernehmen?

von paradigma » Mi, 11.04.2012 15:09

Hallo

Das Makro läuft jetzt durch.

Ursache: Der interne Name deines Formulars war "MainForm". Das Makro suchte aber das Formular "FormularLieferschein". Habe den internen Namen nun angepasst.

Ein Formular hat einen internen und externen Namen. Den externen siehst du, wenn du ein Formular über den Standarweg aufrufst. Den internen Namen kannst du über den Formularnavigator anschauen. Dann wirst du auch feststellen, dass dein Formular über weitere Formulare verfügt. Hast du die bewusst erstellt?

Zudem musste ich im Makro die Variable prod.Nr anpassen. Du darfst nicht mitten im Wort einer Variable einen Punkt setzen.

Habe noch kurz deine Tabellenstruktur angeschaut. Da du keinerlei Beziehungen definiert hast, kann ich dir jetzt schon sagen, dass du damit Probleme erhalten wirst. Eine konkrete Lösung kann ich dir aber auch nicht geben, dazu müsste ich selbst etwas genauer reinschauen, und das könnte ich nur gegen Bezahlung tun.

Du findest aber in diesem Forum durchaus Informationen zu Tabellenbeziehungen.

Gruss
Beni
Dateianhänge
Datensatz_uebernehmen_2.odb
(15.47 KiB) 206-mal heruntergeladen

Re: Eingaben vom vorherigen Datensatz übernehmen?

von oo-user-mit-problem » Mi, 11.04.2012 12:42

Hi R,

Ich komme einfach über das "Drawpage" nicht hinweg. Somit sitzt das Problem eindeutig vor dem Rechner ;-)
Den aktuellen Stand der "Übernahme" habe ich hochgeladen. Es wäre nett, wenn Du mir hier noch einmal Schützenhilfe leisten könntest.

Danke Dir schon mal im Voraus.

Viele Grüße
oo-user-mit-problem
Dateianhänge
Datensatz_uebernehmen_2.odb
(15.04 KiB) 211-mal heruntergeladen

Re: Eingaben vom vorherigen Datensatz übernehmen?

von F3K Total » Di, 03.04.2012 18:32

Hi,
... indem Du das Makro nicht über Extras/Makros ... von der Benutzeroberfläche der Datenbank, sondern vom Formular aus startest.
Die Datenbank hat keine Drawpage, die hat nur das Formular.

Gruß R

Re: Eingaben vom vorherigen Datensatz übernehmen?

von oo-user-mit-problem » Di, 03.04.2012 12:30

@ all

Bin gerade dabei das Ganze in einer großen DB einzubauen. Jedoch kommt die nachfolgende Fehlermeldung. Demnach fehlt mir "Drawpage". Wie bringe ich OO bei, dass er "Drawpage" versteht?
Hoffe auf Eure geduldigen Hinweise

Danke & viele Grüße
oo-user-mit-problem
Dateianhänge
Fehlermeldung Makro.jpg
Fehlermeldung Makro.jpg (77.88 KiB) 3687 mal betrachtet

Re: Eingaben vom vorherigen Datensatz übernehmen?

von oo-user-mit-problem » Di, 27.03.2012 12:41

@ R

Das ist ja noch mal eine Spur direkter. Perfekt. Dann kann ich mir ja auch die Abfrage sparen. Super!
VIELEN DANK für deine Hilfe!!!!!!!!!!!!
Das bringt mich ein gutes Stück weiter.

Viele Grüße und nochmals Danke
oo-user-mit-problem

Re: Eingaben vom vorherigen Datensatz übernehmen?

von oo-user-mit-problem » Di, 27.03.2012 12:10

@ Paradigma

Dein Hinweis war goldrichtig. Ich habe mir noch einmal die Datei-Eigenschaften der DB angesehen. Die Datei hatte das Attribut "Schreibgeschützt" (wieso auch immer :shock: )
Nach dem entfernen lief es einwandfrei.

Jetzt kann ich auch Deine Frage beantworten: Ja, so habe ich mir das vorgestellt!!!!!!!!!!!!!!!
VIELEN DANK für Deine Hilfe!!!!!!!!!!!!!!!!!!!!!!!!

Dann kann ich ja jetzt weiterbasteln....

Viele Grüße und nochmals Danke
oo-user-mit-problem

Re: Eingaben vom vorherigen Datensatz übernehmen?

von paradigma » Di, 27.03.2012 02:01

Hallo oo-User

Diese Fehlermeldung ist bei mir noch nie erschienen. Grundsätzlich besagt sie, dass du keine Rechte hast, einen neuen Datensatz einzufügen.

Dass es an den Formulareinstellungen liegt, kann ich mir nicht vorstellen, da sonst die Meldung auch bei mir erscheinen müsste.

Zudem hat R geschrieben, dass es bei ihm auch funktioniert.

Deshalb wage ich mal zu behaupten, dass es an deiner "Arbeitsumgebung" liegt. Eine Möglichkeit wäre, dass du die Datenbank auf einem Laufwerk abgespeichert hast, auf dem du nur Leserechte hast. Ich glaube zwar nicht wirklich, dass es das Problem ist, du kannst es jedoch leicht überprüfen, indem du einfach mal über die Standardschaltfläche "Neuer Datensatz" einen neuen Datensatz einfügst und schaust, ob das funktioniert, falls ja, trifft dieser Fall nicht zu.

Eine andere Möglichkeit wäre eine Globale Einstellung von Open Office, die du ändern müsstest. Da habe ich aber zurzeit keine Idee, was es sein könnte.

Gruss
paradigma

Re: Eingaben vom vorherigen Datensatz übernehmen?

von paradigma » Di, 27.03.2012 01:44

Hallo R

Deine Variante ist natürlich noch etwas eleganter, da direkter.

Danke und Gruss
paradigma

Re: Eingaben vom vorherigen Datensatz übernehmen?

von oo-user-mit-problem » Mo, 26.03.2012 18:31

Hi Paradigma,

ich habe deine Vorschläge ausprobiert. Folgendes ist passiert:

1. DB anmelden hat keine Wirkung gehabt
2. Makrosicherheit war auf hoch eingestellt.

Nach Änderung auf "mittel" konnte ich das Makro starten. Doch dann kam folgende Fehlermeldung:
Fehlermeldung.jpg
Fehlermeldung.jpg (90.09 KiB) 3761 mal betrachtet
Hast Du eine Idee, woran das liegen könnte?

Viele Grüße
oo-user-mit-problem

Re: Eingaben vom vorherigen Datensatz übernehmen?

von F3K Total » Mo, 26.03.2012 16:52

Hi,
bei mir OOo 3.3 W7 läuft das Makro!
Warum gehst Du über eine Abfrage?
Würde dies nicht auch reichen?

Code: Alles auswählen

Sub LetzteLieferung_Eintragen

oDoc = thisComponent
oForm = oDoc.Drawpage.Forms.getByName("FormularLieferschein")
oForm.last 'zum letzten Datensatz springen

dDatum = oForm.getDate(2)
sKunde = oForm.getString(3)
iArtikel = oForm.getLong(4)
iMenge = oForm.getLong(5)

oForm.moveToInsertRow
oForm.updateDate(2, dDatum)
oForm.updateString(3, sKunde)
oForm.updateLong(4, iArtikel)
oForm.updateLong(5, iMenge)
End Sub
Gruß R

Re: Eingaben vom vorherigen Datensatz übernehmen?

von paradigma » Mo, 26.03.2012 12:14

Hallo

Der Schreibschutz kommt bei mir auch, hat aber keinen Einfluss auf die Ausführung des Makros.

Im Moment sehe ich eigentlich nur zwei Möglichkeiten, weshalb es nicht funktioniert:

1. Deine Makrosicherheitsstufe ist allenfalls zu hoch eingestellt. Die muss auf Tief oder Mittel sein, wobei ich Mittel empfehlen würde.
2. Vielleicht muss du die DB anmelden. Bei mir funktioniert das Makro allerdings auch ohne dass die DB angemeldet ist.

Wie sieht es denn mit den übrigen Funktionen aus? Kannst du z.B. auf nomale Weise einen neuen Datensatz im Formular anlegen?

Gruss
Paradigma

PS an andere: Falls nocht jemand die Datei heruntergeladen hat, wäre ich froh um ein kurzes Feedback, ob dort das Makro auch nicht ausgeführt wird. Auf meinen PC kann ich den Fehler jedenfalls nicht reproduzieren.

Re: Eingaben vom vorherigen Datensatz übernehmen?

von paradigma » So, 25.03.2012 18:34

Hallo

Habe deine DB gefunden. Du musst sie mir nicht mehr senden.

Inzwischen habe ich ein Beispiel eingefügt, das du beiliegender DB entnehmen kannst.

Du findest in der DB ein Formular. Wenn du das öffnest und auf "Neue Lieferung" klickst, wird im Formular der zuletzt gespeicherte Eintrag eingefügt (jedoch noch nicht gespeichert!).

Damit das funktioniert, habe ich zwei Abfragen, ein Makro sowie besagtes Formular eingefügt.

Entspricht das deinen Vorstellungen?

Gruss
paradigma
Dateianhänge
Test DB Übernahme.odb
Beispiel: Automatische Übernahme des zuletzt gespeicherten Datensatzes
(14.38 KiB) 228-mal heruntergeladen

Re: Eingaben vom vorherigen Datensatz übernehmen?

von oo-user-mit-problem » Do, 22.03.2012 19:30

Hallo Paradigma,

das freut mich und macht das Leben schon mal leichter. Ich werde das morgen gleich mal durchspielen. Wenn ich noch fragen habe, melde ich mich.
Danke Dir aber schon mal an dieser Stelle

Viele Grüße
oo-user-mit-problem

Re: Eingaben vom vorherigen Datensatz übernehmen?

von paradigma » Do, 22.03.2012 18:34

Hallo VG

Das ist auf jeden Fall möglich. Dazu brauchst du jedoch ein Makro mit folgendem Aufbau.

1. Eine Abfrage auf den zuletzt erfassten Datensatz. Stichwort: Select Last
2. Eine Anweisung, die dir diesen zuletzt verwendeten Datensatz entweder in deine Formularfelder oder direkt in die zugrunde liegende Tabelle schreibt.

Wenn du direkt in die Tabelle schreibst, ist der Datensatz direkt gespeichert, wobei du diesen natürlich nachträglich ändern kannst.
Wenn du die Abfrage in deine Formularfelder eintragen lässt, ist der Datensatz noch nicht gespeichert, was in deinem Fall möglicherweise die bessere Lösung wäre.

Schau die mal folgenden Link an. Dort siehst du ein konkretes Makro, das dir als Grundlage dienen könnte. Falls dich das nicht weiterbringt, musst du dich nochmals melden, damit ich dich unterstützen kann.

http://www.oooforum.de/viewtopic.php?f=18&t=48005

Gruss
paradigma

Nach oben