Come fare una ricerca su più campi

di il
3 risposte

Come fare una ricerca su più campi

Buongiorno a tutti, sono nuovo del forum, dopo aver letto tanto e utilizzato alcuni vostri suggerimenti ed esempi, mi sono deciso ad iscrivermi per rivolgervi una domanda precisa.
Premetto che sono uno zero di access e programmazione, ma mi appassiona molto e allora sto cercando di costruirmi un database mio. Sono un chimico e uso un database di Works per la ricettazione dei prodotti e vorrei passare ad access.

Sto sviluppando un database per tenere in ordine e catalogata la ricettazione dei prodotti

Per farvi capire, si tratta di sostanze che vengono miscelate tra di loro per ottenere un prodotto finito, pensate ad esempio ad una vernice che è prodotta miscelando alcune sostanze, ad es. resine, colori, solventi etc.
Il database è impostato con le principale tabelle:

FORNITORI ogni fornitore fornisce più sostanze
CLIENTI ogni cliente acquista più prodotti finiti
MATERIE PRIME (le sostanze) ognuna con codice diverso e unico
PRODOTTI FINITI (le vernici miscelate) ognuna con codice diverso e unico

La tabella PRODOTTI FINITI oltre al nome e codice del prodotto finito, contiene le sostanze necessarie alla formulazione e sono previsti 20 sostanze diverse, con campi diversi, uno per ogni sostanza ed il codice e 20 campi per i quantitativi di ogni sostanza.
I campi sono caricati art1, codice1, kg1, art2, codice2, kg2 etc. più i campi calcolati, tot. etc.
Le tabelle sono collegate tra di loro e vengono gestite da una serie di query.
Le sostanze sono ca 300 e i prodotti finiti sono ca 1000, alcune sostanze sono presenti in tutti i prodotti finiti mentre alcune sono presenti in un solo prodotto finito.
Inoltre le sostanze sono caricate in ordine sparso, ad esempio la sostanza ACQUA può essere caricata come art1 o come art2 o come art20. A complicare le cose, i PRODOTTI FINITI sono composti da un numero imprecisato di sostanze, alcuni da 1 sostanza alcuni da 20

Vorrei realizzare una query che mi dica in quale miscela è contenuta una sostanza e la sua quantità.
Sono riuscito a fare una query che mi vede una sostanza per volta, una query per l’art1, una query per l’art2 etc. e riesco ad interrogarle bene. Quello che non riesco a fare è un'unica query che mi riassuma tutte le sostanze.

Spero di essere stato chiaro e mi scuso se non utilizzo i termini corretti per definire gli oggetti, come vi ho detto sono praticamente a zero.
Grazie

3 Risposte

  • Re: Come fare una ricerca su più campi

    Devo fare un ricettario... mi pare semplice...
    Dando per scontato tu non abbia sostanze non definibili ProdottoFinito ne MateriaPrima..., I semilavorati... possiamo anche non valutare la struttura Ricorsiva Multilivello... ma di certo ti manca un pezzo...
    Immagino tu abbia MOLTI ProdottoFinito e MOLTI MateriaPrima... non credi manchi proprio la tabella Ricetta..?
    Non puoi inserire gli elementi che costituiscono il ProdottoFinito nella stessa tabella...
    Devi realizzare una relazione Molti a Molti e serve la tabella ricetta che mette in congiunzione il ProdottoFinito con le materie prime.

    Prova a riflettere meglio sul problema della tua ipotesi.
  • Re: Come fare una ricerca su più campi

    Grazie per la risposta. La mia tabella prodotti finiti è impostata come se fosse il ricettario, contiene la lista dei prodotti e la ricetta per realizzarli. Proverò a separarli e fare tabelle separate ma ancora non riesco a intravedere la soluzione del problema. Ci lavoro sopra.
  • Re: Come fare una ricerca su più campi

    Non devi accontentare me... se non comprendi il motivo tecnico significa che non ti è chiara la gestione normalizzata... in particolare la 3° regola.
    Per il tuo problema specifico è molto collegato ai concetti sopracitati in quanto adesso non riusciresti mai a fare una ricerca se non facendo inutili accrocchi.
    Quindi se vuoi abbandonare la logica Excel e comprendere meglio come si usa un database, devi conoscere almeno le basi della teoria relazionale... e su uno sviluppo tecnicamente corretto fare una ricerca per ingrediente è banale... ma ci devi arrivare non puoi deformare il sistema.
Devi accedere o registrarti per scrivere nel forum
3 risposte