[Risolto] Apertura link, pdf, doc scritti in un campo

Discussioni sulle caratteristiche di database
Rispondi
Avatar utente
gaiadeglielfi
Messaggi: 7
Iscritto il: sabato 29 agosto 2020, 15:09

[Risolto] Apertura link, pdf, doc scritti in un campo

Messaggio da gaiadeglielfi »

Ciao a tutti!
Sono Gaia, dalla Liguria, e mi sono appena iscritta. Grazie per questo forum e per l'aiuto che ci date. Siete davvero angeli, preparatissimi e sempre gentili.

Sto costruendo un database e non sono versata in programmazione :) Ne avevo già costruiti altri con software più semplici, come Tuttofile6 e altri, ma OpenOffice Database è professionale e davvero complesso. Ne sto facendo uno di prova per capire.

Ecco il mio problema, già trattato in altri topic (lo ho già letti tutti, ma ahimé non ho risolto).
Ho fatto un campo "linkdaaprire1". Contiene indirizzi di file pdf, doc, oppure anche url internet. Volevo mettere accanto il bottone che, una volta premuto, apre il file o l'url contenuto nel campo.
Ho provato una ad una tutte le macro che ho trovato nel forum. Nessuna mi funziona, e tutte danno problemi diversi.
Le ho inserite (spero di aver fatto giusto) nelle proprietà del bottone: campo di controllo/eventi/approvare l'azione.

Ecco le ultime due che ho provato, su due bottoni diversi, che mi sembrano le più "semplici". Anche queste mi danno errore:

Da viewtopic.php?f=13&t=7372&p=39083&hilit ... ink#p39083

Sub OpenLink (oEvent as Object) 'Push Button > Events > Approve action
oButton = oEvent.Source.Model
sFilePath = oButton.Parent.GetByName("linkdaaprire1").Text
oButton.ButtonType=com.sun.star.form.FormButtonType.URL
oButton.targeturl=sFilePath
End Sub

Ho inserito sia siti internet (es. http://www.libero.it), sia file (es. C:\Users\ciocca\Desktop\pdfprova.pdf)
Quando provo il bottone, mi esce questo errore e il file non si apre:

Errore di runtime BASIC.
Si è verificata un'eccezione
Type: com.sun.star.containter.NoSuchElementException
Message:.


(e mi apre la macro evidenziandomi la terza riga (sFilepath...)

-----------------

Poi ho provato quest'altra macro, tratta da qui:
viewtopic.php?f=13&t=3921&p=18178&hilit ... pdf#p18178

Sub OpenFile (oEvent as Object) 'Push Button > Events > Approve action
oButton = oEvent.Source.Model
sFilePath = oButton.Parent.GetByName("linkdaaprire1").Text
oButton.ButtonType=com.sun.star.form.FormButtonType.PUSH
oButton.targeturl=sFilePath
oButton.ButtonType=com.sun.star.form.FormButtonType.URL
End Sub

Anche qui, schiacciando il pulsante mi esce lo stesso identico errore.

Potreste gentilmente aiutarmi a sistemare?
Grazie mille e buon sabato!

Gaia
Ultima modifica di gaiadeglielfi il lunedì 31 agosto 2020, 14:07, modificato 1 volta in totale.
Gaia
OpenOffice 4.1.7
Win 8.1
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8807
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Apertura link, pdf, doc scritti in un campo

Messaggio da charlie »

Ciao Gaia e benvenuta sul forum.
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 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8807
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Apertura link, pdf, doc scritti in un campo

Messaggio da charlie »

Ciao, al momento non sono con un computer sotto mano.
Prova a vedere qui: viewtopic.php?f=13&t=9323&p=51565&hilit=Link#p51565
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Avatar utente
gaiadeglielfi
Messaggi: 7
Iscritto il: sabato 29 agosto 2020, 15:09

Re: Apertura link, pdf, doc scritti in un campo

Messaggio da gaiadeglielfi »

Grazie mille.
Sì, avevo già provato a guardare anche questo topic e quelli suggeriti in esso.
Ho inserito questa macro che viene indicata:

function openurlimm(oEv as object)
'
dim oForm,oTextBox
oForm=oEv.source.model.parent
oTextBox=oForm.getbyname("linkdaaprire1")
if FileExists ( oTextBox.text) then
oEv.source.model.targeturl=oTextBox.text
openurlimm=true ' Do the programm when the file exists
else
openurlimm=false ' The file does not exist and do nothing
end if
' print convertfromurl(oTextBox.text)
End function

e anche qui, alla pressione del bottone, solito messaggio di errore (sempre quello per tutte queste macro):

Errore di runtime BASIC.
Si è verificata un'eccezione
Type: com.sun.star.containter.NoSuchElementException
Message:.


(e mi apre la macro evidenziandomi la riga oTextBox=oForm.getbyname("linkdaaprire1")

Premetto che ho anche dato il nome al campo dentro al formulario com'è suggerito (sempre "linkdaaprire1") e ho aggiunto nel campo la scritta "file:///"
Grazie per l'aiuto che mi stai dando
Gaia
OpenOffice 4.1.7
Win 8.1
Avatar utente
gaiadeglielfi
Messaggi: 7
Iscritto il: sabato 29 agosto 2020, 15:09

Re: Apertura link, pdf, doc scritti in un campo

Messaggio da gaiadeglielfi »

Aggiungo che ho provato a cercare su google la scritta segnalata nell'errore: com.sun.star.containter.NoSuchElementException

Nel sito inglese di OpenOffice dicono questo, ma non so assolutamente cosa voglia dire :)

Base Hierarchy
NoSuchElementException
┗ ::com::sun::star::uno::Exception

Description
is thrown by child access methods of collections, if the addressed child does not exist.

See also
XEnumeration, XEnumeration::nextElement


Può essere utile? Grazie mille
Gaia
OpenOffice 4.1.7
Win 8.1
Avatar utente
gaiadeglielfi
Messaggi: 7
Iscritto il: sabato 29 agosto 2020, 15:09

Re: Apertura link, pdf, doc scritti in un campo

Messaggio da gaiadeglielfi »

Ciao, ho trovato finalmente la soluzione in questo vecchio topic (correlato ad altro):
viewtopic.php?f=13&t=7372&p=39065&hilit ... ion#p39065

A quanto pare è un problema della macro, e va sostituita una riga (non chiedermi perché :) )

Quoto:

Re: [RISOLTO] Macro per aprire link in database
Messaggioda vincevm » lunedì 25 gennaio 2016, 16:42

Alla lunga ho capito che sFilePath non riusciva a leggere il dato ed a trasferirlo, dopo un'intera giornata di sbattimento, aiutato dalle macro del db di esempio allegato in questo post v ... =13&t=7169, ho capito che dovevo sostituire la riga:
sFilePath = oButton.Parent.GetByName("LinkDocumento").Text
trasformarla così:
sFilePath = oButton.Parent.Columns.GetByName("LinkDocumento").GetString


Ovviamente ho sostituito "LinkDocumento" col mio nome di campo, e funziona tutto alla grande. Apre link, doc, pdf, tutti i file.

Spero che sia utile anche per altri utenti. Grazie mille.

Posso contrassegnare come risolto?
Un caro saluto a tutti.
Gaia
OpenOffice 4.1.7
Win 8.1
Rispondi