(Gelöst)Zusatzinfos versteckt in Writerdokument mitspeichern

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: (Gelöst)Zusatzinfos versteckt in Writerdokument mitspeichern

Re: Zusatzinfos versteckt in Writerdokument mitspeichern

von Frank66 » Do, 13.03.2008 13:45

Hat mir jetzt keine Ruhe gelassen und habe es gefunden!

Hier ein Code, wo man es leicht nachvollziehen kann, falls es mal irgendjemand anderes noch braucht

Code: Alles auswählen

sub Propertytest
set DocInfo = ThisComponent.DocumentInfo

n = "freiesTestProp"
v = "neuer Inhalt um " & Time$
if DocInfo.PropertySetInfo.hasPropertyByName(n) then
	msgbox "Feld vorhanden mit Wert: " & DocInfo.GetPropertyValue(n)
	DocInfo.SetPropertyValue n, v	
else
	msgbox "Feld nicht vorhanden, wird neu angelegt"
	DocInfo.AddProperty n, 0, v
endif

end sub

Re: Zusatzinfos versteckt in Writerdokument mitspeichern

von Frank66 » Do, 13.03.2008 10:02

Hi Karolus,

danke für die Antwort, wenn nichts besseres noch kommt, dann werde ich es so versuchen müssen. Muss aber erst mal Testen, wie viel Zeichen diese Felder aufnehmen können, wie gesagt, habe da etwas mehr an Infos zu hinterlegen.

Mir ist noch ne Idee gekommen, aber leider Termine, so dass ich es erst morgen testen kann. Werde mit MS-Würg da mal Dokumente mit vielen Zusatzinfos erzeugen und importieren, mal schauen, ob und wie Writer die Infos speichert.

Re: Zusatzinfos versteckt in Writerdokument mitspeichern

von Karolus » Mi, 12.03.2008 12:59

Hallo
khsc7 hat geschrieben: müßte das nicht....
dim oPropValues2(2) as new com.sun.star.beans.PropertyValue sein?

Hermann
Nein das wären drei opropvalue2-Paare


Wäre es nicht machbar das du mehrere Infos zusammenpackst:

Code: Alles auswählen

dim oPropValues2(0) as new com.sun.star.beans.PropertyValue

oPropValues2(0).Name = "Title"
oPropValues2(0).Value = "Inhalt für Titel/und_gleich_die_Zusatzinfo/und noch mehr"
und diese beim späteren auslesen wieder mit :
split(alles,/) auseinandernimmst ?

Gruß Karo

Re: Zusatzinfos versteckt in Writerdokument mitspeichern

von khsc7 » Mi, 12.03.2008 12:38

Moin,

müßte das nicht
dim oPropValues2(2) as new com.sun.star.beans.PropertyValue
sein?

Hermann

(Gelöst)Zusatzinfos versteckt in Writerdokument mitspeichern

von Frank66 » Mi, 12.03.2008 11:19

Hallo,

ich müsste per Makro ein Dokument zusätzliche Infos speichern, die primär nur vom Makro aus zu lesen und zu schreiben sind. Es gibt zwar im "Datei"-"Eigenschaften" diese 4 Infofelder, das wäre schon mal ein Anfang, aber leider brauche ich aber viel mehr Felder, so wie es in MS-Würg :roll: ist, wo man da beliebig viele hinzufügen kann.

Habe schon eine mal versucht (hoffte auf eine undokumenterte Möglichkeit), es einfach in die Dokumentinfo reinzuschieben, es erfolgt auch kein Fehler, nur drin ist nichts...
Im folgendem Beispiel wird das Feld "Title" korrekt verändert, meine Zusatzinfo wird verschluckt.

Code: Alles auswählen

dim oPropValues2(1) as new com.sun.star.beans.PropertyValue

oPropValues2(0).Name = "Title"
oPropValues2(0).Value = "Inhalt für Titel"
oPropValues2(1).Name = "Zusatzinfo1"
oPropValues2(1).Value = "Inhalt für Zusatzinfo"
ThisComponent.getDocumentInfo().SetPropertyValues(oPropValues2)

oPropValues() = ThisComponent.getDocumentInfo().getPropertyValues()

on error resume next	' Datum/Zeitangaben müssen anders gelesen werden, aber hier egal...
For i=LBound(oPropValues()) To UBound(oPropValues())
  s = s & i & ": " & oPropValues(i).Name & " = " & oPropValues(i).Value
  s = s & CHR$(10)
Next
msgbox s
Hat irgendjemand noch ne andere Idee, die mich weiter bringen könnte?

Nach oben