Daten von einem Formular ins andere Kopieren

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

Marco Schade
**
Beiträge: 42
Registriert: Mi, 08.03.2017 20:46

Daten von einem Formular ins andere Kopieren

Beitrag von Marco Schade »

Hallo zusammen,

ich habe mir eine Wiedervorlage zusammengebastelt und möchte auf dem Startformular mit bem, Buton einen neue Wiedervorlage erstellen. Dazu öffnet sich ein neues Formular "Wiedervorlage Kommunikation eintragen" in Diesen Formular weden die ganzen Einträge gemacht. jetzt möchte ich ,dass ein Kunde ausgewählt werden kann ( über listbox ziemlich unübersichtlich)
deshalb bibt es ein Button welcher mir das Formular "Kunde" öffnet und ich den Kunden suchen kann.
Jetzt soll der ausgewälte Kunde ( "Kunden ID") mit drücken des Buttons kopiert werden und in das Listenfeld des Formulars "Wiedervorlage Kommunikation eintragen" eingetragen werden .

Ich habe schon mehrere Versuche gestartet, bin aber kläglich gescheitert.
Anbei meine Bespieldatei.

Über eure Hilfe, würde ich mich sehr freuen.

Liebe Grüße
Marco
Dateianhänge
Wiedervorlage test.odb
(278.42 KiB) 161-mal heruntergeladen
RobertG
********
Beiträge: 2034
Registriert: Fr, 13.04.2012 19:28
Kontaktdaten:

Re: Daten von einem Formular ins andere Kopieren

Beitrag von RobertG »

Hallo Marco,

Du versuchst in Deinem Formular "Wiedervorlage ..." die Tabelle "Kommunikation" zu filtern. Das gelingt auch problemlos. Allerdings hat diese Tabelle nur die Kunden-ID '10' und '11' verzeichnet. Deshalb wird nur nach Wahl der Kunden mit den Namen '2' und '3' ein gefilterter Wert angezeigt. Mehr Kunden gibt es nicht in der Tabelle "Kommunikation".

Gruß

Robert
Marco Schade
**
Beiträge: 42
Registriert: Mi, 08.03.2017 20:46

Re: Daten von einem Formular ins andere Kopieren

Beitrag von Marco Schade »

Hallo Robert,
Will eigentlich die Tabelle Kunde filtern und in die wiedervorlage einzufügen
Gruß Marco
Marco Schade
**
Beiträge: 42
Registriert: Mi, 08.03.2017 20:46

Re: Daten von einem Formular ins andere Kopieren

Beitrag von Marco Schade »

Hallo Robert,

könntest Du mir bitte helfen??

was muss ich machen, damit ich die ausgelesene KundenId aus dem Formular "Kunde" in das Listenfeld des Formulars" Wiedervorlage ...." bekomme bei einem neuen Datensatz.

Ich möchte nicht wissen was der Kunde für eine Wiedervorlage hat, sondern eine neue Wiedervorlage erstellen.


Vielen Dank im schon mal

Liebe Grüße

Marco
RobertG
********
Beiträge: 2034
Registriert: Fr, 13.04.2012 19:28
Kontaktdaten:

Re: Daten von einem Formular ins andere Kopieren

Beitrag von RobertG »

Hallo Marco,

das müsste darüber gehen, dass Du beim Öffnen des Formulars

Code: Alles auswählen

oForm.moveToInsertRow()
laufen lässt, dann den Wert in das ID-Feld schreiben lässt

Code: Alles auswählen

oForm.updateInt
(passend zu dem jeweiligen Feld.

Gruß

Robert
Marco Schade
**
Beiträge: 42
Registriert: Mi, 08.03.2017 20:46

Re: Daten von einem Formular ins andere Kopieren

Beitrag von Marco Schade »

Hallo Robert,

ich bin jetzt die ganze zeit an der Sache, Irgendwie bekomme ich es einfach nicht hin.
sogar mit dein Tipp oForm.updateInt da kommt die Fehlermeldung.
Ich bin schon fast am verzweifeln.

da bei sit dasMakro doch garnicht so lang

Code: Alles auswählen

sub Formular_Kd_Wiedervorlage
    oMainForm = ThisComponent.drawpage.forms.getbyname("Filter")
oSubForm = oMainForm.getbyname("Formular Adressen")


nID = oSubForm.getint(oSubForm.findcolumn("ID"))'ID der zugrundeliegenden Tabelle ausgelesen
oFormDocKunde2 = ThisDatabasedocument.formdocuments.getbyname("Wiedervorlage Kommunikation eintragen").open'Zielformular öffen


oFormKunde2 = oFormDocKunde2.drawpage.forms.MainForm' Unterformular im Zielformular


oFormKunde2.moveToInsertRow()
oFormKunde2.Filter = "(""ID"" = '"+nID+"')"
 msgbox nID
oFormKunde2.updateInt
END SUB
wo liegt nur der Fehler ????


Liebe Grüße

Marco
RobertG
********
Beiträge: 2034
Registriert: Fr, 13.04.2012 19:28
Kontaktdaten:

Re: Daten von einem Formular ins andere Kopieren

Beitrag von RobertG »

Hallo Marco,

nimm zuerst einmal alles raus, was mit dem Filter zu tun hat. Auch den Filter aus dem Formular, den Du dort fest eingetragen hast. Dann kopierst Du den untenstehenden Code ein. oFormKunde2 = ... habe ich aus Deinem Code übernommen. END SUB dürfte ebenfalls klar sein.

Code: Alles auswählen

oFormKunde2 = oFormDocKunde2.drawpage.forms.MainForm
Wait(1000)
oFormKunde2.MoveToInsertRow()
oFormKunde2.UpdateInt(oFormKunde2.findColumn("ID Kunde"),nID)
END SUB
Mit der Wartezeit musst Du experimentieren. Ohne die Eingabe der Wartezeit kommt die Meldung "Fehler in der Funktionsfolge", weil wohl das Formular noch nicht so weit ist.

Gruß

Robert
Marco Schade
**
Beiträge: 42
Registriert: Mi, 08.03.2017 20:46

Re: Daten von einem Formular ins andere Kopieren

Beitrag von Marco Schade »

Hallo Robert,

vielen Lieben Dank,
es läuft perfekt genau so habe ich es mir vorgestellt.

Danke nochmal

Liebe Grüße

Marco
Marco Schade
**
Beiträge: 42
Registriert: Mi, 08.03.2017 20:46

Re: Daten von einem Formular ins andere Kopieren

Beitrag von Marco Schade »

Hallo zusammen ,

das Makro läuft perfekt, jetzt habe ich dieses in einem anderen Formular eingebaut mit mehreren Unterformularen, es fügt auch den markierten Datensatz in die Listboox ein , nur leider wird auch eine neue Haupt ID vergeben.

Code: Alles auswählen

Sub Formular_Gastgebergeschenk_eintragen
    oMainForm = ThisComponent.drawpage.forms.getbyname("frmSuche")
'oSubForm = oMainForm.getbyname("Formular Adressen")


nID = oMainForm.getint(oMainForm.findcolumn("ID"))'ID der zugrundeliegenden Tabelle ausgelesen
oFormDocKunde2 = ThisDatabasedocument.formdocuments.getbyname("Party eintragen").open'Zielformular öffen

oFormKunde2 = oFormDocKunde2.drawpage.forms.MainForm
Wait(1000)
oFormKunde2.MoveToInsertRow()
oFormKunde2.UpdateInt(oFormKunde2.findColumn("ID GAstgebergeschenk"),nID)

'if oFormKunde2.isnew then
     ' oFormKunde2.insertrow
    'else
    ' oFormKunde2.updaterow
   'endif

DocumentSchliessen(ThisComponent)

END SUB
	
Könnt Ihr mir einen Tip geben , was ich ändern muss

liebe Grüße

Marco
Marco Schade
**
Beiträge: 42
Registriert: Mi, 08.03.2017 20:46

Re_(gelöst) Daten von einem Formular ins andere Kopieren

Beitrag von Marco Schade »

Hallo zusammen ,

habe es hinbekommen
ich habe

Code: Alles auswählen

oFormKunde2.MoveToInsertRow()
rausgenommen
und schon ging es

Liebe Grüße

Marco
Antworten