Ricerca record di dati (il famoso binocolo)

Discussioni sulle caratteristiche di database
Rispondi
pinosauro
Messaggi: 37
Iscritto il: sabato 7 settembre 2013, 8:33

Ricerca record di dati (il famoso binocolo)

Messaggio da pinosauro »

Quesito semplice ma non troppo...

Ho un formulario che si apre pulito senza nessun menu di openoffice a disturbare ne sopra ne sotto.
Per inserirci la "ricerca record di dati", come nell'immagine allegata, ho tentato le seguenti strade ma nessuna mi porta a risultato ovvero:
- qual è lo shortcuts per "ricerca record di dati"? Io non l'ho trovato
- fare un pulsante che mi apra la finestra "Ricerca record di dati"? non ci sono riuscito
- inserire la barra di navigazione dentro il formulario? fatto, ma la barra di navigazione manca del binocolo

Illuminatemi pleeeeeeease :ouch:
Allegati
img.jpg
OpenOffice 3.3 / win 8
Avatar utente
bydindi
Volontario
Volontario
Messaggi: 258
Iscritto il: lunedì 21 febbraio 2011, 10:16

Re: Ricerca record di dati (il famoso binocolo)

Messaggio da bydindi »

pinosauro ha scritto:- fare un pulsante che mi apra la finestra "Ricerca record di dati"? non ci sono riuscito
Puoi fare un pulsante collegato ad una query, oppure utilizzare una macro che (associata ad un campo che aggiungerai) ti mostra un elenco di record che soddisfano la parola che hai digitato nel campo,
mi spiego meglio:
nella maschera (formulario) "anagrafica clienti" del mio database ho aggiunto tre campi nel primo se digito la denominazione dell'azienda mi compare in automatico un elenco di record che hanno in comune la parola che io ho digitato (se in anagrafica ho 5 aziende che iniziano per "Fratelli...." digitando "Fratelli" mi compaiono tutte)

Il secondo campo (è simile al primo) mi mostra i record dove la parola che digito "è contenuta" all' interno della denominazione, quindi se digito "ROSSI" mi mostrerà: MARIO ROSSI, FRATELLI ROSSI SPA, GIORGIO ROSSI ecc. (utile se non mi ricordo esattamente la denominazione ma solo una parte)

Il terzo campo è più "mirato" e mi trova il record se inserisco l'ID (chiave primaria),lo uso se devo ad esempio modificare un record (conoscendo ovviamente il numero ID che ho assegnato a quel record)

Se hai capito qualcosa.... :) comunque sarebbe meglio che spiegassi meglio il tuo quesito, se puoi allegare il tuo db (togliendo tutti i dati personali) o al limite una schermata dove ci mostri il tuo formulario per poter vedere assieme quale sia la soluzione migliore

Ciau

edit:

" sarebbe meglio che spiegassi meglio" nun se po' sentì....... :mrgreen:
OOo 4.1.1 su Windows Vista
pinosauro
Messaggi: 37
Iscritto il: sabato 7 settembre 2013, 8:33

Re: Ricerca record di dati (il famoso binocolo)

Messaggio da pinosauro »

grazie bydi pensavo fosse più semplice.
Comunque mi metto sotto e ci provo, vediamo quello che esce fuori...
OpenOffice 3.3 / win 8
Switchin
Messaggi: 12
Iscritto il: venerdì 18 ottobre 2013, 19:00

Re: Ricerca record di dati (il famoso binocolo)

Messaggio da Switchin »

@bydindi avrei bisogno di fare proprio quello che hai descritto tu.
Solo che non saprei farlo e sto cercando un aiuto.

se quello che hai descritto è possibile farlo con le macro native di libreoffice non dovrebbe essere molto difficile.

Sapresti darmi qualche dritta ?
Grazie. :knock:
libreoffice 6.2.2 su ubuntu 16.04 LTS
pinosauro
Messaggi: 37
Iscritto il: sabato 7 settembre 2013, 8:33

Re: Ricerca record di dati (il famoso binocolo)

Messaggio da pinosauro »

Io mi sono accontentato ed ho inserito una "barra di navigazione" nel formulario. Poi l'ho scalata inserendo quello che m'interessava.
OpenOffice 3.3 / win 8
Avatar utente
bydindi
Volontario
Volontario
Messaggi: 258
Iscritto il: lunedì 21 febbraio 2011, 10:16

Re: Ricerca record di dati (il famoso binocolo)

Messaggio da bydindi »

Switchin ha scritto:@bydindi avrei bisogno di fare proprio quello che hai descritto tu.
Solo che non saprei farlo e sto cercando un aiuto.

se quello che hai descritto è possibile farlo con le macro native di libreoffice non dovrebbe essere molto difficile.

Sapresti darmi qualche dritta ?
Grazie. :knock:
Scaricati questo DB https://dl.dropboxusercontent.com/u/318 ... icerca.odb

ho popolato la tabella con i cognomi ROSSI, BIANCHI, BIANCONE E GIALLI se apri il formulario "RicercaCognome" si aprirà una finestra dove devi inserire il nome (completo o una parte di esso purchè in maiuscolo) e ti mostrerà nella tabella tutti i record che soddisfano la ricerca.
Ad esempio se scrivi GIALLI ti mostrerà i dati del Signor GIALLI se scrivi BIANCHI ti mostrerà i dati del Sig. BIANCHI ma se scrivi solo BIAN ti mostrerà sia BIANCHI che BIANCONE, tutto questo senza macro ma inserendo un criterio nella query

Se hai dubbi chiedi pure
OOo 4.1.1 su Windows Vista
Switchin
Messaggi: 12
Iscritto il: venerdì 18 ottobre 2013, 19:00

Re: Ricerca record di dati (il famoso binocolo)

Messaggio da Switchin »

Grazie :-)
mi piace come possibilità e redo che inizierò ad usare una query simile, forse più di una.

Ho variato la tabella da testo Varchar a Varchar_ignorecase i due campi nome e cognome e reso integer la chiave primaria con valore automatico, funziona ugualmente.
Per fare ricerche soddisfa in pieno senza scomodare macro.

Sarebbe molto bello poter avere un campo nel formulario i cui a testo modificato mi restituisca una ricerca come quella che hai postato tu.

Che ci sia una macro nativa di libreoffice che fa questo lavoro ci metterei la mano sul fuoco ma non so quale sia.
E l'inglese non mi aiuta a capire purtroppo.
libreoffice 6.2.2 su ubuntu 16.04 LTS
Avatar utente
bydindi
Volontario
Volontario
Messaggi: 258
Iscritto il: lunedì 21 febbraio 2011, 10:16

Re: Ricerca record di dati (il famoso binocolo)

Messaggio da bydindi »

Switchin ha scritto:......Che ci sia una macro nativa....
In quanto a "natività" non saprei dirti però se ti crei un campo di testo nel formulario e negli eventi "testo modificato" gli associ la macro che ti allego (ovviamente al posto di ""TabGuidatori"".""CognomeG"" ci devi mettere il nome tabella e il nome colonna del tuo DB)

creare una macro non è difficile, ecco la macro:

Codice: Seleziona tutto

Sub Filtra(oEv)
oModel = oEv.Source.Model
sTestoPerRicerca = oEv.Source.getAccessibleContext.Text
oForm = oModel.Parent
oForm.Filter = " ( ""TabGuidatori"".""CognomeG"" LIKE '" & sTestoPerRicerca & "%' )"
oForm.reload()
End Sub
Ciau

EDIT

Non volevo dire "creare una macro" (che per quanto mi riguarda è difficilissimo) ma "copiare una macro "
OOo 4.1.1 su Windows Vista
Rispondi