Fórum pro uživatele kancelářského balíku OpenOffice | LibreOffice
 

#1 Chyba v programu » Libreoffice ignoruje setDefaultName FilePicker, SystemFilePicker » 12. 5. 2025 13:40:12

InterFlag
Odpovědí: 0

Vytvořil jsem makro, které by mělo ukládat soubor do CSV s mým nastavením.
Chtěl jsem, aby se mi zobrazilo dialogové okno s názvem souboru předvyplněný názvem původního souboru.
A zde je problém. Pokud použiju FilePicker a SystemFilePicker, tak je jméno souboru prázdné.
Pokud ale použiju OfficeFilePicker, jméno tam mám.
Ještě jsem zjistil, že když vypnu nativní dialogy OS v LibreOffice, začne FilePicker  respektovat setDefaultName.
Ale ten dialog je nehezký, proto to uvádím, že to umí fungovat.

Pokud to chcete zkusit, tak:
Otevřete LibreOffice a přejděte na Nástroje → Možnosti → LibreOffice → Pokročilé.
Klikněte na Otevřít konfiguraci experta.
Do vyhledávacího pole zadejte UseSystemFileDialog a vyhledejte tuto položku.
Pokud je hodnota nastavena na true, změňte ji na false a potvrďte změnu.
Restartujte LibreOffice a zkuste znovu spustit tento můj script.

Sub ExportToCSV
    Dim oDoc As Object
    Dim sURL As String
    Dim FileN As String
    Dim sSelectedFile As String
    Dim fileProps(3) As New com.sun.star.beans.PropertyValue
    Dim oDlg As Object
    Dim aUrl() As Variant
    
    ' Získání aktuálního dokumentu
    oDoc = ThisComponent
    If oDoc Is Nothing Then
        MsgBox "Dokument není otevřen nebo inicializován.", 16, "Chyba"
        Exit Sub
    End If
    
    ' Načtení knihovny Tools pro GetFileNameWithoutExtension
    GlobalScope.BasicLibraries.LoadLibrary("Tools")
    
    ' Zjištění URL aktuálního dokumentu
    sURL = oDoc.getURL()
    If sURL = "" Then
        MsgBox "Dokument není uložen. Uložte dokument a zkuste to znovu.", 16, "Chyba"
        Exit Sub
    End If
    
    Dim sDefaultFileName As String
    sDefaultFileName = GetFileNameWithoutExtension(FileNameoutofPath(sURL))
    ' Manuálně ořízni, pokud je potřeba
    Dim pos As Integer
    pos = InStr(sDefaultFileName, ".")
    If pos > 0 Then
        sDefaultFileName = Left(sDefaultFileName, pos - 1)
    End If
    ' Odstranění "CAF -" pokud je přítomno
    If Left(sDefaultFileName, 5) = "CAF -" Then
        sDefaultFileName = Mid(sDefaultFileName, 6)
    End If

    ' Inicializace FilePickeru
    oDlg = createUnoService("com.sun.star.ui.dialogs.FilePicker")
    Dim listAny(0) As Variant
    listAny(0) = com.sun.star.ui.dialogs.TemplateDescription.FILESAVE_SIMPLE
    oDlg.initialize(listAny())
    
    oDlg.setDisplayDirectory(ConvertFromURL(DirectoryNameoutofPath(sURL, "/")))
    oDlg.setDefaultName(sDefaultFileName) ' Nastavení výchozího názvu
    oDlg.appendFilter("Text CSV (*.csv)", "*.csv")
    oDlg.setCurrentFilter("Text CSV (*.csv)")
  
    ' Zobrazení dialogu
    If oDlg.execute() Then
        aUrl = oDlg.getFiles()
        sSelectedFile = aUrl(0)
        If LCase(Right(sSelectedFile, 4)) <> ".csv" Then
            sSelectedFile = sSelectedFile & ".csv"
        End If
        FileN = ConvertToURL(sSelectedFile)
    Else
        Exit Sub
    End If
    
    ' Nastavení parametrů exportu
    fileProps(0).Name = "FilterName"
    fileProps(0).Value = "Text - txt - csv (StarCalc)"
    fileProps(1).Name = "FilterOptions"
    fileProps(1).Value = "44,0,76,1"
    fileProps(2).Name = "Overwrite"
    fileProps(2).Value = True
    fileProps(3).Name = "OutputEncoding"
    fileProps(3).Value = "UTF-8"
    
    On Error GoTo ErrorHandle
    oDoc.storeToURL(FileN, fileProps())
    MsgBox "Soubor byl uložen jako: " & ConvertFromURL(FileN), 64, "Úspěch"
    Exit Sub
    
ErrorHandle:
    MsgBox "Chyba při ukládání: " & Err.Description & Chr(13) & _
           "Možná je soubor " & ConvertFromURL(FileN) & " otevřen v jiném okně?", 16, "Chyba"
End Sub

#2 Re: Chyba v programu » Calc nezobrazí pozadí buněk vytvořené v Excel » 7. 3. 2022 09:21:01

Také verze 7.3.1.3 zatím stejné chování.
Jen dotaz, nahlásil to někdo? Já to bohužel neumím...


Edit: I verze 7.5.0 se chová stále stejně, Calc stále neumí zobrazit styly tabulky z Excelu,

které jsou k vidění např. zde: https://www.dropbox.com/s/oev8p9tkbvu1h … y.jpg?dl=0

#3 Chyba v programu » Calc nezobrazí pozadí buněk vytvořené v Excel » 2. 2. 2022 10:35:56

InterFlag
Odpovědí: 2

Zdravím,

tak jsem se rozhodl sem do fóra nahlásit chybu, s kterou se již delší dobu potýkám.
Protože ji neumím nahlásit vývojářům, třeba někdo z tohoto fóra to dokáže.
Myslel jsem si, že to prostě jinak asi nejde, ale když jsem si na zkoušku nainstaloval OnlyOffice 7 a výsledek byl správný, rozhodl jsem se vám sem napsat.

Jedná se o to, že když otevřu Excelovský soubor poslaný zákazníkem, tak mi LibreOffice Calc (včetně poslední RC3 verze 7.3.0.3) nezobrazí pozadí buněk. O této chybě již vím velmi dlouho a doufal jsem, že to v nějaké další verzi opraví, ale zřejmě tuto chybu ještě nikdo nenahlásil.


Soubor, který se mi zobrazuje špatně je zde: https://www.dropbox.com/s/qr9zbv5d5tfnc … .xlsx?dl=0

Takto ho vidím v Excelu: https://www.dropbox.com/s/ilz335t5e5cgm … u.jpg?dl=0

Takto ho vidím v LibreOffice: https://www.dropbox.com/s/fkw3ud34ezyoq … dl=0?dl=0g

A takto ho v OnlyOffice: https://www.dropbox.com/s/od4o3opl7exdt … e.jpg?dl=0

Díky moc za nahlášení případně radu, jak nastavit LibreOffice tak, abych viděl tabulky i s pozadím.

Aleš

#4 Re: Chyba v programu » Open Office RC3 neupozorňuje, že soubor je pouze pro čtení » 28. 1. 2009 14:31:46

Plastique napsal(a)

Bug byl 17.12. opraven a v ostré verzi by podle dostupných informací mělo být vše v pořádku.

http://www.openoffice.org/issues/show_bug.cgi?id=95809

Bohužel musím konstatovat, že chyba opravena není, min. u souboru s koncofkou xls. Právě jsem si nainstaloval finálovou verzi 3.01, kolega na PC s Windows XP SP3 si otevřel dvě exelovské tabulky v MS Office 2003 a následně jsem já otevřel ty samé soubory a upozornění, že jsou soubory už otevřené, tudíč pouze pro čtení se neobjevily. Pracuji na Windows Vista 64bit.

#5 Re: Chyba v programu » Open Office RC3 neupozorňuje, že soubor je pouze pro čtení » 21. 1. 2009 10:04:31

Hm, tak jsem si stáhnul a nainstaloval RC2 verzi verze 3.0.1 a bohužel tato chyba opravena zatím není. sad

#6 Re: Chyba v programu » Chyba zámku v OO3 pro soubory .doc » 30. 10. 2008 08:57:15

Jedná se o stejnou chybu, jako jsem už hlásil zde: http://forum.openoffice.cz/viewtopic.php?id=9
Akorát se jedná o soubory .doc, já měl problém u .xls souborů.
Vypadá to, že zřejmě všechy Microsoft formáty budou mít u trojkové verze tento problém.
Bohužel jsem kvůli této chybě byl nucen s vrátit k verzi 2.41, dokud to nebude opraveno. sad

Aleš

#7 Re: Chyba v programu » Open Office RC3 neupozorňuje, že soubor je pouze pro čtení » 16. 10. 2008 21:58:45

Taktak, taky nemohu použít nativní formát, ale právě pouze XLS (kvůli MS Office kolegy) no a pak to žádný upozornění ohledně používaného souboru nedělá...

#8 Re: Chyba v programu » Open Office RC3 neupozorňuje, že soubor je pouze pro čtení » 8. 10. 2008 15:36:59

Bohužel u tabulky ve formátu xls, jež je už otevřená Excelem to bohužel žádnou zprávu nedává. Teprv při ukládání zjistím, zda je či není už otevřená a tímpádem pouze pro čtení sad

#9 Re: Chyba v programu » Open Office RC3 neupozorňuje, že soubor je pouze pro čtení » 8. 10. 2008 15:09:39

Jedná se o exelovskou tabulku, protože kolega používá MS Office 2000. Ano, soubor je umístěn na síťovém disku (NAS). Teda pokud se jedná o vlastnost, je to dost nepříjemná, protože si tímpádem můžeme navzájem přepisovat data. sad  Pokud by šla jakýmkoliv způsobem vypnout, byl bych vděčný. I když nechápu, jak funguje ta nová vlastnost. Vždyť ostatní uživatelé, co otevřou již někým otevřenou tabulku, nemohou přeci vidět, jaké změny v ní ten co ji otevřel jako první, udělal.

#11 Chyba v programu » Open Office RC3 neupozorňuje, že soubor je pouze pro čtení » 2. 10. 2008 06:24:44

InterFlag
Odpovědí: 12

Zdravím, zatím ve všech verzích trojkové řady OpenOffice se setkávám s nepříjemnou chybou a to že mě OpenOffice neupozorňuje, že otvíraný soubor je otevřen již jinde a tudíš ho mohu pouze číst. Zjistím to bohužel až při pokusu o uložení. U verze 2.** se nahoře ukazovalo vedle názvu otevřeného dokumentu i informace "pouze pro čtení". Tato chyba je velmi nepříjemná z jednoho důvodu. Já a pan kolega nezávisle na sobě doplňujeme do jedné exlelovské tabulky hodnoty Pantone barev. Jedná se o doplňování cmykových hodnot. Do verze 2.0 jsem po otevření tabulky viděl, že na ní kolega pracuje a hodnoty jsme si napsal jinam s tím, že až je později do ní doplním (až bude zavřená). Nyní otevřu tabulku (tváří se, že není používaná), doplňuju do ní nové údaje až při ukládání zjistím, že ji má otevřenou kolega. Což je malér, protože pokud budu čekat, až ji uzavře, tak přepíšu jeho nové údaje zapsané po tom, co jsem tabulku otevřel. Takže mě nezbývá než o tabulku zavřít bez uložení, zpětně zjišťovat, co jsem nového do ní zapsal a přepsat to někam jinam. Prosím, nahlaste někdo toto jako bug (angličtinu bohužel neovládám).

Děkuji mnohokrát

Ulrych

Zápatí

Používáme FluxBB