Es sind keine Seiten für den Druck verfügbar.Prü...

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

marc 70
**
Beiträge: 38
Registriert: Mo, 24.09.2012 23:00

Es sind keine Seiten für den Druck verfügbar.Prü...

Beitrag von marc 70 »

nabend,

ich habe arge Probleme zuverlässig auszudrucken...
Fehlermeldung:
"Es sind keine Seiten für den Druck verfügbar.Prüfen sie ihr Dokument auf druckrelevante Inhalte."

Code: Alles auswählen

    Global oDok as Object       

sub test1
    dim myFileProp(0) as New com.sun.star.beans.PropertyValue
    myFileProp(0).name="Hidden"
    myFileProp(0).value=True
    oDok = StarDesktop.loadComponentFromURL("private:factory/scalc", "_blank", 0, myFileProp() )
end sub
ein Dokument "Unbenannt 1" und "Unbenannt 2" sind danach vorhanden
Wird das "Unbenannt 1" immer als Standard erzeugt ?

Code: Alles auswählen

sub test2
oComponents = StarDesktop.getComponents()
  oDocs = oComponents.CreateEnumeration()
  Do While oDocs.hasMoreElements()
    oDoc = oDocs.nextElement()
print "offenes Dokument: " & oDoc.title
  Loop
end sub
werden eigentlich immer 3 Sheets erzeugt?
sheets umbenennen

Code: Alles auswählen

sub test3
Sheets = oDok.Sheets
Sheets.getByIndex(0).Name = "druck"
Sheets.getByIndex(1).Name = "dbank"
Sheets.getByIndex(2).Name = "rg"
end sub

zellen werden noch mit Daten gefüllt
und dann zum druck

Code: Alles auswählen

sub test4

oSheet = oDok.sheets.getByName("druck")
oDok.CurrentController.SetActiveSheet(oSheet)

Dim oRanges(0) As New com.sun.star.table.CellRangeAddress
oRanges(0).Sheet = oSheet.Rangeaddress.sheet
oRanges(0).StartColumn = 0 : oRanges(0).StartRow = 0
oRanges(0).EndColumn = 5 : oRanges(0).EndRow = 60 ' zum testen fester Wert
oSheet.setPrintAreas(oRanges())

    Dim myProps(0) as New com.sun.star.beans.PropertyValue
  document   = oDok.CurrentController.Frame
  dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
  dispatcher.executeDispatch(document, ".uno:PrintDefault", "", 0, myProps())
end sub
Druckbereich und die gefüllten Zellen sind mit xray auch zu finden


wenn ich das Dokument sichtbar erzeuge geht alles... :(
das Makro und die Dialog liegen jetzt als Extension unter meine dialog....
AOO401m5(Build:9714)

hat jemand ein Tipp für mich?
könnte verzweifeln :(

gruß marc
Zuletzt geändert von marc 70 am So, 16.02.2014 10:34, insgesamt 1-mal geändert.
AOO411m6(Build:9775) unter WIN7 64bit
Karolus
********
Beiträge: 7535
Registriert: Mo, 02.01.2006 19:48

Re: Es sind keine Seiten für den Druck verfügbar.Prü...

Beitrag von Karolus »

Hallo

Ich meine mich zu erinnern das bei "hidden" geöffneten Dokumenten kein Druck möglich ist weil dafür sowas wie eine Ansicht des Dokuments benötigt wird ?!

Karolus
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
marc 70
**
Beiträge: 38
Registriert: Mo, 24.09.2012 23:00

Re: Es sind keine Seiten für den Druck verfügbar.Prü...

Beitrag von marc 70 »

morgen, :)

dass bei "hidden" geöffneten Dokumenten kein Druck möglich ist ?

glaub nicht, denn wenn ich ein anderes Sheet nehme "rg" :

Code: Alles auswählen

    sub test4

    oSheet = oDok.sheets.getByName("rg")
    oDok.CurrentController.SetActiveSheet(oSheet)

    Dim oRanges(0) As New com.sun.star.table.CellRangeAddress
    oRanges(0).Sheet = oSheet.Rangeaddress.sheet
    oRanges(0).StartColumn = 0 : oRanges(0).StartRow = 0
    oRanges(0).EndColumn = 5 : oRanges(0).EndRow = 60 ' zum testen fester Wert
    oSheet.setPrintAreas(oRanges())

        Dim myProps(0) as New com.sun.star.beans.PropertyValue
      document   = oDok.CurrentController.Frame
      dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
      dispatcher.executeDispatch(document, ".uno:PrintDefault", "", 0, myProps())
    end sub
dann geht es auf Anhieb.

und wenn ich während der Laufzeit erst ein anderes Sheet drucke und danach erst den ersten Sheet "druck" benutze, geht der dann auch wie er soll...und druckt fleißig

und das alles bei "hidden" geöffneten Dokument


noch was ist mir aufgefallen:
wenn man die originalen Sheets so lässt und einfach neue einfügt, anstatt die originalen Sheets umzubenennen dann scheint dass auch zu gehen

XRAY:

Code: Alles auswählen

(0)       | string : "Tabelle1"
(1)       | string : "Tabelle2"
(2)       | string : "Tabelle3"
(3)       | string : "druck"
(4)       | string : "dbank"
(5)       | string : "rg"

gruß marc
AOO411m6(Build:9775) unter WIN7 64bit
Antworten