Seite 1 von 1

Wie Datensätze kopieren?

Verfasst: Di, 22.08.2006 13:08
von Alla
Hallo,

habe jetzt noch eine Frage.
Ich soll eine Datenbank für Geräte machen, mit Stückliste der Einzelteile. Häufig wird es notwendig sein, einen Datensatz zu kopieren um nur an einem Teil eine Änderung zu machen, statt 20-30 Sachen nochmal eintippen. Ist es möglich bei OpenOffice? Und wenn ja, dann wie?
Es soll ein Button "Kopieren" sein, der den aktuellen Datensatz kopiert und die ID erhöht. Dann soll der User die Änderungen vornehmen können.

Vielen Dank im voraus. Alla

Verfasst: Di, 22.08.2006 14:29
von Mihilist
Hallo,

ich hatte das gleiche Problem bei mir, hab es aber leider per Makro nicht direkt hinbekommen. Ich denke aber es liegt an der Komplexität meines Formulars :lol:

Wenn du dich mit Makros auskennst kannst du es bei dir ja mal direkt versuchen, indem du alle Einträge der Zeile in ein Array zwischenspeicherst, dann in die insertrow hüpfst, und dann wieder alles einträgst.

Codeschnippsel:

Code: Alles auswählen

Sub kopiere_zeile
    Dim temp[13] As Object
    oForm = ThisComponent.Drawpage.Forms.getByIndex(0)
    for i=0 to 13
        temp[i] = oForm.getObject(i)
    next i
    oForm.moveToInsertrow
    for i=0 to 13
        oForm.updateObject(i, temp[i])
    next i
    oForm.insertRow
end Sub
Bin mir nicht sicher, ob es so funktioniert, ist nur auf die Schnelle hingetippelt.

Falls das gleiche Problem wie bei mir entsteht, dass er es einfach aus unerfindlichen Gründen nicht macht, dann wüsste ich nur noch den Weg direkt per SQL-Befehl.