dartagnan Napisano Marzec 27, 2010 Zgłoszenie Share Napisano Marzec 27, 2010 Witam. Poprzez przeglądarkę internetową firefox generuje raport.csv Za każdym razem muszę ustawiać kodowanie oraz takie opcje jak oddziel tabulatory, średnik aby były widoczne kolumny i czytelne znaki. W jaki sposób ustawić je jako domyślne oraz żeby openoffice zapisywał "wyciągany" plik jako arkusz.xml Próbowałem to zrobić w ustawieniach. Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
jjj Napisano Marzec 28, 2010 Zgłoszenie Share Napisano Marzec 28, 2010 Ja nie jestem pewien, czy to jest temat na oślą łączkę. Moim zdaniem zmiana domyślnych ustawień filtra importu nie jest możliwa sposobami przewidzianymi przez producenta. Natomiast makropoleceniem -- i owszem. Wobec tego albo ,,Oprogramowanie'', albo nawet ,,Programowanie''. Poniżej zamieszczam szkic kodu StarBasic, który wczytuje plik tekstowy i zapisuje dane w pliku ods. Opcje importu są konfigurowalne w zmiennej args1. Pełną listę parametrów filtra znajdziesz w http://wiki.services.openoffice.org/wiki/D.../Filter_Options Jeżeli Twój plik jest ładowany przez http, to zamiast użycia okna dialogowego (wywołanie openfiledialog) można automatycznie wczytać dane z sieci, podając odpowiedni url. Testowałem umiarkowanie, więc nie traktuj kodu bezkrytycznie. sub Test() fname = openFileDialog() if fname = "" then exit sub oDoc = importFromText(fname) rem jakaś metoda określenia nazwy pliku wynikowego; dodaj zabezpieczenia przez nadpisaniem fname = fname & ".ods" oDoc.storeToUrl(fname, Array()) end sub function openFileDialog() as string rem okno dialogowe wyboru pliku dim picker as Object picker = CreateUnoService( "com.sun.star.ui.dialogs.FilePicker" ) picker.setDisplayDirectory("file:///") If picker.execute() Then openFileDialog = picker.Files(0) else openFileDialog = "" End If End function function importFromText(byval fileURL as string) as object rem import pliku csv; zwraca uchwyt dokumentu Dim args1(3) as new com.sun.star.beans.PropertyValue args1(0).Name = "InteractionHandler" args1(0).Value = "" args1(1).Name = "FilterName" args1(1).Value = "Text - txt - csv (StarCalc)" args1(2).Name = "CharacterSet" args1(2).Value = 77 ' utf-8 args1(3).Name = "FilterOptions" ' opcje importu args1(3).Value = "9" ' separator pól: Tab rem więcej opcji: http://wiki.services.openoffice.org/wiki/D.../Filter_Options oDesk = createUnoService("com.sun.star.frame.Desktop") oDoc = oDesk.LoadComponentFromURL(fileURL, "_blank", 0, args1()) importFromText = oDoc end function Uruchomisz go w Calcu przez Narzędzia/Makra/Zarządzaj/Makro/edycja/... i gdziś stwórz sobie nową bibliotekę z podaną wyżej zawartością. Można też napisać makro w innym języku, a nawet skrypt, który utworzy plik OpenDocument (lub innym podobnym formacie) bez pomocy kobyły jaką jest OpenOffice. Aha: firefox nie generuje raportu. Prawie na pewno nie. <edit> Przejrzałem opcje wiersza poleceń Calca. Nie da się zastosować filtra importu poprzez parametry polecenia systemowego uruchamiającego Calc. Znalazłem za to wątek na podobny temat, może się przyda: http://www.oooforum.org/forum/viewtopic.phtml?t=54584 Rozwiązanie jest podobne do zamieszczonego wyżej. </edit> Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się