[Risolto] Macro non fa salvare dati

Discussioni sulle caratteristiche di database
Rispondi
Edo1
Messaggi: 40
Iscritto il: sabato 3 maggio 2014, 14:39

[Risolto] Macro non fa salvare dati

Messaggio da Edo1 »

Ciao a tutti
sono qua di nuovo con il mio problema che non mi salva i dati ma ho aperto un nuovo post in quanto ho visto il motivo ma non lo capisco. Prima avevo reinstallato Libreoffice e sembrava a posto solo in quanto per le prove avevo tolto il full screen ai miei form.

Premetto che:
uso FORM ESTERNI al database, fogli writer.
per essere sicuro di non avere nessun problema e fare un po di pulizia ho fatto un bel Format e adesso e' tutto nuovo e aggiornato.

Vengo al punto, nei miei Form ho dei pulsanti di uscita collegati a una macro, se esco dal Form con il pulsante non salva i dati nel database, se esco usando il pulsante di Writer mi salva il tutto.

Allego le macro, che, ci tengo anche a precisare ho sempre usato.

Grazie se avete qualche idea.


Codice: Seleziona tutto

	sub finestra_close( oEvent as object )
		ThisComponent.CurrentController.Frame.close(True)
	end sub

REM -----------------------------------------------------

public sub ExitBase
   dim oForm as object
   dim oFormLM as object
   dim i as integer
   oForm    = Thiscomponent
   oFormLM = oForm.CurrentController.Frame.LayoutManager
   for i = lbound(oFormLM.elements) to ubound(oFormLM.elements)
      oFormLM.showElement(oFormLM.elements(i).resourceurl)
   next i
   oForm.refresh
   oForm.currentController.frame.close(true)
end sub
Ultima modifica di charlie il lunedì 27 aprile 2015, 14:05, modificato 2 volte in totale.
Motivazione: Inserito segno di spunta verde
Libreoffice 7.3.7.2
Kubuntu 22.04
Avatar utente
Mizio1961
Volontario
Volontario
Messaggi: 841
Iscritto il: mercoledì 5 ottobre 2011, 22:55
Località: Roma

Re: Macro non fa salvare dati

Messaggio da Mizio1961 »

Ciao
Questa macro salva il formulario. Se questo è proprio di Base allora probabilmente salva anche i dati, ma se è esterno come tu dici (Writer) potrebbe correttamente salvare solo il formulario e non i dati che contiene.
Dovresti indagare fra i metodi e le proprietà dell'oggetto Formulario e trovare come eseguire anche il salvataggio dei dati
Comunque se puoi inserire un tuo esempio di ciò che chiedi forse trovi più facilmente una soluzione
Saluti By Mizio
OpenOffice Windows - Libre su Ubuntu Desktop e Notebook WiFi
Per cortesia, inserisci [Risolto] nel Titolo iniziale se il tuo problema è stato risolto. ;-)
Edo1
Messaggi: 40
Iscritto il: sabato 3 maggio 2014, 14:39

Re: Macro non fa salvare dati

Messaggio da Edo1 »

Grazie
sto cercando in giro ma trovo ben poco.
Ho trovato un link con un problema simile ma form interno al database e ho provato a adattare la macro ma non e' cambiato nulla.

Codice: Seleziona tutto

sub finestra_close( oEvent as object )
oDoc = ThisComponent
If (oDoc.isModified) Then
If (oDoc.hasLocation AND (Not oDoc.isReadOnly)) Then
oDoc.store()
Else
oDoc.setModified(False)
End If
End If
oDoc.close(True)	
end sub
Sinceramente penso sia un qualcosa negli aggiornamenti di libreoffice in quanto sono 3 anni che uso questo database senza problemi.
Allego un esempio molto semplice, se esco con il pulsantino di chiusura di writer mi salva, se uso il pulsante exit nel formulario non mi salva i dati.
La cosa la si vede solo al riavvio del pc, in quanto sino a che non si riavvia i dati si vedono anche chiudendo e riaprendo il form, e anche questa e' una cosa penso strana in quanto quando chiudo il form mi chiude anche il file obd.lck.
Altro fatto strano e' che ultimamente nei form se uso pulsanti collegati a macro alla fine mi chiede sempre di salvare le modifiche al formulario, se non uso i pulsanti ma comunque inserisco dati non mi chiede di salvare.
Ricordo che ho da poco per scrupolo riformattato e reinstallato e aggiornato il tutto.
Sinceramente posso andare avanti a utilizzare il database uscendo con il pulsantino di writer, ma mi piacerebbe capire il motivo, dimenticavo di aggiungere che ho provato anche su un altro pc con lo stesso risultato.
Grazie
Allegati
provino.odt
(11.59 KiB) Scaricato 147 volte
Provetta.odb
(3.37 KiB) Scaricato 143 volte
Libreoffice 7.3.7.2
Kubuntu 22.04
Avatar utente
Mizio1961
Volontario
Volontario
Messaggi: 841
Iscritto il: mercoledì 5 ottobre 2011, 22:55
Località: Roma

Re: Macro non fa salvare dati

Messaggio da Mizio1961 »

Ciao
Devo trovare un momento per guardare gli allegati...
Nel frattempo di chiedo se per caso hai dimenticato qualcosa tipo:
- Registrare i database in Libre
- Dare per sicure le cartelle che contengono banche dati e macro
- Selezionare la versione di Java da usare
- ...
Saluti
OpenOffice Windows - Libre su Ubuntu Desktop e Notebook WiFi
Per cortesia, inserisci [Risolto] nel Titolo iniziale se il tuo problema è stato risolto. ;-)
Edo1
Messaggi: 40
Iscritto il: sabato 3 maggio 2014, 14:39

Re: Macro non fa salvare dati

Messaggio da Edo1 »

registrare il database: sicuramente si, anche perche' usando i form esterni non mi darebbe la scelta dei collegamenti.
dare per sicure le cartelle: non capisco cosa dici, se intendi se sono sicuro di quali cartelle contengano i dati lo sono, le macro sono salvate in una libreria sotto macro personali.
Java provo a vedere ma non mi sono mai nemmeno posto il problema :shock:

Grazie
Libreoffice 7.3.7.2
Kubuntu 22.04
Avatar utente
Mizio1961
Volontario
Volontario
Messaggi: 841
Iscritto il: mercoledì 5 ottobre 2011, 22:55
Località: Roma

Re: Macro non fa salvare dati

Messaggio da Mizio1961 »

Ciao
Ho provato clikkando sulla X del file provino.odt e funziona salvando i dati senza problemi
Il discorso cartelle sicure: Devi andare su menù Strumenti, voce Opzioni -> Libreoffice -> Sicurezza -> Sicurezza delle macro... -> Fonti Attendibili e aggiungere la cartella che contiene le macro
Vedo che l'uso di Writer impegna Base in una sessione di lavoro, e Base è monoutente. Quindi fino a che Writer resta aperto, le modifiche ai dati fatte sul formulario non vengono visualizzate da Base e viceversa.
Per me questo è un comportamento normale, in quanto il salvataggio avviene in modo corretto.
Mi spiego meglio: 1) modifico un dato nel formulario; finchè writer resta aperto, provando ad aprire Base i dati visualizzati sono quelli prima della modifica. 2) Chiudo Writer, poi apro Base e trovo i dati aggiornati.
Per me questo modo di operare è corretto.
Per te?
OpenOffice Windows - Libre su Ubuntu Desktop e Notebook WiFi
Per cortesia, inserisci [Risolto] nel Titolo iniziale se il tuo problema è stato risolto. ;-)
Edo1
Messaggi: 40
Iscritto il: sabato 3 maggio 2014, 14:39

Re: Macro non fa salvare dati

Messaggio da Edo1 »

ti ringrazio della disponibilita'.

Ho provato a dare alle macro tra le fonti sicure il percorso della mia home dove ho visto c'e' il file con le macro di Libreoffice, spero avere fatto giusto.
Si, chiudendo con la X di writer il file lo salva come avevo detto, e' chiudendo con il pulsante associato alla macro che non salva.ma se puoi farmi una prova te ne sarei grato, vale a dire apri il formulario, inserisci dei dati, chiudi il formulario con la X di writer, e senza aprire la tabella del database riavvii il pc e troverai i dati, se fai la stessa cosa usando il pulsante inserito nel formulario collegato alla macro non troverai i dati inseriti.
Ti dico di non aprire il database in quanto un altro comportamento molto strano e' proprio questo, se inserisco e esco anche con il pulsante collegato alla macro e poi apro il database i dati ci sono e cosi' me li tiene, ma se riavvio senza aprire il database i dati spariscono.
Libreoffice 7.3.7.2
Kubuntu 22.04
Avatar utente
Mizio1961
Volontario
Volontario
Messaggi: 841
Iscritto il: mercoledì 5 ottobre 2011, 22:55
Località: Roma

Re: Macro non fa salvare dati

Messaggio da Mizio1961 »

Ciao
In allegato trovi il tuo provino con dentro un paio di macro
Il bottone Esci usa la prima cmdCloseDB(oEvent). L'altra l'ho lasciata solo per documentazione ma funziona solo dentro Base diretto.
Il suo compito è quello di chiudere il DB e il Formulario
Vedi un pchino se funziona
Allegati
provino.odt
(17.3 KiB) Scaricato 223 volte
OpenOffice Windows - Libre su Ubuntu Desktop e Notebook WiFi
Per cortesia, inserisci [Risolto] nel Titolo iniziale se il tuo problema è stato risolto. ;-)
Edo1
Messaggi: 40
Iscritto il: sabato 3 maggio 2014, 14:39

Re: [Risolto] Macro non fa salvare dati

Messaggio da Edo1 »

Ti ringrazio tantissimo, funziona perfettamente :bravo:
Secondo te dipende da qualche aggiornamento di Libreoffice? Come ti dicevo ha sempre funzionato.
Grazie del tempo dedicato
Libreoffice 7.3.7.2
Kubuntu 22.04
Avatar utente
Mizio1961
Volontario
Volontario
Messaggi: 841
Iscritto il: mercoledì 5 ottobre 2011, 22:55
Località: Roma

Re: [Risolto] Macro non fa salvare dati

Messaggio da Mizio1961 »

In informatica tutto è possibile... chi programma è pur sempre una persona quindi... ;-)
L'importante è trovare soluzioni...
Saluti By Mizio
OpenOffice Windows - Libre su Ubuntu Desktop e Notebook WiFi
Per cortesia, inserisci [Risolto] nel Titolo iniziale se il tuo problema è stato risolto. ;-)
Rispondi