WRITER: Eingabefelder füllen

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: WRITER: Eingabefelder füllen

Re: WRITER: Eingabefelder füllen

von Stephan » Di, 02.06.2015 14:49

ach und, P.S.

der Zugriff über VBS und Ausgabe in separate DAtei ist wohl unnötig, schau Dir mal den vorletzten Beitrag im Thread:
viewtopic.php?p=30475

an, dort ist ein Beispiel wie man VBS in StarBasic 'kapseln' kann.


Gruß
Stephan

Re: WRITER: Eingabefelder füllen

von Stephan » Di, 02.06.2015 14:40

Wo ich das Problem hab, ist nun, wie ich die Daten aus der Datei dynamisch ins OO-Dokument bekomme.
naja, ich denke das soll per Makro geschehen?

Wenn ja dann ist das konkrete Feld nahezu egal denn es dient ja nur als Platzhalter, am unverfänglichsten wäre wohl ein Feld vom Typ "Benutzerfeld", hier ist der Zugriff beschrieben:
http://www.dannenhoefer.de/faqstarbasic ... Texte.html

aber noch leichter ist es doch Textmarke zu verwenden, die Du im Dokument (hier also der Dokumentvorlage *.ott dort platzierst wo die gewünschten Infos (name, Telefon, ...) jeweils später erscheinen sollen.

Im Makro musst Du dann nur die entsprechenden Infos an die richtige Textmarke schreiben wie hier beschrieben (siehe "Erster Fall"):
http://www.dannenhoefer.de/faqstarbasic ... dText.html



Gruß
Stephan

Re: WRITER: Eingabefelder füllen

von komma4 » Di, 02.06.2015 13:51

Oberlandler hat geschrieben:bei jeden Benutzer diese Daten manuell einzupflegen. Wird bei ca. 100 (u.U. sogar 3000) a bisserl viel.
Naja - dafür sind wir hier ja im Bereich "Programmierung" :-)

Mit einem ganz alten Thread aus dem oooforum.org (Googles Cache benutzen, die Seite ist schwer bis fast nicht erreichbar!) klappt das Setzen nicht vorhandener Benutzer-Eigenschaften immer noch hervorragend.

Code: Alles auswählen

oConfigData_UserProfile = GetConfigAccess( "/org.openoffice.UserProfile/Data", True ) 

IF oConfigData_UserProfile.givenname = "" THEN
   oConfigData_UserProfile.givenname = "Winfried"

Ich würde so vorgehen:
Dokument aus Vorlage wird erstellt: Makro läuft ab (Extras>Anpassen...>Ereignisse bei der Vorlage, welche Benutzerfelder nutzt)
* prüfen, ob AD Daten schonmal bezogen wurden (sentinel Datei beim Benutzer setzen)
* wenn nicht, Daten aus AD holen und in OOo hinterlegen; Wächter-Datei schreiben

Dann ist es Dir egal, ob es 100 oder 3000 Benutzer sind....

Wäre das nichts?

Re: WRITER: Eingabefelder füllen

von Oberlandler » Di, 02.06.2015 13:01

Erstmal vielen Dank für Deine Hilfe. :D

Code: Alles auswählen

"Die Informationen, die beim Erstellen eines neuen Dokuments aus einer Vorlage eingefügt werden, werden aus Extras>Einstellungen...>OpenOffice>Benutzerdaten bezogen.
"

Das ist mir schon klar. Heißt aber, bei jeden Benutzer diese Daten manuell einzupflegen. Wird bei ca. 100 (u.U. sogar 3000) a bisserl viel.
Und nachdem ich diese Daten ja im AD eh habe, bietet sich das doch an.

Den Link, wo Du dann angehängt hast, hab ich mir schon mehrfach durchgelesen. HIer wird erläutert wie ich die Daten aus dem AD in einen Datei bekomme. Diesen Schritt hab ich schon hinter mir.
Wo ich das Problem hab, ist nun, wie ich die Daten aus der Datei dynamisch ins OO-Dokument bekomme.
Ich hab das mal mit "EIFÜGEN-FELDBEFEHLE-DATENBANK-SERIENDRUCKFELD probiert, aber da wird nix aktualisiert.
Ausserdem schreibt er ja: "Wie ich Text in ein Dokument per Script schreiben kann, weiß ich. Ich möchte halt die Informationen des angemeldeten Users in das Formular einfügen."
Er ja - ich nicht... 8)

Dankfür Deine Hilfe.

Re: WRITER: Eingabefelder füllen

von komma4 » Fr, 29.05.2015 11:08

und das noch gefunden:

viewtopic.php?t=60875

Re: WRITER: Eingabefelder füllen

von komma4 » Fr, 29.05.2015 10:55

Oberlandler hat geschrieben:hab ich eine WORD-Vorlage gebaut [...]und Name, email-Adresse, Telefon usw. in Formularfelder eingetragen hat.
In OOo gibt es dafür die Feldbefehle [Einfügen>Feldbefehl>Autor und Andere...]
Die Informationen, die beim Erstellen eines neuen Dokuments aus einer Vorlage eingefügt werden, werden aus Extras>Einstellungen...>OpenOffice>Benutzerdaten bezogen.

Hilft das nicht weiter?

WRITER: Eingabefelder füllen

von Oberlandler » Fr, 29.05.2015 10:18

Hallo Profis,

folgendes: Wir haben bisher hier mit MS-Word gearbeitet. Um jeden Mitarbeiter seinen passenden Briefkopf anzubieten, hab ich eine WORD-Vorlage gebaut, welche mit einem AUTO-New-Makro das Active-Directory ausgelesen hat und Name, email-Adresse, Telefon usw. in Formularfelder eingetragen hat.

Diese Funktion möcht ich nun auf Open-Writer umsetzen,was aber scheinbar gar ned sooo einfach ist.
Zugriff auf AD iss ehe ein größeres Problem, aber das löse ich indem beim Anmelden des Users über ein LOGON-Script die gewünschten Daten aus dem AD auslese und als txt-Datei auf einem lokalen oder gemappten Laufwerk ablege. Und auf diese Datei möchte ich über ein Makro aus OO zugreifen.
Hat den Vorteil, dass ich diese für andre Dinge auch nutzen kann.

Wie aber bring ich nun dier Daten aus der Datei in Felder auf ein OO-Dokument?
Ich hab hier viiiieeeel gegoogelt und auch getestet, aber so richtig vernünftig hat nix gefunzt.
Es geht schon an, dass es "New-Dokument" basierend auf einer OO-Vorlage scheinbar ned gibt.

Dann gibt es einmal "Engabefelder", und sog. "Shapes"? Welches passt nun besser.
Dann poppt beim Start wieder ein Fenster zur Dateneingabe auf. Das soll aber ned...
Kann ich die Felder auch "schützen" (wie in Word?)

Wer hat dieses Problem schon mal gelöst?

Vielen Dank für Eure Hilfe.


Moderation,4: verschoben in MAKROS (und allgem. Programmierung)-Unterbereich, wo alle Makro-Fragen hin gehören; Betreff angepasst

Nach oben