Guten Morgen Thomas,
ich habe mal eben (mit meinen Möglichkeiten - ohne "XRAY") einen kleinen Test gemacht, indem ich "oCALC.Store()" kommentierte.
Das Ergebnis: Im "hidden"-Mode bleibt die Zeilen-Fixierung erhalten. De-kommentiere ich hingegen "oCALC.Store()", verschwindet die Zeilen-Fixierung.
Das ist aber aber nicht das, was Du beschrieben hast: "[...] auch nach dem Aufruf der Methode Store() ist die Fixierung noch da - erst beim Aufruf der close-Methode verschwindet sie offensichtlich [...]".
Ich habe dann mal noch die "CALC.ods" entpackt und die "settings.xml" angeschaut.
Wenn man das Makro im "hidden"-Mode mit "oCALC.Store()" KOMMENTIERT startet, dann ist dieser Bereich enthalten:
config:config-item-map-indexed config:name="Views">
<config:config-item-map-entry>
<config:config-item config:name="ViewId" config:type="string">view1</config:config-item>
<config:config-item-map-named config:name="Tables">
<config:config-item-map-entry config:name="Tabelle1">
<config:config-item config:name="CursorPositionX" config:type="int">0</config:config-item>
<config:config-item config:name="CursorPositionY" config:type="int">1</config:config-item>
<config:config-item config:name="HorizontalSplitMode" config:type="short">0</config:config-item>
<config:config-item config:name="VerticalSplitMode" config:type="short">2</config:config-item>
<config:config-item config:name="HorizontalSplitPosition" config:type="int">0</config:config-item>
<config:config-item config:name="VerticalSplitPosition" config:type="int">1</config:config-item>
<config:config-item config:name="ActiveSplitRange" config:type="short">2</config:config-item>
<config:config-item config:name="PositionLeft" config:type="int">0</config:config-item>
<config:config-item config:name="PositionRight" config:type="int">0</config:config-item>
<config:config-item config:name="PositionTop" config:type="int">0</config:config-item>
<config:config-item config:name="PositionBottom" config:type="int">1</config:config-item>
<config:config-item config:name="ZoomType" config:type="short">0</config:config-item>
<config:config-item config:name="ZoomValue" config:type="int">100</config:config-item>
<config:config-item config:name="PageViewZoomValue" config:type="int">60</config:config-item>
<config:config-item config:name="ShowGrid" config:type="boolean">true</config:config-item>
<config:config-item config:name="AnchoredTextOverflowLegacy" config:type="boolean">false</config:config-item>
</config:config-item-map-entry>
</config:config-item-map-named>
<config:config-item config:name="ActiveTable" config:type="string">Tabelle1</config:config-item>
<config:config-item config:name="HorizontalScrollbarWidth" config:type="int">1234</config:config-item>
<config:config-item config:name="ZoomType" config:type="short">0</config:config-item>
<config:config-item config:name="ZoomValue" config:type="int">100</config:config-item>
<config:config-item config:name="PageViewZoomValue" config:type="int">60</config:config-item>
<config:config-item config:name="ShowPageBreakPreview" config:type="boolean">false</config:config-item>
<config:config-item config:name="ShowZeroValues" config:type="boolean">true</config:config-item>
<config:config-item config:name="ShowNotes" config:type="boolean">true</config:config-item>
<config:config-item config:name="ShowGrid" config:type="boolean">true</config:config-item>
<config:config-item config:name="GridColor" config:type="int">12632256</config:config-item>
<config:config-item config:name="ShowPageBreaks" config:type="boolean">true</config:config-item>
<config:config-item config:name="HasColumnRowHeaders" config:type="boolean">true</config:config-item>
<config:config-item config:name="HasSheetTabs" config:type="boolean">true</config:config-item>
<config:config-item config:name="IsOutlineSymbolsSet" config:type="boolean">true</config:config-item>
<config:config-item config:name="IsValueHighlightingEnabled" config:type="boolean">false</config:config-item>
<config:config-item config:name="IsSnapToRaster" config:type="boolean">false</config:config-item>
<config:config-item config:name="RasterIsVisible" config:type="boolean">false</config:config-item>
<config:config-item config:name="RasterResolutionX" config:type="int">2290</config:config-item>
<config:config-item config:name="RasterResolutionY" config:type="int">450</config:config-item>
<config:config-item config:name="RasterSubdivisionX" config:type="int">0</config:config-item>
<config:config-item config:name="RasterSubdivisionY" config:type="int">0</config:config-item>
<config:config-item config:name="IsRasterAxisSynchronized" config:type="boolean">false</config:config-item>
<config:config-item config:name="AnchoredTextOverflowLegacy" config:type="boolean">false</config:config-item>
</config:config-item-map-entry>
</config:config-item-map-indexed>
Wenn man das Makro im "hidden"-Mode mit "oCALC.Store()" NICHT KOMMENTIERT startet, dann fehlt obiger Bereich.
Das deckt sich auch mit Deiner Annahme: "[...] Das Fixieren der Zeilen/Spalten ist eine Eigenschaft des CurrentControllers - also der Viewansicht. Wo genau das abgespeichert ist, weiss ich nicht genau. Beim Öffnen "hidden" wird zwar das Objekt erzeugt, eine Viewansicht gibt es aber nicht wirklich. Ich denke, hier musst Du im Bug-Bericht ansetzen: Offensichtlich werden die Informationen zum View-Controller beim Speichern eines "hidden" geöffneten Dokumentes überschrieben durch Standardvorgaben?? Dadurch verschwinden dann natürlich auch die Infos zu fixierten Spalten/Zeilen.... [...]"
Allerdings scheint entgegen Deiner "XRAY"-Beobachtung nicht das "oCALC.Close()", sondern das "oCALC.Store()" der "Übeltäter" zu sein.
Zusammengefasst würde ich das Problem jetzt so formulieren:
Startet man das Makro
Sub TestFixedRow
Dim CALC As String : CALC = "E:\TMP\CALC.ods" ' May be to be modified !
Dim oCALC As Object
Dim aCALCpropv(0) As New com.sun.star.beans.PropertyValue
aCALCpropv(0).Name = "Hidden"
aCALCpropv(0).Value = True
oCALC = StarDesktop.loadComponentFromURL(ConvertToUrl(CALC),"_blank",0,aCALCpropv())
Wait(1000)
oCALC.Store()
oCALC.Close(True)
End Sub
im "hidden"-Mode, so löscht "oCALC.Store()" (die Informationen der VIEW-Ansicht und damit eben auch) die vorhandene "Zeilen-Fixierung".
Ehe ich den BUG-Report entsprechend ergänze, hätte ich schon gern eine kritische Beurteilung meiner "Erkenntnisse". Deshalb die Bitte an Dich und/oder andere: Was meinst Du/ihr dazu ?
Viele Grüße
Hans-Werner :-))