Casella combinata con campi diversi da più tabelle

di
Anonimizzato11131
il
9 risposte

Casella combinata con campi diversi da più tabelle

Ciao a tutti,

io sto cercando di creare un database con access 2007 per gestire un magazzino.
In una tabella, necessito di creare una casella combinata che prenda più campi da diverse tabelle e che li colleghi tra di loro.

Esempio:

Ho creato una tabella "Preventivi" che userò, appunto, per richiedere preventivi ai fornitori, inoltre ho creato due tabelle esempio per dei fornitori (Fornitore A e Fornitore B) dove in ognuna tabella sono elencati i prodotti che vendono e i relativi prezzi.
Nel tentativo di tenere le cose in ordine, nella tabella Preventivi, ho creato una casella combinata per la selezione dei fornitori, e fino a lì nessun problema.

Devo creare un'altra casella combinata che mi vada a selezionare i prodotti e i loro prezzi in base ai fornitori:

- Primo problema: innanzitutto vorrei che quando seleziono un fornitore, la casella combinata dei prodotti mi mostri soltanto i prodotti di quel fornitore che ho selezionato, ma non so come fare.
- Secondo problema: con la stessa casella combinata, vorrei che mi facesse vedere (oltre al nome del prodotto) anche il prezzo di quel prodotto, sempre però legato a quel fornitore.

Di conseguenza io devo andare a prendere: L' ID_Prodotto, il "Gruppo", e la "Categoria a cui appartiene il prodotto con la sua brevissima "Descrizione" e il "Prezzo Unitario" di quel prodotto (riferito sempre al prezzo a cui lo vende il "Fornitore A", ad esempio.

Sapete come aiutarmi?
Grazie in anticipo

P.S.: Le parole tra le virgolette corrispondono ai nomi dei campi o delle tabelle.

9 Risposte

  • Re: Casella combinata con campi diversi da più tabelle

    Il tuo approccio è errato, confacente più ad Excel che all'uso di un Database.

    In sostanza non è corretto che per ogni fornitore tu possa ipotizzare di creare una tabella...!!!

    Se domani devi inserire Fornitore C pensi di dover inserire una 3° Tabella... e così per i futuri...???

    Chiaramente questo non sarà mai possibile...
    Credo che di base serva che tu possa comprendere le REGOLE BASE di come si struttura un Database proprio per non incorrere in errori strutturali.
    Queste REGOLE si chiamano NORMALIZZAZIONE e sono solo 5... di cui credo ti possa bastare imparare le prime 4... la 5 è decisamente meno urgente.
  • Re: Casella combinata con campi diversi da più tabelle

    Potresti allora indicarmi una maniera più intelligente di organizzarlo? Io lo devo creare per lavoro, e il mio capo ha certe pretese... Purtroppo sono ad un livello base di access e non so come gestire il db perché ho troppi campi da inserire...

    (Solo nella tabella dell'elenco fornitori, vuole che ne inserisca 21...)
  • Re: Casella combinata con campi diversi da più tabelle

    L'argomento è stato trattato altre volte... il problema è che improvvisarsi su questi aspetti è controproducente...

    In tutti i casi... per darti una spiegazione corretta del tuo caso specifico servirebbe avere una situazione completa e ad oggi non c'è ... ma cerco di spiegarti i concetti in modo che poi provi ad applicarli...!

    In sostanza sere solo 1 Tabella Fornitori, poi sapendo che 1 Fornitore ha Molti Articoli
    ti servirà una Seconda Tabella Articoli che sia Relazionata con la Tabella Fornitori in modo che ad ogni Articolo sia associato il Fornitore...!

    Ora nasce un'altro concetto... è possibile che un'articolo possa essere Fornito da PIU' FORNITORI...?
    Se NO allora quanto esposto prima va bene, se SI, serve introdurre un concetto più avanzato di relazione definita MOLTI-MOLTI che non esiste realmente e che si sviluppa con 3 Tabelle...
    1° Fornitori
    2° Articoli
    3° Articoli_Fornitore

    Nella 3° Tabella inserirai il legame tra le prime 2, aggiungendo quei campi che DIFFERENZIANO
    l'articolo per il fornitore specifico... ad esempio il CODICE_FORNITORE...

    Se questi concetti non ti sono chiari, proseguire è impossibile, e credo serva fare un passo indietro sul consolidamento delle BASI, cosa che non può certo essere trattata in un FORUM.
  • Re: Casella combinata con campi diversi da più tabelle

    Hai messo tanti problemi tutti insieme e le indicazioni di base di Alex tentano affannosamente di ricostruire un quadro generale complesso e, in partenza, mal strutturato (sicuramente non devi fare una tabella per ogni Fornitore).

    In linea generale, volendosi attenere al titolo del tuo post, vado anch'io a tentoni e a naso, quando vuoi sapere il valore X che sta nella tabella Y, ma è anche riferito a qualcosaltro Z, opportuno sarebbe prima creare una query che stabilisce la provenienza di questi valori e poi poggiarsi su di essa per impostare una casella combinata il più possibile efficente ai tuoi desideri.
  • Re: Casella combinata con campi diversi da più tabelle

    Grazie mille per le risposte
    Proverò a strutturare il tutto in modo diverso.
  • Re: Casella combinata con campi diversi da più tabelle

    @Alex ha scritto:


    L'argomento è stato trattato altre volte... il problema è che improvvisarsi su questi aspetti è controproducente...

    In tutti i casi... per darti una spiegazione corretta del tuo caso specifico servirebbe avere una situazione completa e ad oggi non c'è ... ma cerco di spiegarti i concetti in modo che poi provi ad applicarli...!

    In sostanza sere solo 1 Tabella Fornitori, poi sapendo che 1 Fornitore ha Molti Articoli
    ti servirà una Seconda Tabella Articoli che sia Relazionata con la Tabella Fornitori in modo che ad ogni Articolo sia associato il Fornitore...!

    Ora nasce un'altro concetto... è possibile che un'articolo possa essere Fornito da PIU' FORNITORI...?
    Se NO allora quanto esposto prima va bene, se SI, serve introdurre un concetto più avanzato di relazione definita MOLTI-MOLTI che non esiste realmente e che si sviluppa con 3 Tabelle...
    1° Fornitori
    2° Articoli
    3° Articoli_Fornitore

    Nella 3° Tabella inserirai il legame tra le prime 2, aggiungendo quei campi che DIFFERENZIANO
    l'articolo per il fornitore specifico... ad esempio il CODICE_FORNITORE...

    Se questi concetti non ti sono chiari, proseguire è impossibile, e credo serva fare un passo indietro sul consolidamento delle BASI, cosa che non può certo essere trattata in un FORUM.
    Comunque, io nella tabella degli articoli, ho già considerato il fatto che un'articolo può avere anche più di un codice, quindi ho inserito tre campi (diversi ovviamente) di codice articolo... Può funzionare lo stesso?
  • Re: Casella combinata con campi diversi da più tabelle

    La tua risposta evidenzia che non hai capito concettualmente il modo di approcciare al problema e la tematica esposta.

    Non posso pertanto risponderti, prima devi comprendere di cosa parliamo e poi vedrai che capirai da solo che la tua domanda è sbagliata.
  • Re: Casella combinata con campi diversi da più tabelle

    Caro Bestshot, potresti illustrarci tutti i nomi delle tue tabelle con relativi campi e relazioni? Puoi anche allegare una immagine della finestra Relazioni. Solo in questo modo possiamo capire meglio dove sbagli concettualmente e/o tecnicamente.
  • Re: Casella combinata con campi diversi da più tabelle

    Scusate se non ho risposto in questi giorni, ma ho praticamente risolto tutti i miei problemi. Mi sono reso conto che stavo creando una confusione assurda, e ora ho creato un database coerente e che rispetta tutte le mie richieste. Ringrazio ancora tutti per aver cercato di aiutarmi!
Devi accedere o registrarti per scrivere nel forum
9 risposte