Newsgroup: it.comp.appl.access
Titolo: Quarta CasellaCombinata per Filtrare

 
Buongiorno ,
 
Ho 3 caselle riepilogo a cascata 
che in sequenza  sono 
 
prima Cbo
ElencoCategorie  (es. Elettrico)
 
seconda  Cbo
ElencoSottocategorie  ( es. Alternatori )
 
terza Cbo
ElencoProdotti  ( es.Tutti gli alternatori di tutti i fornitori ) 
 
funzionano perfettamente solo che ho bisogno di una quarta Cbo
che mi filtri  tutti gli Alternatori  in base al Fornitore (IDFornitore)
 
questo il codice che ho sulla terza Cbo :
 
Private Sub ElencoPRODOTTI_AfterUpdate()
 
 
Me.Precodice = Me.ElencoProdotti.Column(1)
    Me.CodiceProdotto = Me.ElencoProdotti.Column(2)
        Me.DescrizioneProdotto = Me.ElencoProdotti.Column(3)
            Me.Prezzo = Me.ElencoProdotti.Column(4)
                Me.EAN = Me.ElencoProdotti.Column(6)
                    Me.Peso = Me.ElencoProdotti.Column(7)
                        Me.Sottocategoria = Me.ElencoSottoCategorie.Column(1)
                            Me.IDProdotto = Me.ElencoProdotti.Column(8)
                                Me.PrezzoNetto = Me.ElencoProdotti.Column(9)
                                    Me.CategoriaScontoFornitore = Me.ElencoProdotti.Column(10)
                                        Me.IDFornitore = Me.ElencoProdotti.Column(11)
 
 
solo che non riesco a farmi restituire dalla quarta Cbo la selezione per il fornitore
scelto sulla stessa quarta Cbo , non riesco ad andare avanti 
 
chiedo un aiuto
Grazie
 


penso sia più opportuno che la terza combo abbia la lista dei fornitori
visto che comunque si è già posta l'attenzione (il fermo visivo) sugli alternatori, 
Con questa sistemazione si deve ricavare la lista dei fornitori di un qualsiasi alternatore
(si prospetta un raggruppamento sul campo fornitore in una query "a cascata")
 
e poi, alla selezione del fornitore, appaiono i "di lui" alternatori nella quarta lista.
 
Per terminare:
vedo anche più opportuno che queste due ultime liste siano listbox
e non combobox.
 
E' implicito che si tratta di tutte liste (query) "a cascata"
(il contenuto della successiva dipende dalla scelta precedente:
che rappresenta il criterio di selezione "di scopo")
cascata che si ottiene con aggiornamento delle liste per mezzo di requery

aggiunta:
se però lo scopo "più stretto" della ricerca
è quello di vedere quali sono i fornitori di un determinato alternatore
(avendo appunto "in mente" l'alternatore)
 
allora la lista tre contiene gli alternatori e la lista quattro contiene i fornitori
 
ma allora NON ho fornito nessuna risposta e frainteso il senso della domanda:
 
cercavi aiuto su come fare a disporre in cascata le liste ?
(anche se da come descrivi avrai già fatto questo almeno per le prime due)
 

La premessa da fare sarebbe la descrizione relazionale delle tabelle... che ovviamente dovrebbe prevedere una relazione in 3° FN ovvero una Molti-Molti tra "Alternatori" e Fornitori.
Dando per scontato sia così... serve una combo di selezione Fornitori e nella origine dell'elenco Categoria per Fornitore andrai a filtrare per IdCategoria(corrispondente ad Alternaore) AND IDFornitore.
 
Tuttavia siccome questa risposta è banale ho il sospetto di aver frainteso la domanda.
 
Aggiungo tuttavia che molto probabilmente sotto  categorie Alternatori magari avrai anche altri sottogruppi... l'importante era capire a che livello leghi i fornitori con le Categorie(Alternatori) perché se di mezzo hai altro... ovviamente si complica... ma allora serve che ci racconti la struttura.
 
@Alex


LA prima Cbo  mi da la Categoria , scelgo la categoria e 
nella seconda Cbo compaiono le Sottocategorie , scelgo la sottocategoria e
nella terza Cbo mi compaiono tutti i prodotti scelti con la Sottocategoria
 
Es. la prima Cbo ElencoCategorie scelgo "Elettrico" e viene popolata la seconda Cbo con tutte le sottocategorie appartenenti ad "Elettrico" , scelgo 
da ElencoSottocategorie Alternatori piuttosto che Regolatori e questo mi filtra la terza Cbo ElencoProdotti con tutti GLi ALTERNATORI di tutti i fornitori , 
a questo punto vorrei che la quarta Cbo popolata con IDFornitore
( IDfornitore che compare anche sulla terza Cbo )  scegliendo un fornitore
mi filtri di nuovo la terza Cbo con solo Gli ALTERNATORI del fornitore scelto .
 
Spero di essere stato chiaro


No Alternatori è già una sottocategoria  di Elettrico
la struttura è come la sequenza Regioni,Province,Città, di vari tutor
 
ovvero Categorie,Sottocategorie,Prodotti  solo che i prodotti si riferiscono alla sottocategoria  e a tutti i fornitori .
 
LA prima Cbo  mi da la Categoria , scelgo la categoria e 
nella seconda Cbo compaiono le Sottocategorie , scelgo la sottocategoria e
nella terza Cbo mi compaiono tutti i prodotti scelti con la Sottocategoria
 
Es. la prima Cbo ElencoCategorie scelgo "Elettrico" e viene popolata la seconda Cbo con tutte le sottocategorie appartenenti ad "Elettrico" , scelgo 
da ElencoSottocategorie Alternatori piuttosto che Regolatori e questo mi filtra la terza Cbo ElencoProdotti con tutti GLi ALTERNATORI di tutti i fornitori , 
a questo punto vorrei che la quarta Cbo popolata con IDFornitore
( IDfornitore che compare anche sulla terza Cbo )  scegliendo un fornitore
mi filtri di nuovo la terza Cbo con solo Gli ALTERNATORI del fornitore scelto .
 
La relazione tra Prodotti e Fornitori è 1 a molti 
1 fornitore molti prodotti    


Secondo me hai un problema...
Non può esistere una Tabella con tutti gli Alternatori di tutti i fornitori è un errore strutturale.
Gli esempi che ti ho fatto pur avendo errato ella mia esposizione Categoria con la tua "Sottocategoria"... il significato tecnico rimane inalterato se riesci a scalare quanto detto.
 
Deve esistere una Tabella Fornitori(Anagrafica)
Per ogni fornitore potrai avere molte SottoCategorie(es Alternatore ecc..)
Ma è vero anche che una SottoCategoria può essere fornita da Molti Fornitori.
Sicché relazione 1-M è errata, come ti dicevo serve una relazione M-M per rispettare la 3FN.
Se hai studiato la Normalizzazione sai cosa rappresenta la 3FN e di conseguenza la struttura base di una relazione M-M.
 
Qui mi fermo per non aggiungere confusione... anche se spero diesseemi sbagliato...perché quello che ti ho esposto richiede una rivisitazione del sistema...
 
@Alex

 Ma è vero anche che una SottoCategoria può essere fornita da Molti Fornitori.
 
No la Tabella Fornitori non è agganciata alla sottocategoria , ma alla Tabella Prodotti che si relaziona alla tabella Sottocategorie e Categoria
 
perché io ho un Prodotto che appartiene ad una Categoria ed a una Sottocategoria e dipende da un Fornitore , però non è realistico agganciare le Categorie e Sottocategorie ai Fornitori , 
 
così facendo mi sembra di aver eseguito la terza regola di Normalizzazione nel modo appropriato 
 
Queste sono le Quattro Tabelle in questione 
(Prodotti , Fornitori, Categorie,Sottocategorie)
Fornitori  1 a Molti con Prodotti  
Categorie  1 a Molti con Prodotti   e 1 a Molti con Sottocategorie
 
Mi sembra che le relazioni siano giuste 
 
Spero non avere fatto confusione e che ci sia una chiave per risolvere il tutto 
 
Ciao  Giuseppe

 
 
 
approccio euristico (quello che arrivo a fare io !): 
guardiamo le chiavi univoche!!!
 
NON è realmente possibile che tu NON abbia una tabella
in cui la chiave univoca è il binomio fornitore-prodotto
(forse la chiami in altro modo, ma è la "soluzione" 
della relazione molti a molti fra prodotti e fornitori)
 
se così non fosse, dopo aver inserito una coppia fornitore-prodotto
non potresti più inserire 
-->nessun altro prodotto come quello sopra
(come DEVE essere per una tabella prodotti che ha prodotto come chiave univoca)
-->nessun altro fornitore come quello sopra
(come DEVE essere per una tabella fornitori che ha fornitore come chiave univoca)
 
inoltre:
cosa impedisce di proporre una ricerca per "parte del nome" di un prodotto ?
 
si apre la lista prodotti che la contengono
e dalla selezione del prodotto si valorizza la lista dei fornitori
 
E' davvero una situazione in cui "aiuta di più" impostare la ricerca
da categorie e sottocategorie ?
(che, per come le fai apparire, sembrano "sovrastrutture"
r non "aiuti" alla ricerca)
 
 
 

 
 
Questo può essere possibile però la soluzione delle Cbo a Cascata è a mio parere più lineare e migliore .


 
 
aggiungo una opinione DEL TUTTO personale (con riscontro operativo)
sulla questione prodotti-categorie (e sottocategorie, e ancor più di sotto ...)
visto che di recente era stata riproposta in termini generali.
 
per me, SE l'item di riferimento è il prodotto, 
(e i suoi componenti, altri items da inserire fra i prodotti ...)
la "suddivisione" in categorie (magari anche senza sottocategorie)
NON è, di fatto, un grande aiuto alla ricerca 
(lo è però per la presentazione dei prodotti: catalogo "ragionato") 
 
per me la ramificazione di categorie e sottocategorie 
acquista una "valenza primaria" ("sovrasta" i prodotti ...)
nel caso dei grandi magazzini o dei musei
dove ci sono "i corridoi" di presentazione (di collocazione) prodotti 
e a quelli si fa primario riferimento
 
Riscontro:
è il caso di produzione capi abbigliamento:
come si immagina facilmente i componenti sono svariati,
la loro primitiva suddivisione in categorie
(bottoni, zip, nastri, etichette, adesivi ...),
con l'andar del tempo risulta più un impedimento che una facilitazione
al recupero dei dati di un prodotto
per due motivi:
 
il (necessario) proliferare delle categorie
(... e ora questo dove lo metto ? serve un'altra categoria ...)
 
il fatto che chi ricerca i dati NON è colui che li registra
esempio: registrazioni nei posti della progettazione,
ricerca nei posti di gestione produzione e contabilità
(... e ora questo dove lo hanno messo ? proviamo questa categoria ...)
 
La cosa è MOLTO migliorata suggerendo qualche indicazione nel nominare i prodotti e ricercando per parte della stringa del prodotto
(quando, ovviamente, non si ha a disposizione una stampa che spiattella il nome intero)
 

 
 
Sono d'accordo con te ma in parte , 
io gestisco un magazzino ricambi per Moto  con una tabella principale Prodotti
con circa 300.000 record di cui 100.000 circa disponibili in magazzino 
nello stesso database ho svariati tipi di ricerca , per descrizione prodotto ,per codice prodotto , per prezzo , per ubicazione, per categoria , per sottocategoria , per fornitore .
Solo che mi sono incaponito sulla riuscita della ricerca come elencato sopra 
ovvero, scelgo categoria,scelgo sottocategoria,ho tutti i prodotti di quella sottocategoria , mi manca solo che i prodotti di questa sottocategoria mi vengano di nuovo filtrati per fornitore  .
 
Ciao Giuseppe
 

 ovvero, scelgo categoria,scelgo sottocategoria,ho tutti i prodotti di quella sottocategoria , mi manca solo che i prodotti di questa sottocategoria mi vengano di nuovo filtrati per fornitore  .
 
 
allora:
 
SE 
la tabella prodotti contiene il binomio prodotto-fornitore
(comunque esso sia, diretto o rintracciabile)
E
la tabella prodotti contiene ANCHE categoria e sottocategoria
(comunque essi siano, diretti o rintracciabili)
 
(se è così, così sia: cosa fatta capo ha ...)
 
E
considerando che non ci sono difficoltà per individuare e scrivere
gli eventi che determinano la cascata fra liste
 
MI (SBI)LANCIO (senza paracadute ...)
 
evidenziando per ogni controllo, in sequenza:
{ORIGINE, CRITERIO, CAMPO restituito}
 
cboCateg
{prodotti; NO criterio; grp categoria)--> grp= raggruppamento
 
cboSottocateg
{prodotti; cboCateg; grp sottocategoria)
 
cboProdotti (o LISTA prodotti)
{prodotti; cboSottocateg; GRP prodotto)
 
cboFornitori (o LISTA fornitori)
{JOIN prodotti-fornitori; cboProdotti; fornitore)