Dividere dei prodotti per categoria!

di il
5 risposte

Dividere dei prodotti per categoria!

Ciao ragazzi allora, ho una tabella principale con questi campi:

storeID , StoreName , Address , Laptopbrand(casella combinata) , Laptopmodel

vorrei che al momento di inserire un nuovo record quando seleziono un valore in Laptopbrand ,in suguito, al momento di selezionare Laptopmodel mi dia la possibilità di selezionare solo dei valori che precedentemente erano stati imposti da me,

in poche parole è:
se seleziono FIAT poi mi deve far selezionare solo PUNTO, STILO MULTIPLA ,
invece seleziono AUDI poi mi deve far selezionare solo A3 , A5 , A5 , S3

5 Risposte

  • Re: Dividere dei prodotti per categoria!

    Prima di tutto devi pensare che non tutti possono andarsi a leggere i tuoi 3D per capaire l'ambientazione del tuo progetto.
    Quindi ogni 3D è da vedere a se, e tu devi mettere nelle condizioni gli utenti di capire subito quello che stanno leggendo.

    La tua domanda risulta carente della struttura...
    Siccome di norma quello che esponi si ottiene in via Normalizzata con una struttura complessa quanto potrebbe essere da suggereire risulterebbe non compatibile.
    Per capirci se hai tutto in una Tabella la cosa è sporca e si deve ricorrere al Filtro in una Query, che diverrà Origine Riga della Combo che devi usare come selezione.
  • Re: Dividere dei prodotti per categoria!

    @Alex ha scritto:


    Prima di tutto devi pensare che non tutti possono andarsi a leggere i tuoi 3D per capaire l'ambientazione del tuo progetto.
    Quindi ogni 3D è da vedere a se, e tu devi mettere nelle condizioni gli utenti di capire subito quello che stanno leggendo.

    La tua domanda risulta carente della struttura...
    Siccome di norma quello che esponi si ottiene in via Normalizzata con una struttura complessa quanto potrebbe essere da suggereire risulterebbe non compatibile.
    Per capirci se hai tutto in una Tabella la cosa è sporca e si deve ricorrere al Filtro in una Query, che diverrà Origine Riga della Combo che devi usare come selezione.
    come ho esposto ora il problema va bene?
  • Re: Dividere dei prodotti per categoria!

    Si va bene, ma hai un problema come avevo intuito...

    Siccome si parla di gerarchia MonoLivello la cosa è semplificabile, ma alla base del tuo concetto c'è un'errore...!

    MARCA--->MODELLO
    Queste sono 2 Tabelle, che realizzano la rappresentazione GERARCHICA tra Marchio(FIAT, PEUGEOT....) ed i loro relativi MODELLI(PUNTO, BRAVO....., 207, 3008....)

    Nel tuo caso la 1° combo dovrebbe pescare dalla Tabella MARCA, mentre la 2° combo quella da associare al campo Laptopmodel dovrebbe avere come origine riga la 2° Tabella con Filtro su FK(Chiave Esterna) la PK(Chiave Primaria) della 1° Combo...

    Come dicevo essendo una Gerarchia ad 1 Livello può essere gestita, ma io non approvo, anche con solo 1 Tabella...!
    MARCA
    MODELLO
    così otterai questo, effetto Foglio Excel:
    
    FIAT  PUNTO
    FIAT  BRAVO
    FIAT  CROMA
    .....
    FORD  FIESTA
    FORD  FOCUS
    ...
    PEUGEOT  208
    ...
    In quel caso devi fare la stessa cosa le 2 combo punteranno sempre alla stessa Tabella ma a 2 Campi diversi...
    La 2° dovrà avere sempre come riferimento al Criterio la selezione della 1°...

    Dopo averti dato la spiegazione che mi auguro tu legga e riesca a capire, ti allego il Link di un Esempio che esprime la gestione TIPO di 2 Combo in Cascata:
    http://forum.masterdrive.it/access-79/controlli-bound-sincronizzati-in-cascata-45725/
  • Re: Dividere dei prodotti per categoria!

    Non sono un esperto, ma vediamo se riesco a darTi una risposta.

    Ho sviluppato una procedura nella quale, tramite una “casella combinata”, collegata ad una tabella esterna, permette di selezionare un record e filtrarlo nella tabella in uso.
    Per esempio, pensiamo a due tabelle, nella tabella “Marchi” sono stati inseriti, univocamente, tutti i Marchi automobilistici che interessano (FIAT, PEUGEOT, AUDI, Ecc...) mentre nella tabella“Modelli” sono stati inseriti tutti i Modelli con riferimento al Marchio (PUNTO, BRAVO, BRAVA ..., 207, 3008 …, A3, A4 ..., Ecc..).
    Nella maschera “Modelli”, viene inserita una “casella combinata” collegata alla tabella “Marchi”

    (è possibile avere in elenco tutti i Marchi ordinati in ordine crescente, AUDI, FIAT, PEUGEOT … indipendentemente dal loro inserimento nella tabella “Marchi”, ma questa è un’altra storia e non so se può interessare.)

    Sempre nella maschera “Modelli”, viene inserita una seconda “casella combinata” collegata alla tabella“Marchi” ma con il valore memorizzato temporaneamente per uso successivo.

    A questo punto è necessario assegnare all’Evento - Dopo aggiornamento, la seguente routine:

    Private Sub Filtra_Marchio_AfterUpdate()
    Dim Reco As String
    Me.FilterOn = False
    Reco = "ID_Marchio = '" & Filtra_Marchio & "'"
    Me.Filter = Reco
    Me.FilterOn = True
    [ID_Marchio].SetFocus
    End Sub

    Selezionando un Marchio, verranno filtrati tutti i modelli ad esso assegnati;
    il numero dei record filtrati verrà indicato nella parte inferiore della maschera:
    2 per PEUGEOT: 207 e 3008 3 per FIAT: PUNTO, BRAVO e BRAVA 2 per AUDI: A3 e A4

    Alla fine della selezione, è necessario togliere il filtro; l’indicazione del numero dei record verrà ripristinato, in questo caso 7

    Mi auguraro di non essere stato troppo prolisso e di aver interpretato correttamente la Tua esigenza.

    Cordiali saluti e buon lavoro.

    A disposizione.

    Giuseppe Guernieri
  • Re: Dividere dei prodotti per categoria!

    @Alex ha scritto:


    Si va bene, ma hai un problema come avevo intuito...

    Siccome si parla di gerarchia MonoLivello la cosa è semplificabile, ma alla base del tuo concetto c'è un'errore...!

    MARCA--->MODELLO
    Queste sono 2 Tabelle, che realizzano la rappresentazione GERARCHICA tra Marchio(FIAT, PEUGEOT....) ed i loro relativi MODELLI(PUNTO, BRAVO....., 207, 3008....)

    Nel tuo caso la 1° combo dovrebbe pescare dalla Tabella MARCA, mentre la 2° combo quella da associare al campo Laptopmodel dovrebbe avere come origine riga la 2° Tabella con Filtro su FK(Chiave Esterna) la PK(Chiave Primaria) della 1° Combo...

    Come dicevo essendo una Gerarchia ad 1 Livello può essere gestita, ma io non approvo, anche con solo 1 Tabella...!
    MARCA

    MODELLO
    così otterai questo, effetto Foglio Excel:
    
    FIAT  PUNTO
    FIAT  BRAVO
    FIAT  CROMA
    .....
    FORD  FIESTA
    FORD  FOCUS
    ...
    PEUGEOT  208
    ...
    In quel caso devi fare la stessa cosa le 2 combo punteranno sempre alla stessa Tabella ma a 2 Campi diversi...
    La 2° dovrà avere sempre come riferimento al Criterio la selezione della 1°...

    Dopo averti dato la spiegazione che mi auguro tu legga e riesca a capire, ti allego il Link di un Esempio che esprime la gestione TIPO di 2 Combo in Cascata:
    http://forum.masterdrive.it/access-79/controlli-bound-sincronizzati-in-cascata-45725/
    MI intrometto se possibile per il programma sviluppato da alex se non vado OFFT, ho cercado di studiarlo affondo, ma trovo un intoppo con l'aggiunta di un campo e non riesco a venirne fuori. Ho inserito il campo data_inserimento e aggiunto le varie modifiche nella query e nel After Update ma nella casella di testo che opportunamento ho aggiunto nella maschera non mi riporta nessun valore credo che il problema sia nel commando : Me.data= Me.lstComuni.Column(5)
    che non mi legge la colonna 5 ...


    Private Sub lstComuni_AfterUpdate()
    Me.COMUNE = Me.lstComuni.Column(1)
    Me.CAP = Me.lstComuni.Column(2)
    Me.data= Me.lstComuni.Column(5)
    End Sub

    Private Sub lstProvince_AfterUpdate()
    Me.lstComuni.Requery
    Me.PROVINCIA = Me.lstProvince
    Me.COMUNE = vbNullString
    Me.data= vbNullString
    End Sub

    Private Sub lstRegioni_AfterUpdate()
    Me.lstComuni.Requery
    Me.lstProvince.Requery
    Me.REGIONE = Me.lstRegioni
    Me.PROVINCIA = vbNullString
    Me.COMUNE = vbNullString
    Me.CAP = vbNullString
    Me.data= vbNullString
    End Sub
Devi accedere o registrarti per scrivere nel forum
5 risposte