[Risolto]Formulario con categorie sottocategorie ed immagini

Discussioni sulle caratteristiche di database
Gian Luca
Messaggi: 24
Iscritto il: lunedì 16 dicembre 2019, 21:54

[Risolto]Formulario con categorie sottocategorie ed immagini

Messaggio da Gian Luca »

Eccomi qua.
La cosa più difficile per ora è trovare un titolo adatto alla cosa che vorrei realizzare, ora la descrivo.
Vorrei realizzare una specie di database - Vetrina che, cambiando il nome dei campi, potrebbe essere adattato a qualunque tipo di archiviazione e successivamente consultazione.
Nell'esempio che allego l'ho adattato ad una specie di vetrina Moto, ma può diventare l'elenco dei farmaci che abbiamo in casa, o, come nel mio caso, un elenco di attrezzature che uso sul lavoro e che richiedono particolari settaggi di volta in volta, che vorrei raccogliere e presentare in modo graficamente ordinato e comprensibile in un formulario. Con tanto di foto!.

Ci vorranno quindi due formulari: uno per l'inserimento, e quello è mezzo fatto, e uno per la consultazione.
Quello per l'inserimento dei dati è mezzo fatto, mi piacerebbe però poter limitare, nell'esempio, la scelta del modello di moto in base alla scelta della marca.
Così com'è i campi Marca e Modello sono indipendenti, per cui si può inserire il T-Max Honda, che non esiste.

Immagino di dover creare una tabella per ogni Marca contenente i soli modelli di quella marca, ma non so come poi spiegare la dipendenza.

Il secondo formulario sarà graficamente identico al prima, ma i campi marca e modello dovrebbero essere gli oggetti della query, e se possibile anche altri campi, tipo la categoria o la cilindrata.

Se mi date una mano io cerco di impegnarmi a capire le meccaniche di funzionamento.
Allegati
Vetrina Moto.odb
(104.17 KiB) Scaricato 156 volte
Ultima modifica di charlie il martedì 11 febbraio 2020, 11:38, modificato 4 volte in totale.
Motivazione: Aggiunta spunta verde
LibreOffice 6.2 su Windows 10
Gian Luca
Messaggi: 24
Iscritto il: lunedì 16 dicembre 2019, 21:54

Re: Formulario con categorie, sottocategorie ed immagini

Messaggio da Gian Luca »

Così con le tabelle per marca separate, ma non so come si fa a creare le dipendenza tra marca e singola tabella corrispondente.
Allegati
Vetrina Moto_001.odb
(105.66 KiB) Scaricato 123 volte
LibreOffice 6.2 su Windows 10
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8820
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Formulario con categorie, sottocategorie ed immagini

Messaggio da charlie »

Ciao, puoi ispirarti a questo esempio di listbox in cascata: viewtopic.php?f=13&t=6495&p=33990&hilit ... ata#p33408
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Gian Luca
Messaggi: 24
Iscritto il: lunedì 16 dicembre 2019, 21:54

Re: Formulario con categorie, sottocategorie ed immagini

Messaggio da Gian Luca »

Ciao charlie, grazie per la risposta.
Nel finesettimana mi ci rompo un po' la testa e vedo se riesco a capirci qualcosa.
Avevo già provato a mettere il naso in quella discussione, ma non so ancora usare le tabelle Filtro, non mi è chiaro come si fanno...
LibreOffice 6.2 su Windows 10
Gian Luca
Messaggi: 24
Iscritto il: lunedì 16 dicembre 2019, 21:54

Re: Formulario con categorie, sottocategorie ed immagini

Messaggio da Gian Luca »

Ho provato a trasportare il tutto sul mio esempio, ma non ne vuole sapere di attivarsi il pulsante...
Non capisco dove sta l'errore...
Allegati
Vetrina Moto_000.odb
(113.21 KiB) Scaricato 124 volte
LibreOffice 6.2 su Windows 10
Gian Luca
Messaggi: 24
Iscritto il: lunedì 16 dicembre 2019, 21:54

Re: Formulario con categorie, sottocategorie ed immagini

Messaggio da Gian Luca »

Intanto chiedo anche se mi puoi consigliare un libro che valga la pena di essere acquistato.
Ho trovato qualcosa su amazon, ma sono più che altro orientati su mysql, e leggo in rete che non è proprio la stessa cosa, se non che a livello concettuale.
LibreOffice 6.2 su Windows 10
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8820
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Formulario con categorie, sottocategorie ed immagini

Messaggio da charlie »

Ciao, non conosco libri cartacei su Base e HSQLDB 1.8 (è il "motore" di Base).
Nel Forum, alla sezione Tutorial trovi un elenco di documentazione varia da consultare on-line.
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: 8820
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Formulario con categorie, sottocategorie ed immagini

Messaggio da charlie »

Gian Luca ha scritto:Ho provato a trasportare il tutto sul mio esempio, ma non ne vuole sapere di attivarsi il pulsante...
Non capisco dove sta l'errore...
La list box del subForm (di nome "Formulario") deve essere animata da una espressione SQL simile a quella dell'esempio, in questo momento è vuota.
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Gian Luca
Messaggi: 24
Iscritto il: lunedì 16 dicembre 2019, 21:54

Re: Formulario con categorie, sottocategorie ed immagini

Messaggio da Gian Luca »

C'è qualcosa che non capisco...
se faccio doppio clic e vedo le proprietà, nella scheda Dati, alla voce "contenuto elenco" ho messo il codice dell'esempio, con i riferimenti corretti...

Codice: Seleziona tutto

SELECT "Modello"."Modello", "Modello"."ID" FROM "Modello" INNER JOIN "Assegnazione" ON "Modello"."ID" = "Assegnazione"."ID_Modello" INNER JOIN "Filtro Marca Modello" ON "Assegnazione"."ID_Marca" = "Filtro Marca Modello"."ID_Marca" WHERE "Filtro Marca Modello"."ID" = 0 ORDER BY "Modello" ASC
Se non è questo a cui ti riferisci... sono nel vicolo cieco...
Ultima modifica di Gian Luca il martedì 31 dicembre 2019, 16:20, modificato 1 volta in totale.
LibreOffice 6.2 su Windows 10
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8820
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Formulario con categorie, sottocategorie ed immagini

Messaggio da charlie »

charlie ha scritto:La list box del subForm (di nome "Formulario") deve essere animata da una espressione SQL simile a quella dell'esempio, in questo momento è vuota.
Mi correggo, la listbox sembra a posto, ma manca il codice SQL a livello formulario principale e sub-form:

Codice: Seleziona tutto

SELECT "Marca", "ID" FROM "Marca" ORDER BY "Marca" ASC
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Gian Luca
Messaggi: 24
Iscritto il: lunedì 16 dicembre 2019, 21:54

Re: Formulario con categorie, sottocategorie ed immagini

Messaggio da Gian Luca »

Ok, l'ho messo, il pulsante si è attivato ma non ottengo nessun risultato, la seconda listbox è sempre vuota.
Ricomincerò da capo con ordine e ci riuscirò.
Appena supero lo scoglio posto il risultato.
Per ora GRAZIE e buon anno!
LibreOffice 6.2 su Windows 10
Gian Luca
Messaggi: 24
Iscritto il: lunedì 16 dicembre 2019, 21:54

Re: Formulario con categorie, sottocategorie ed immagini

Messaggio da Gian Luca »

Un altra domanda.
Con questa soluzione, dovrei mettere tre lisbox in cascata anzichè due, quindi seleziono la prima e restringo i risultati della seconda, poi seleziono la seconda e restringo i risultati della terza.
Poi seleziono la terza.
OK, nel formulario Assegnazione, posso fare i passaggi insieme e scrivere nella stessa tabella "Assegnazione" oppure devo creare una seconda tabella "Assegnazione 2" per la seconda selezione?
Fatto questo, mi resta un problema: La tabella dove andrò a scrivere tutti gli altri campi reletivi all'oggetto selezionato, quale deve essere?
Immagino "Assegnazione", nel caso di una sola tabella, oppure "Assegnazione 2" nel caso di due tabelle...
LibreOffice 6.2 su Windows 10
Gian Luca
Messaggi: 24
Iscritto il: lunedì 16 dicembre 2019, 21:54

Re: Formulario con categorie, sottocategorie ed immagini

Messaggio da Gian Luca »

Allora, nell'esempio che allego funziona solo la prima selezione in cascata: seleziono la marca, premo il pulsante e nella seconda listbox ho i soli risultati relativi a quella marca, inseriti con il formulario Assegnazione.
In questa prima parte, hai da indicarmi un comando per evitare i doppioni?
Nella seconda parte ho replicato la logica della prima, ma non ottengo errori nè risultati.
Devo sdoppiare anche la tabella Asseganzione?
Allegati
MarcaSerie.odb
(21.27 KiB) Scaricato 122 volte
LibreOffice 6.2 su Windows 10
Gian Luca
Messaggi: 24
Iscritto il: lunedì 16 dicembre 2019, 21:54

Re: Formulario con categorie, sottocategorie ed immagini

Messaggio da Gian Luca »

Ho girato tutto sul Filtro 1 e ora funziona.
Mi resta ancora il problema delle doppie.
Seleziono la marca, e nei modelli dovrei eliminare le voci doppie.

Ed infine, e poi per me è risolto tutto, nel formulario Filtro 1 (che sarebbe quello di selezione del Profilo, nell'esempio, tramite le listbox) tutte le voci relative alla scelta effetuata, in che tabella le dovrò mettere?
Intendo, selezionata una moto, vorrei vedere poi tutte le sue caratteristiche, compresa la foto.
Queste cose, in quale tabella dovrei aggiungerle?
In quella che nell'esempio si chiama Profilo?
Allegati
MarcaSerie2.odb
(21.1 KiB) Scaricato 88 volte
LibreOffice 6.2 su Windows 10
Gian Luca
Messaggi: 24
Iscritto il: lunedì 16 dicembre 2019, 21:54

Re: Formulario con categorie, sottocategorie ed immagini

Messaggio da Gian Luca »

Ci siamo quasi...
Ho inserito due campi stupidi per capirci qualcosa, Numero ruote e Descrizione.
Nel Formulario Assegnazione questi campi scrivono correttamente nella tabella Profilo, ma nel formulario Filtro 1 come faccio a tirare fuori i valori coerenti con la selezione della listbox?
Allegati
MarcaSerie3.odb
(21.92 KiB) Scaricato 91 volte
LibreOffice 6.2 su Windows 10
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8820
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Formulario con categorie, sottocategorie ed immagini

Messaggio da charlie »

Ciao, intanto complimenti per essere arrivato a buon punto.
Io ti ho un po' trascurato ed ho perso il filo ... vedo di riprenderlo progressivamente.
Gian Luca ha scritto:In questa prima parte, hai da indicarmi un comando per evitare i doppioni?
Gian Luca ha scritto:Mi resta ancora il problema delle doppie.
Seleziono la marca, e nei modelli dovrei eliminare le voci doppie.

Adopera SELECT DISTINCT
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Gian Luca
Messaggi: 24
Iscritto il: lunedì 16 dicembre 2019, 21:54

Re: Formulario con categorie, sottocategorie ed immagini

Messaggio da Gian Luca »

Ottimo!
Select Distinct funziona e mi ha eliminato le doppie.
Manca solo un piccolo passo!
Come ti scrivevo sopra, una volta selezionato il modello dalle tre listbox, avrei bisogno che si riempissero tutti i campi relativi a quel modello, nell'esempio il numero di ruote e la descrizione...
LibreOffice 6.2 su Windows 10
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8820
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Formulario con categorie, sottocategorie ed immagini

Messaggio da charlie »

Qualcosa di simile:
MarcaSerie4.odb
(132.86 KiB) Scaricato 106 volte
Ho ripreso la tabella Vetrina del tuo primo esempio aggiungendo un campo Profilo_ID e riempendolo un po' a caso con i dati disponibili, tanto per provare. Naturalmente il tutto va aggiustato.
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Gian Luca
Messaggi: 24
Iscritto il: lunedì 16 dicembre 2019, 21:54

Re: Formulario con categorie, sottocategorie ed immagini

Messaggio da Gian Luca »

Fantastico, funziona!
Così sono a posto, e ti ringrazio per l'aiuto!
Dovrò capire però cosa hai fatto per sistemare tutto.
In realtà tutto il contenuto della tabella vetrina viene legato ad una selezione delle tre listbox, ma il contenuto delle listbox non è compreso nella tabella Vetrina, ma ci posso lavorare su.
Devo fare in modo che dal formulario assegnazione io possa inserire tutti i dati, e dal formulario Filtro 1 io li possa solo consultare.

Ora posso adattare il tutto al lavoro che ho da fare, e poi mi studierò un po' il modo di applicare tre macro che sostituiscano i pulsanti, in modo che una volta fatta la selezione si agiornino da soli i campi in cascata.
LibreOffice 6.2 su Windows 10
Gian Luca
Messaggi: 24
Iscritto il: lunedì 16 dicembre 2019, 21:54

Re: Formulario con categorie sottocategorie ed immagini

Messaggio da Gian Luca »

Rieccomi qua.
Questa la versione abbastanza definitiva ripulita.
Ho due problemi, non so se si possono risolvere oppure se me lo tengo così e ci sto attento.

Formulario Assegnazione, quando creo una nuova posizione, quindi un nuovo Profilo, appena apro il formulario per creare le dipendenze, questo si apre in posizione 1, e io non pensandoci vado a sovrascrivere una terna già salvata.
Si può fare in modo che si apra su una terna vuota?
Se non si può pazienza, cercherò di starci attento.

Formulario Filtro1, anche qui si apre sull'ultimo profilo visualizzato (o il primo della lista, non lo so perché prima di caricare dati voglio sistemare la meccanica). Si puù fare in modo che si apra su una pagina vuota?
(Ho dovuto riempire col copia incolla il vecchio file, perché quello che ho io è pressochè uguale ma pesa 6 megabyte, non so il perchè... E non sono le immagini perché non le ho ancora caricate... Questo allegato invece è 24 Kb)

Poi, non sono in nessun modo riuscito a registrare una macro che possa sostituire i pulsanti, cioè, che faccia in modo che si aggiorni il corretto subformulario quando cambio il contenuto della listbox.

Ho anche provato a svincolare le immagini dal contenuto del database e mettere solo un link ad una cartella sul pc che le contiene, ma non ho capito come si fa, ho letto sul forum inglese una guida indicata qui su una discussione, ma niente.
Per quello pazienza, cercherò di salvare le immagini in un formato spazzatura che occupi pochi Kb.

Si può ancora fare qualcosa oppure è meglio che tengo tutto così?
Allegati
MarcaSerie9.odb
(24.04 KiB) Scaricato 128 volte
LibreOffice 6.2 su Windows 10
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8820
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Formulario con categorie sottocategorie ed immagini

Messaggio da charlie »

Quello che chiedi si può fare con le macro.
Questa, ad esempio, da assegnare all'evento "Durante il caricamento" del Form:

Codice: Seleziona tutto

Sub InitializeForm 'Form > Event > When Loading 
   Dim oForm As Object 
   oForm = ThisComponent.DrawPage.Forms.GetByIndex(0) '.GetByName("MainForm")
   IF oForm.isloaded = false THEN Wait 100 'allows faster CPUs to continue while waiting for slower ones 
'  oForm.Last 
'  oForm.First 'this line along with .Last above leaves the total number of records in nav bar 
   oForm.MoveToInsertRow 
End Sub
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Gian Luca
Messaggi: 24
Iscritto il: lunedì 16 dicembre 2019, 21:54

Re: Formulario con categorie sottocategorie ed immagini

Messaggio da Gian Luca »

Esatto!
Questo è perfetto, porta il form sulla posizione successiva all'ultimo dato inserito, che è vuota.
Sto ancora cercando una soluzione per le altre cose, avere il formulario Filtro1 vuoto in partenza e togliere i pulsanti e sostituirli con macro.
Ma non ne vengo a capo.
Ci sono altri esempi, qui sul forum, ma non mi funzionano (nemmeno i file che scarico)...
LibreOffice 6.2 su Windows 10
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8820
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Formulario con categorie sottocategorie ed immagini

Messaggio da charlie »

Ciao, sul forum in inglese ho trovato questo bellissimo esempio gestito tutto con macro.
Temo che per adattarlo al tuo file dovrai reimpostare tutto. Ma ne vale la pena.
EXPDB_macro_filtering.odb
(21.44 KiB) Scaricato 100 volte
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Gian Luca
Messaggi: 24
Iscritto il: lunedì 16 dicembre 2019, 21:54

Re: Formulario con categorie sottocategorie ed immagini

Messaggio da Gian Luca »

Ti ringrazio della dritta, l'esempio che mi hai dato sarebbe perfetto, ma a me non funziona.
Forse ho qualcosa di impostato male sulla mia macchina, perchè non ne funziona una, di macro...
Pazienza, comunque me lo sono scaricato e proverò a lavorarci su.
Spero di postare un risultato funzionante!

Grazie per la tua pazienza e per avermi aiutato fin qui, comunque sia non ci sarei mai arrivato da solo.
LibreOffice 6.2 su Windows 10
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8820
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Formulario con categorie sottocategorie ed immagini

Messaggio da charlie »

Ciao, ho avuto del tempo e ho trasportato le macro in un file nuovo reimpostato sulla falsariga di quello inglese.
  • A differenza del file inglese ho adottato una sola tabella di Assegnazione, al posto tre distinte tabelle. Evidente il vantaggio se devo apportare modifiche. Ora l'assegnazione avviene per via diretta, senza cioè l'uso di un ID.
  • Ci sono due MainForm, una sulla tabella Filtro e l'altro sulla tabella Assegnazione alla quale possono essere aggiunti ulteriori campi. Il MainForm2 l'ho fatto "tabellare", ma potrebbe essere anche un "modulo" contenente anche campi con immagini (la tua vecchia tabella Vetrina).
  • È tutto gestito da macro.
Allegati
Filtro 3 ListBox in cascata con macro .odb
(14.45 KiB) Scaricato 120 volte
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Gian Luca
Messaggi: 24
Iscritto il: lunedì 16 dicembre 2019, 21:54

Re: Formulario con categorie sottocategorie ed immagini

Messaggio da Gian Luca »

Charlie, io ti ringrazio per il lavoro che hai fatto, ma purtroppo a me non funziona nemmeno questo!
Ma non sarà per caso che è LibreOffice che non ne vuole sapere di lavorare su un file fatto da OpenOffice?
Non so cosa altro pensare, non c'è modo di far funzionare le macro.
Proverò a scaricarmi OpenOffice e vedo se li va...
LibreOffice 6.2 su Windows 10
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8820
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Formulario con categorie sottocategorie ed immagini

Messaggio da charlie »

Con Base di solito uso Libre Office.
Per fugare ogni dubbio ho appena riscaricato il file dal forum, salvato in una cartella a parte, aperto con Libre Office.
Funziona perfettamente.
Per caso stai importando le macro su un file diverso? Certo che non funzionano.
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Gian Luca
Messaggi: 24
Iscritto il: lunedì 16 dicembre 2019, 21:54

Re: Formulario con categorie sottocategorie ed immagini

Messaggio da Gian Luca »

Ma no, ho scaricato il file, salvato in Download, poi aperto da lì... Intendo il file che hai caricato per ultimo, così com'è e senza modificarlo.
Apro il formulario ma qualunque cosa seleziono non si aggiornano le listbox successive e non si aggiorna la tabella.
Non so cosa c'è che non mi va...
Proverò a disinstallare LibreOffice e a reinstallarlo da zero.
LibreOffice 6.2 su Windows 10
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8820
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Formulario con categorie sottocategorie ed immagini

Messaggio da charlie »

Ma come sono le tue impostazioni di Libre Office a riguardo delle macro?
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Gian Luca
Messaggi: 24
Iscritto il: lunedì 16 dicembre 2019, 21:54

Re: Formulario con categorie sottocategorie ed immagini

Messaggio da Gian Luca »

mmm. in Impostazioni - LibreOffice - Avanzate ho solamente la spunta su "Abilita la registrazione di macro", l'opzione "Abilita le funzionalità sperimentali" non è flaggata.
E nonostante questo, se vado in Strumenti - Macro, la voce Registra Macro è grigina e non selezionabile...
Ci sono altre cose da verificare?
LibreOffice 6.2 su Windows 10
Rispondi