Respekt - prima Lösung, funktioniert tadellos.ich hatte dieses Problem schon vor Jahren noch unter OOo 2.02 so.
Unsere Lösung damals war folgende
Gruß
Stephan
Moderator: Moderatoren
Respekt - prima Lösung, funktioniert tadellos.ich hatte dieses Problem schon vor Jahren noch unter OOo 2.02 so.
Unsere Lösung damals war folgende
Habe ich. Und...hawkhunter2002 hat geschrieben:Versuchs einfach mal
Schön und gut; der dort beschriebene Ersatz DocumentProperties funktioniert allerdings nicht!!komma4 hat geschrieben:http://api.openoffice.org/docs/common/r ... tInfo.html
Das hat damit zu tun, das die Eigenschaft TemplateFileName ab Version 3 nun TemplateURL heisst:der.milco hat geschrieben:Er führt zur Fehlermeldung: "Methode oder Eigenschaft nicht gefunden"
Danke für die Infokomma4 hat geschrieben:Achtung:
Der Service DocumentInfo ist seit der Version 3 deprecated, d.h. der Code muss nicht mehr funktionieren: http://api.openoffice.org/docs/common/r ... tInfo.html
Code: Alles auswählen
Sub Main
msgbox Urlpfad()
End Sub
'Funktion um den Pfad zur OrginalVorlage zu erhalten
Function getLoadedUrl(document As Object) As String
DIM result as String
DIM Args as Any
DIM i as Integer
result = ""
args = document.Args
For i = LBound(args()) To UBound(args())
If args(i).Name = "URL" Then
result = args(i).Value
Exit For
End If
Next i
getLoadedUrl() = result
End Function
Function Urlpfad()
dim url as any
url = ThisComponent.getDocumentProperties().TemplateURL ' Dateiname mit Pfad der zuständigen Vorlage
If url = "" Then
url = getLoadedUrl(ThisComponent)
If url = "" Then
MsgBox "Warnung! Kein Pfad zur Vorlage/Dokumentherkunft bekannt!"
url = ThisComponent.URL
If url = "" Then
MsgBox "Shit happens..."
Exit Function
End If
End If
End If
UrlPfad = url
End Function
Ja, zumindest bei mir ist das in diesem Sinne angekommen, denn natürlich wäre es mir kein:Wer sich den Code genauer angesehen hat, wird aber wohl eh erkannt haben, dass weder in der alten Eigenschaft "TemplateFileName" noch in der neuen "TemplateURL" der Pfad zur Vorlage steht (Also bei mir sind diese Eigenschaften meisten Strings der Länge Null). Wenn dies der Fall ist werden die Args()-in der Function "getLoadedUrl"- des Documents abgefragt, in der Hoffnung, dass hier etwas brauchbares steht. (War bei mir in der Regel so).
wert gewesen, wenn Du einen Code veröffentlicht hättest der die URL eines template ermittelt die (weil das template in die Vorlagenverwaltung integriert ist) aus dem Dokument gelesen werden kann.Respekt - prima Lösung [...]
Code: Alles auswählen
args = document.Args
For i = LBound(args()) To UBound(args())
If args(i).Name = "URL" Then
result = args(i).Value
Exit For
End If
Next i