Öffnen von Formularen über Schaltflächen

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: Öffnen von Formularen über Schaltflächen

Re: Öffnen von Formularen über Schaltflächen

von Gabriel123 » Mo, 14.01.2008 20:53

Habs schon gefunden, so läufts richtig mit schreibzugriff:

Code: Alles auswählen

function OpenForm(    formContainer as variant, _
               oConnection as variant, _
               sFormName as string, _
               optional strMode as string) as variant
Dim aProp(1) As New com.sun.star.beans.PropertyValue
dim openMode as string
   if ismissing( strMode ) then
      openMode = "open"
   else
      openMode = strMode
      endif
    aProp(0).Name = "ActiveConnection"
    aProp(0).Value = oConnection
    aProp(1).Name = "OpenMode"
    aProp(1).Value = strMode
    OpenForm = formContainer.loadComponentFromURL(sFormName,"_blank",0,aProp())
end function 

sub onClick( oEvent as variant )
   OpenForm( OEvent.Source.Model.Parent.ActiveConnection.Parent.DatabaseDocument.FormDocuments, _
           OEvent.Source.Model.Parent.ActiveConnection, _
           "auftragserfassung") 
           end sub

von Odenforest » Mi, 22.11.2006 20:50

Hallo,

kleine Ergänzung im Schritt 4):

venkman hat geschrieben:Ich hab's so ohne Programmierung hinbekommen:

4) Datenquelle in den Formulareigenschaften eintragen (diese Verbindung geht beim Speichern als externe odt-Datei leider verloren).
Es darf zusätzlich nicht vergessen werden, bei Formular-Eigenschaften, Register Daten, im Feld "Inhalt" die gewünschte Tabelle bzw. Abfrage auszuwählen.

Gruss

Thomas

von venkman » Do, 25.05.2006 17:41

Ich hab's so ohne Programmierung hinbekommen:

1) Formulare erstellen

2) Formulare speichern als Kopie

3) "Externe" Formulare öffnen und an die Datenbank binden im Menü "Bearbeiten"-> "Datenbank austauschen" (Datenbank muß dafür angemeldet sein).

4) Datenquelle in den Formulareigenschaften eintragen (diese Verbindung geht beim Speichern als externe odt-Datei leider verloren).

5) Schaltflächen erstellen und unter "Aktion" für die Schaltfläche "Dokument/Website öffnen" wählen. Pfad in dem Eingabefeld "URL" eingeben, entweder absolut oder relativ. Wenn alle Formulare in einem Ordner sind, sollte der Dateiname reichen.

Das war's.

OO zeigt übrigens noch ein merkwürdiges Verhalten dabei: wenn man von einem Datenbank-internen Formular auf ein extern gespeichertes zugreift, läßt sich das externe nicht mehr schließen und das interne wird nicht mehr angezeigt.
Werden alle Formular extern gespeichert gibt es kein Problem.

Viel Erfolg!

von Orca » Fr, 12.05.2006 09:24

Hi Thomas!

Die Funktionen hat mir jemand aus Amiland gegeben. Zur Info, was ich eigentlich will:

Ich möchte mir ein Kontaktverwaltungsprogramm erstellen. Dazu möchte ich ein Hauptmenü haben, auf dem ein Button sichtbar ist. Wenn ich diesen Button drücke, soll sich die Eingabemaske (Formular "Kontaktperson") öffnen. Dort kann ich dann alle Kontaktdaten inkl. Historie, Wiedervorlage etc. eintragen.

Ein zweiter Button im Hauptmenü soll mich zu den Abfragen bringen. Hier will ich mir dann zum Beispiel alle Kontakte anzeigen lassen, die ich wieder in der KW 21 ansprechen möchte etc.

Vielleicht gibt es ja auch einen anderen Weg, die beiden Formulare zu verlinken?. Ich hab in den Foren leider noch nicht das richtige gefunden;(

von Toxitom » Fr, 12.05.2006 08:23

Hey Orca,

wo hast du die denn her? Kann ich wenig mit anfangen., ohne mehr Infos zu haben. Wer oder was ist "oev"? Wo erzeugst du diese Varaible, wozu brauchst du die? Für die Sub jedenfalls nicht, wozu dann übergeben?
Erscheint mir generell keine OOo Funktion zu sein, bzw wo ist die Funktion OpenForm() ? Was gibt die zurück? Ansonsten setzt lie ledigllich den Titel des Frames (also des sichtbaren Fensters) - wechselt aber nicht das Formular.

Also, da kann ich dir aktuell wenig helfen.

Gruss
Thomas

von Orca » Do, 11.05.2006 16:49

Hi Thomas!

Ich habe ne Prozedur, um von Form1 auf Form2 zu kommen:

sub onClickForm2Button( oev as variant )
with OpenForm( getFormsTC, getConnectionTC, "Form2" )
.CurrentController.Frame.Title = "My FORM 2"
end with
end sub

Da passiert bloß leider gar nichts;( Richtige Ahnung habe ich leider nicht!

Wäre trotzdem nett, wenn Du mir helfen könntest!!!

von Toxitom » Do, 11.05.2006 16:43

Hey Orca,

hmm, wieviel Ahnung hast du denn vom Programmierern? Wie hast du dein erstes Formular geöffnet? Wie arbeitest du überhaupt?

Base hat eine einfache Struktur, die in den meisten Fällen ausreichend ist. Willst du mehr, geht das alles über die API - also direkte Programmierung zum Beispiel per Basic.

Also, ich nehme nicht an, dass du hier von jemanden eine fertige Lösung erwartest - andererseits lieferst du viel zu wenig Informationen, wie weit du schon bist.

Kurz: Per Mausklick und mit Drag&Drop ist das nicht zu realisieren. Über Programmierung jederzeit - bedarf aber entsprechender Vorkenntnisse und Vorarbeiten.

Viele Grüße
Thomas

Öffnen von Formularen über Schaltflächen

von Orca » Do, 11.05.2006 14:30

Ich versuche schon seit einiger Zeit über eine Schaltfläche in einem Formular ein anderes Formular zu öffnen. Ich kriege es leider nicht mal ansatzweise hin. Wäre super lieb, wenn mir jemand weiterhelfen könnte!

Vielen Dank!

Nach oben