Pannello di Controllo Moderatore ]

[Risolto] Macro ed errori di runtime BASIC

Discussioni sulle caratteristiche di database

[Risolto] Macro ed errori di runtime BASIC

Messaggioda Bonucci » domenica 3 maggio 2020, 17:06

Salve,
sono nuovo su questo forum ma uso oo e lo da un po' di tempo.
Non essendo bravo con il linguaggio per le macro, quando ne ho bisogno cerco in giro ma spesso gli script che trovo danno un errore tipico: Errore di runtime BASIC. Variabile non definita.

In questo caso, per salvare il record presente in una form, ho usato un pulsante che invoca la seguente macro:

Codice: Seleziona tutto   Espandi visualeStringi visuale
REM **** salva record ****
Sub saveRecord(Optional obj As Object)
On Error Resume Next
   Dim Form As Object
   Form=Event.Source.Model.Parent
   If Form.IsNew Then
      Form.insertRow()
   Else
      Form.updateRow()
   End If
End Sub


Non succede nulla ne tantomeno il record viene salvato, remmando lo statement 'On Error Resume Next' compare l'errore sopra descritto.
Non capisco se c'è qualcosa che non attivo durante l'installazione di oo.
Ringrazio in anticipo per l'aiuto.

Pier Luigi
Ultima modifica di Bonucci il lunedì 4 maggio 2020, 23:53, modificato 2 volte in totale.
Apache OpenOffice 4.1.7 windows10
Bonucci
 
Messaggi: 24
Iscritto il: domenica 3 maggio 2020, 16:53

Re: Macro ed errori di runtime BASIC

Messaggioda charlie » lunedì 4 maggio 2020, 7:59

Ciao, quella macro accede ad un formulario tramite un evento. A quale evento è stata associata?
Puoi condividere il database?
charlie
macOS 10.12 Sierra: Open Office 4.1.7 - LibreOffice 6.2.8.2
http://www.charlieopenoffice.altervista.org
Avatar utente
charlie
Site Admin
Site Admin
 
Messaggi: 6937
Iscritto il: mercoledì 19 dicembre 2012, 11:50

Re: Macro ed errori di runtime BASIC

Messaggioda Bonucci » lunedì 4 maggio 2020, 11:45

Mi puoi dire come faccio a condividere il db?
Apache OpenOffice 4.1.7 windows10
Bonucci
 
Messaggi: 24
Iscritto il: domenica 3 maggio 2020, 16:53

Re: Macro ed errori di runtime BASIC

Messaggioda charlie » lunedì 4 maggio 2020, 11:53

charlie
macOS 10.12 Sierra: Open Office 4.1.7 - LibreOffice 6.2.8.2
http://www.charlieopenoffice.altervista.org
Avatar utente
charlie
Site Admin
Site Admin
 
Messaggi: 6937
Iscritto il: mercoledì 19 dicembre 2012, 11:50

Re: Macro ed errori di runtime BASIC

Messaggioda Bonucci » lunedì 4 maggio 2020, 16:17

Ciao,
in allegato il db.
Grazie.
Allegati
palestra_produzione_1_0.odb
(174.5 KiB) Scaricato 16 volte
Apache OpenOffice 4.1.7 windows10
Bonucci
 
Messaggi: 24
Iscritto il: domenica 3 maggio 2020, 16:53

Re: Macro ed errori di runtime BASIC

Messaggioda charlie » lunedì 4 maggio 2020, 16:48

Ciao, all'apertura di qualunque formulario, compare questo errore:
Schermata 2020-05-04 alle 16.40.34.png

Il messaggio è abbastanza chiaro: Basic non trova uno script. Ma io non trovo il modulo 'Module1' nella libreria 'Standard' del file.
A che livello memorizzi le tue macro? Perché seguano il file devono essere memorizzate in esso, non a livello 'macro personali'.
charlie
macOS 10.12 Sierra: Open Office 4.1.7 - LibreOffice 6.2.8.2
http://www.charlieopenoffice.altervista.org
Avatar utente
charlie
Site Admin
Site Admin
 
Messaggi: 6937
Iscritto il: mercoledì 19 dicembre 2012, 11:50

Re: Macro ed errori di runtime BASIC

Messaggioda Bonucci » lunedì 4 maggio 2020, 16:54

Ok, in effetti le memorizzo come macro personali. Le devo spostare tutte nella libreria standard e rimandare il file?
Pier Luigi
Apache OpenOffice 4.1.7 windows10
Bonucci
 
Messaggi: 24
Iscritto il: domenica 3 maggio 2020, 16:53

Re: Macro ed errori di runtime BASIC

Messaggioda charlie » lunedì 4 maggio 2020, 17:00

Sì, grazie. Indica anche il formulario interessato dall'errore da te segnalato, ne vedo parecchi ...
charlie
macOS 10.12 Sierra: Open Office 4.1.7 - LibreOffice 6.2.8.2
http://www.charlieopenoffice.altervista.org
Avatar utente
charlie
Site Admin
Site Admin
 
Messaggi: 6937
Iscritto il: mercoledì 19 dicembre 2012, 11:50

Re: Macro ed errori di runtime BASIC

Messaggioda Bonucci » lunedì 4 maggio 2020, 17:08

Ecco il file modificato,
il form è "anagrafe", c'è un pulsante verde "salva" a cui ho riassociato la macro salvata nella nuova libreria.
L'errore lo indica nello statement "Form=......."

Pier Luigi
Allegati
palestra_produzione_1_0.odb
(176.86 KiB) Scaricato 18 volte
Apache OpenOffice 4.1.7 windows10
Bonucci
 
Messaggi: 24
Iscritto il: domenica 3 maggio 2020, 16:53

Re: Macro ed errori di runtime BASIC

Messaggioda charlie » lunedì 4 maggio 2020, 17:54

(A parte l'errore che ho già segnalato in precedenza e che rimane; adesso il modulo e la macro ci sono, mah! :roll: )

Presumo che l'errore di runtime di Basic stia nel non riuscire ad accedere al formulario di riferimento. Ma non so perché :oops: ... dovrebbe farlo, il codice mi sembra giusto.

Comunque si può superare l'ostacolo accedendo al formulario con il metodo getByName:
Codice: Seleziona tutto   Espandi visualeStringi visuale
Form=thisComponent.drawpage.forms.getByName("MainForm")

Tutto il resto funziona, anche il salvataggio del record, basta fare una modifica per verificarlo.

Poi ci sarebbe un discorso riguardante il modulo della query che si apre nel formulario per indicare il cognome da cercare. Molto brutto :D , ma è un altro discorso
charlie
macOS 10.12 Sierra: Open Office 4.1.7 - LibreOffice 6.2.8.2
http://www.charlieopenoffice.altervista.org
Avatar utente
charlie
Site Admin
Site Admin
 
Messaggi: 6937
Iscritto il: mercoledì 19 dicembre 2012, 11:50

Re: Macro ed errori di runtime BASIC

Messaggioda charlie » lunedì 4 maggio 2020, 18:13

Trovato ! obj al posto di Event!
Codice: Seleziona tutto   Espandi visualeStringi visuale
Sub saveRecord(Optional Event As Object)
'On Error Resume Next
   Dim Form As Object 
   Form=Event.Source.Model.Parent
   If Form.IsNew Then
      Form.insertRow()
   Else
      Form.updateRow()
   End If
End Sub
charlie
macOS 10.12 Sierra: Open Office 4.1.7 - LibreOffice 6.2.8.2
http://www.charlieopenoffice.altervista.org
Avatar utente
charlie
Site Admin
Site Admin
 
Messaggi: 6937
Iscritto il: mercoledì 19 dicembre 2012, 11:50

Re: Macro ed errori di runtime BASIC

Messaggioda Bonucci » lunedì 4 maggio 2020, 18:28

OK ora funziona, grazie mille.

A proposito del parametro COGNOME con il box di dialogo bruttino, mi dai una dritta?

Quando apri il DB non ti si apre automaticamente il form MENU? pur con l'ennesima segnalazione di errore? ho inserito da qualche parte una macro per l'apertura automatica "AutoExec" presa dalla rete.

Se sto esagerando con le richieste, basta una parola e smetto.

Pier Luigi
Apache OpenOffice 4.1.7 windows10
Bonucci
 
Messaggi: 24
Iscritto il: domenica 3 maggio 2020, 16:53

Re: Macro ed errori di runtime BASIC

Messaggioda charlie » lunedì 4 maggio 2020, 19:56

Allora, l'errore rimasto è proprio dovuto al fatto che è stata associata all'evento in Strumenti > Personalizza > Eventi > Apri documento una macro sbagliata (HideAllMenuToolbars) al posto di quella Autoexec.

Per il parametro Cognome, parliamone. Ma apri una nuova discussione.
Bonucci ha scritto:Se sto esagerando con le richieste, basta una parola e smetto.

Assolutamente no, il forum è fatto per quello: domande e risposte in libertà.
charlie
macOS 10.12 Sierra: Open Office 4.1.7 - LibreOffice 6.2.8.2
http://www.charlieopenoffice.altervista.org
Avatar utente
charlie
Site Admin
Site Admin
 
Messaggi: 6937
Iscritto il: mercoledì 19 dicembre 2012, 11:50

Re: Macro ed errori di runtime BASIC

Messaggioda Bonucci » lunedì 4 maggio 2020, 21:08

Ok.
Pier Luigi
Apache OpenOffice 4.1.7 windows10
Bonucci
 
Messaggi: 24
Iscritto il: domenica 3 maggio 2020, 16:53

Re: [Risolto] ed errori di runtime BASIC

Messaggioda Bonucci » martedì 5 maggio 2020, 14:54

Ciao,
come già detto ho spostato tutte le macro sulla libreria dell'applicazione e ho modificato l'aggancio di tutte le macro alla nuova libreria.
Per essere sicuro di aver completato il lavoro ho cancellato "modulo1" dalla vecchia libreria in modo che gli errori mi avrebbero segnalato qualche form non aggiornato. In realtà ogni form che apro mi segnala l'inesistenza di "modulo1 HideAllMenuToolbars" anche se poi si apre correttamente senza le barre di menù. E' come se oltre alla macro inserita in Strumenti-->Personalizza-->Apri documento (che ho modificato) ci fosse una ulteriore dichiarazione che si riferisce alla vecchia libreria.
Suggerimenti su dove cercare?

Pier Luigi
Apache OpenOffice 4.1.7 windows10
Bonucci
 
Messaggi: 24
Iscritto il: domenica 3 maggio 2020, 16:53

Re: [Risolto] ed errori di runtime BASIC

Messaggioda charlie » martedì 5 maggio 2020, 14:59

No, così alla cieca non riesco. Puoi allegare di nuovo?
charlie
macOS 10.12 Sierra: Open Office 4.1.7 - LibreOffice 6.2.8.2
http://www.charlieopenoffice.altervista.org
Avatar utente
charlie
Site Admin
Site Admin
 
Messaggi: 6937
Iscritto il: mercoledì 19 dicembre 2012, 11:50

Re: [Risolto] ed errori di runtime BASIC

Messaggioda Bonucci » martedì 5 maggio 2020, 15:18

Eccolo.
A livello generale c'è una macro di apertura del form "Menu" (funziona)
Per ogni form c'è la macro di apertura senza barre che da il problema segnalato.
Grazie.
Allegati
palestra_produzione_1_5.odb
(177.68 KiB) Scaricato 14 volte
Apache OpenOffice 4.1.7 windows10
Bonucci
 
Messaggi: 24
Iscritto il: domenica 3 maggio 2020, 16:53

Re: [Risolto] ed errori di runtime BASIC

Messaggioda charlie » martedì 5 maggio 2020, 16:55

Mi sembra che gli errori si verifichino a ripetizione. Pare che non riconosca il modulo in cui sono memorizzate le macro.
Con pazienza rimuovi e rimetti i link alle macro uno ad uno.
Io ho provato con un paio e mi pare che funzioni.
charlie
macOS 10.12 Sierra: Open Office 4.1.7 - LibreOffice 6.2.8.2
http://www.charlieopenoffice.altervista.org
Avatar utente
charlie
Site Admin
Site Admin
 
Messaggi: 6937
Iscritto il: mercoledì 19 dicembre 2012, 11:50

Re: [Risolto] ed errori di runtime BASIC

Messaggioda Bonucci » martedì 5 maggio 2020, 16:56

OK
Apache OpenOffice 4.1.7 windows10
Bonucci
 
Messaggi: 24
Iscritto il: domenica 3 maggio 2020, 16:53

Re: [Risolto] Macro ed errori di runtime BASIC

Messaggioda Bonucci » martedì 5 maggio 2020, 17:06

A me non funziona, ho provato anche a rimuovere del tutto la macro da un form ma all'apertura segnala lo stesso errore.
Non ricordo bene ma mi pare di aver visto da qualche parte dei settaggi che riguardano le librerie, potrei aver fatto qualche errore li ma non riesco a ritrovare da dove ci si arriva.

Pier Luigi
Apache OpenOffice 4.1.7 windows10
Bonucci
 
Messaggi: 24
Iscritto il: domenica 3 maggio 2020, 16:53

Re: [Risolto] Macro ed errori di runtime BASIC

Messaggioda Bonucci » martedì 5 maggio 2020, 17:16

Ciao, ho trovato:
strumenti-->macro-->organizza finestre di dialogo
Sul tab librerie si può scegliere tra: macro ...personali, macro ... di open office, macro ... palestra_produzione...
di default compare: personali e nella finestra in basso: Standard.
I pulsanti indicano: modifica, chiudi nuovo, importa
Non capisco se e come si debba settare qualcosa in questo punto.
Apache OpenOffice 4.1.7 windows10
Bonucci
 
Messaggi: 24
Iscritto il: domenica 3 maggio 2020, 16:53

Re: [Risolto] Macro ed errori di runtime BASIC

Messaggioda charlie » mercoledì 6 maggio 2020, 9:00

Ciao, non c'è stato altro modo che quello di portare con copia/incolla tabelle, query e report dentro un nuovo database.
Per i formulari ho dovuto fare copia/incolla a livello edit mode per evitare che copiasse anche i link. Troverai qualche sfondo da rifare.
Poi ho rimesso dentro macro e link.
Non è attivata la macro autoexec.
Non ho inserito la famigerata macro HideAllMenuToolbar, per scaramanzia :mrgreen: .
Allegati
NUOVO.odb
(131.52 KiB) Scaricato 19 volte
charlie
macOS 10.12 Sierra: Open Office 4.1.7 - LibreOffice 6.2.8.2
http://www.charlieopenoffice.altervista.org
Avatar utente
charlie
Site Admin
Site Admin
 
Messaggi: 6937
Iscritto il: mercoledì 19 dicembre 2012, 11:50

Re: [Risolto] Macro ed errori di runtime BASIC

Messaggioda Bonucci » mercoledì 6 maggio 2020, 14:57

Ciao, mi spiace di averti dato tutto questo lavoro, mi bastava l'indicazione e avrei fatto da me.
Non so come fai a stare dietro a tutti i problemi.
Ti ringrazio ancora.

Pier Luigi
Apache OpenOffice 4.1.7 windows10
Bonucci
 
Messaggi: 24
Iscritto il: domenica 3 maggio 2020, 16:53

Re: [Risolto] Macro ed errori di runtime BASIC

Messaggioda charlie » mercoledì 6 maggio 2020, 14:59

Bonucci ha scritto: mi bastava l'indicazione e avrei fatto da me

Fossi stato sicuro del risultato ....
charlie
macOS 10.12 Sierra: Open Office 4.1.7 - LibreOffice 6.2.8.2
http://www.charlieopenoffice.altervista.org
Avatar utente
charlie
Site Admin
Site Admin
 
Messaggi: 6937
Iscritto il: mercoledì 19 dicembre 2012, 11:50

Re: [Risolto] Macro ed errori di runtime BASIC

Messaggioda Bonucci » giovedì 7 maggio 2020, 17:40

Ciao, ho aperto il db che mi hai mandato e incredibilmente ottengo lo stesso esatto errore.
Forse reinstallo oo, che ne dici?

Pier Luigi
Apache OpenOffice 4.1.7 windows10
Bonucci
 
Messaggi: 24
Iscritto il: domenica 3 maggio 2020, 16:53

Re: [Risolto] Macro ed errori di runtime BASIC

Messaggioda Bonucci » giovedì 7 maggio 2020, 18:08

L'ho fatto, disinstallato e reinstallato.
Il problema e' rimasto così mi sono arreso ed ho ricreato la libreria Modulo1 su macro personali, ora sembra funzionare,
Non capisco molte cose:
aperto nuovamente il db c'era la lista dei file aperti di recente, da dove la prende, dove la tiene?
pensavo che da qualche parte nella piattaforma ci fosse un parametro di livello più alto non disponibile allo sviluppatore che fosse rimasto settato sulla libreria personale e quindi reinstallando sarebbe dovuto sparire. boh!
Non essendo un esperto vero di oo il mio parere conta poco, può darsi che involontariamente abbia fatto qualcosa di sbagliato ma a prima vista sembra un baco della piattaforma. Che ne dici?
Apache OpenOffice 4.1.7 windows10
Bonucci
 
Messaggi: 24
Iscritto il: domenica 3 maggio 2020, 16:53

Re: [Risolto] Macro ed errori di runtime BASIC

Messaggioda charlie » giovedì 7 maggio 2020, 18:13

No, non servirebbe a niente. Avevi aperto anche il tuo file contemporaneamente?
charlie
macOS 10.12 Sierra: Open Office 4.1.7 - LibreOffice 6.2.8.2
http://www.charlieopenoffice.altervista.org
Avatar utente
charlie
Site Admin
Site Admin
 
Messaggi: 6937
Iscritto il: mercoledì 19 dicembre 2012, 11:50

Re: [Risolto] Macro ed errori di runtime BASIC

Messaggioda charlie » giovedì 7 maggio 2020, 18:47

charlie ha scritto:No, non servirebbe a niente.

Mi riferivo alla disinstallazione e reinstallazione. ma mi hai preceduto.

Prima di mettere le macro avevo salvato una versione pulita, senza link e macro (saggezza senile ;) ).
Puoi ripartire da questa.
Allegati
NUOVO PULITO.odb
(127.15 KiB) Scaricato 18 volte
charlie
macOS 10.12 Sierra: Open Office 4.1.7 - LibreOffice 6.2.8.2
http://www.charlieopenoffice.altervista.org
Avatar utente
charlie
Site Admin
Site Admin
 
Messaggi: 6937
Iscritto il: mercoledì 19 dicembre 2012, 11:50

Re: [Risolto] Macro ed errori di runtime BASIC

Messaggioda Bonucci » giovedì 7 maggio 2020, 19:33

Ciao, ci siamo incrociati con le risposte.
Grazie per la versione pulita.
Ti se fatto un'idea di cosa è successo? Hai letto il mio precedente post?
Pier Luigi.
Apache OpenOffice 4.1.7 windows10
Bonucci
 
Messaggi: 24
Iscritto il: domenica 3 maggio 2020, 16:53

Re: [Risolto] Macro ed errori di runtime BASIC

Messaggioda charlie » venerdì 8 maggio 2020, 7:47

Bonucci ha scritto:c'era la lista dei file aperti di recente, da dove la prende, dove la tiene?

Probabilmente nel profilo utente di OO. Sono una serie di cartelle nascoste che si trovano dentro la cartella user che non viene toccata disinstallando e re-installando il programma. La si può cancellare/spostare/rinominare, al primo riavvio di OO viene rigenerata automaticamente con le impostazioni di default.
All'interno della cartella 'user' c'è la cartella 'basic' con le macro personali.

viewtopic.php?f=34&t=5100
charlie
macOS 10.12 Sierra: Open Office 4.1.7 - LibreOffice 6.2.8.2
http://www.charlieopenoffice.altervista.org
Avatar utente
charlie
Site Admin
Site Admin
 
Messaggi: 6937
Iscritto il: mercoledì 19 dicembre 2012, 11:50


Torna a Base

Chi c’è in linea

Visitano il forum: Nessuno e 4 ospiti