Pannello di Controllo Moderatore ]

[Base] Importazione odf

Creare una macro - Scrivere uno script - Usare le API

[Base] Importazione odf

Messaggioda TheTruth » venerdì 1 gennaio 2021, 22:45

Ciao a tutti,

chiedo a voi perchè ho dei problemi.
Mi sto cimentando con Base.
Vorrei leggere tramite righe di comando Basic un file odf. Per il momento riesco solo con i file .csv (che sostanzialmente sono testo).
Il mio obbiettivo è fare una piccola macro che carica un foglio di un file odf e per poi "spararlo" dentro alle tabelle del piccolo database di Base.

Il mio problema è che stavo cercando librerie già fatte oppure una riga di comando che mi istanzi la lettura del file odf. Con un fil sv diventa difficile gestire il tutto perchè se nelle celle ci sono degli "a capo" la trasformazione rovina il file di testo.

Invece, se potessi avere una lettura del file odf la cosa sarebbe facile.

Non è semplice trovare documentazione e stavo sbattendo la testa qua e la.

Qualcuno mi saprebbe dare una mano?
OpenOffice 4 su Windows 10
TheTruth
 
Messaggi: 4
Iscritto il: venerdì 1 gennaio 2021, 20:02

Re: Importazione odf

Messaggioda charlie » sabato 2 gennaio 2021, 8:14

Ciao e benvenuto/a sul forum.
Se intanto ti vuoi presentare, farai cosa gradita. Puoi farlo in questa sezione -> https://forum.openoffice.org/it/forum/viewforum.php?f=16

L’utente che apre un quesito si impegna:
In caso di inosservanza saremo costretti ad azioni di “richiamo”, sospensione o chiusura del profilo utente.

Buon proseguimento.
charlie
macOS 10.12 Sierra: Open Office 4.1.8 - LibreOffice 6.4.6.2
http://www.charlieopenoffice.altervista.org
Avatar utente
charlie
Site Admin
Site Admin
 
Messaggi: 7139
Iscritto il: mercoledì 19 dicembre 2012, 10:50

Re: Importazione odf

Messaggioda charlie » sabato 2 gennaio 2021, 9:01

Ciao, dovresti essere più preciso su che cosa intendi per file odf.
"ODF" è l'acronimo di Open Document File e in tal senso tutti i file di OO e LO (.odt, .ods, ...) sono file ODF.
Oppure intendi i file ".odf" cioè il file ODF di Math?
In ogni caso, per farti capire, allega file di esempio, grazie.
charlie
macOS 10.12 Sierra: Open Office 4.1.8 - LibreOffice 6.4.6.2
http://www.charlieopenoffice.altervista.org
Avatar utente
charlie
Site Admin
Site Admin
 
Messaggi: 7139
Iscritto il: mercoledì 19 dicembre 2012, 10:50

Re: Importazione odf

Messaggioda TheTruth » sabato 2 gennaio 2021, 13:04

Ciao,

forse mi sono spiegato male:
cercavo una macro in basic per poter recuperare i dati da un foglio Math (foglio di calcolo tipo file excel per intenderci)

Dovrò poi, tramite questa macro (codice in Basic) riempire una tabella in Base (l'Access opensource del pacchetto open office). Quindi la macro sarà collegata dal database di Base.

Esiste qualcosa di già fatto? In Access esisteva

Altrimenti è possibile utilizzare una libreria per aprire un file che non sia solo "FreeFile" di testo?
OpenOffice 4 su Windows 10
TheTruth
 
Messaggi: 4
Iscritto il: venerdì 1 gennaio 2021, 20:02

Re: Importazione odf

Messaggioda charlie » sabato 2 gennaio 2021, 15:02

Dimentica Access, questo è un altro mondo.
Se ci fai vedere cosa fai con i file di testo, forse capiamo meglio e possiamo avere l'ispirazione giusta ;) .
Io so come aprire un file il cui percorso sia salvato in un campo del database, ma l'apertura rimane "a carico" dell'applicazione di default del sistema operativo per quel file.
charlie
macOS 10.12 Sierra: Open Office 4.1.8 - LibreOffice 6.4.6.2
http://www.charlieopenoffice.altervista.org
Avatar utente
charlie
Site Admin
Site Admin
 
Messaggi: 7139
Iscritto il: mercoledì 19 dicembre 2012, 10:50

Re: Importazione odf

Messaggioda TheTruth » sabato 2 gennaio 2021, 15:19

Ecco qui.

Codice: Seleziona tutto   Espandi visualeStringi visuale
Type record
    Acquisizione As String
   Tipo As String
   Produttore As String
   Prodotto As String
   Codice As String
   Seriale As String
   Qta As String
   Fattore As String
   Modo As String
   Programma As String
   Frazione As String
   Scadenza As String
   Fornitore As String
   Ordine As String
   Data As String
   Destinazione As String
   DC As String

End Type


sub file_io_read
    filename = "c:/temp/licenze.csv"
    num = FreeFile()
    open filename for input as #num
    do while not eof(num)
'         Line input #num , sLine
'         sLine= replace(sLine,vbCr, "")
'         sLine= replace(sLine,vbLf, "")
'         print sLine
        input #num,record_line.Acquisizione, record_line.Tipo, record_line.Produttore, record_line.Prodotto, record_line.Codice, record_line.Seriale, record_line.Qta, record_line.Fattore, record_line.Modo, record_line.Programma, record_line.Frazione, record_line.Scadenza, record_line.Fornitore, record_line.Ordine, record_line.Data, record_line.Destinazione, record_line.DC
        print record_line.Acquisizione & " - " & record_line.Tipo & " - " & record_line.Produttore & " - " & record_line.Prodotto & " - " & record_line.Codice & " - " & record_line.Seriale & " - " & record_line.Qta & " - " & record_line.Fattore & " - " & record_line.Modo & " - " & record_line.Programma & " - " & record_line.Frazione & " - " & record_line.Scadenza & " - " & record_line.Fornitore & " - " & record_line.Ordine & " - " & record_line.Data & " - " & record_line.Destinazione & " - " & record_line.DC & " * "

    loop
    close #num
    msgbox "Done"
end sub



Con questo leggo il file csv. E funziona. La lettura intendo.

Solo che la conversione fatta salvando il file da foglio di calcolo a csv mi "frega" perchè nelle celle del foglio di calcolo ci sono degli "a capo" o retrun carriage e nel salvataggio me li allinea in maniera errata.

Mi spiego meglio: nelle celle di Math è possibile andare a capo (con alt-invio) per facilitare la lettura

aaa bbbb

diventa

aaa
bbb

Nel salvateggio in csv rovina il tutto e me li salva come linee nuove. Ecco perchè. Se avessi avuto un libreria che mi leggeva direttamente il foglio di Math evitavo il salvataggio in csv.
OpenOffice 4 su Windows 10
TheTruth
 
Messaggi: 4
Iscritto il: venerdì 1 gennaio 2021, 20:02

Re: Importazione odf

Messaggioda charlie » sabato 2 gennaio 2021, 16:35

Sul forum ci sono esperti che potrebbero essere in grado di aiutarti, ma non sono molto assidui in questo periodo.
Per dare una visibilità maggiore, sposto la discussione in Macro.
Ti consiglierei, comunque, di spostarti sul forum inglese https://forum.openoffice.org/en/forum/ o su quello francese https://forum.openoffice.org/fr/forum/ per avere maggiori possibilità di risposta.
charlie
macOS 10.12 Sierra: Open Office 4.1.8 - LibreOffice 6.4.6.2
http://www.charlieopenoffice.altervista.org
Avatar utente
charlie
Site Admin
Site Admin
 
Messaggi: 7139
Iscritto il: mercoledì 19 dicembre 2012, 10:50

Re: [Base] Importazione odf

Messaggioda charlie » sabato 2 gennaio 2021, 17:08

charlie
macOS 10.12 Sierra: Open Office 4.1.8 - LibreOffice 6.4.6.2
http://www.charlieopenoffice.altervista.org
Avatar utente
charlie
Site Admin
Site Admin
 
Messaggi: 7139
Iscritto il: mercoledì 19 dicembre 2012, 10:50


Torna a Macro e UNO API

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite

cron