Pagina 1 di 1

Archivio condiviso

Inviato: mercoledì 29 maggio 2024, 17:06
da giosipan
Versione LibreOffice 24.2.2.2. - Windows 11

Buonasera, ho questo problema.
Ho un file per la stampa di CMR (ddt per consegne internazionali).
Nel primo foglio ho tutti i campi necessari per la compilazione con dei menù a tendina che richiamano Mittente, Cliente e Trasportatore.
I dati dei tre soggetti sono archiviati in altrettanti fogli sempre sullo stesso file.
Sempre nel primo foglio ho creato un form dove inserendo nei campi appositi la ragione sociale di un cliente o di un trasportatore e poi cliccando su di un pulsante, si attiva una macro che va a prendere i dati inseriti e li inserisce nel foglio dove sono archiviati i soggetti.

Adesso mi si presenta la necessità di dover spostare l'archivio in un file a se stante e più file 'CMR' contemporaneamente vi accedono.
Fino a qui tutto ok, ho cambiato l'url dell'archivio e funziona tutto benissimo.
Il problema è quando vado ad inserire un nuovo soggetto utilizzando le macro che ho creato che ovviamente non funzionano perché prima era tutto dentro lo stesso file e adesso invece deve ricercare un file esterno che magari è anche chiuso.

Esiste la possibilità di fare aprire il file, inserire i dati, salvare e poi magari richiuderlo?

Allego il file.
 Editato: 1 file soppresso perchè contenente dati sensibili (Admin) 

Re: Archivio condiviso

Inviato: mercoledì 29 maggio 2024, 17:42
da charlie
@giosipan, i dati del secondo file mi sembravano reali, sbaglio?

Re: Archivio condiviso

Inviato: mercoledì 29 maggio 2024, 17:54
da giosipan
Si hai ragione... scusami

Re: Archivio condiviso

Inviato: giovedì 30 maggio 2024, 21:05
da Gaetanopr
giosipan ha scritto: mercoledì 29 maggio 2024, 17:06 Adesso mi si presenta la necessità di dover spostare l'archivio in un file a se stante e più file 'CMR' contemporaneamente vi accedono.
Fino a qui tutto ok, ho cambiato l'url dell'archivio e funziona tutto benissimo.
Il problema è quando vado ad inserire un nuovo soggetto utilizzando le macro che ho creato che ovviamente non funzionano perché prima era tutto dentro lo stesso file e adesso invece deve ricercare un file esterno che magari è anche chiuso.

Esiste la possibilità di fare aprire il file, inserire i dati, salvare e poi magari richiuderlo?
Si è possibile fare quello che vuoi, a quanto ho capito ci sono diversi utenti "CMR", invece chi opera sull'archivio? sempre gli stessi utenti (quindi più utenti) o soltanto tu?
Io sposterei l'archivio in un database con 3 tabelle, magari un database in mysql preferibilmente.

Ciao

Re: Archivio condiviso

Inviato: venerdì 31 maggio 2024, 10:23
da giosipan
Buongiorno, all'archivio potrei accederci anche solamente io, però è necessario che ogni utente possa 'scrivere' tramite il CMR all'interno del database quando si devono aggiungere nuovi Clienti e nuovi Trasportatori

Re: Archivio condiviso

Inviato: sabato 1 giugno 2024, 12:06
da Gaetanopr
giosipan ha scritto: venerdì 31 maggio 2024, 10:23 ...però è necessario che ogni utente possa 'scrivere' tramite il CMR all'interno del database quando si devono aggiungere nuovi Clienti e nuovi Trasportatori
Per questo ti ho suggerito un database in mysql, sarebbe più semplice di quanto credi e al file archivio potrebbero accedere tutti contemporaneamente cosa che non è possibile fare utilizzando solo calc.
giosipan ha scritto: mercoledì 29 maggio 2024, 17:06 Esiste la possibilità di fare aprire il file, inserire i dati, salvare e poi magari richiuderlo?
Ti allego 2 righe di codice da adattare al tuo caso ovviamente.

Codice: Seleziona tutto

Dim dummy()                               
Archivio = StarDesktop.loadComponentFromURL ("file:///D:/Users/giosipan/Desktop/NomeFile.ods", "_default",0, Dummy() ) 
FoglioClienti = Archivio.Sheets.getByName("Clienti")
 TUE ISTRUZIONI


Archivio.store()  ' salvataggio
Archivio.close(true)  ' chiusura
Lo puoi aprire in modalità nascosta

Codice: Seleziona tutto

Dim Args(0) as New com.sun.star.beans.PropertyValue 
Args(0).Name="Hidden"
Args(0).Value= False
Archivio = StarDesktop.loadComponentFromURL ("file:///D:/Users/giosipan/Desktop/NomeFile.ods", "_default",0, Args() )