Newsgroup: it.comp.appl.access
Titolo: caselle combinate e di riepilogo

volevo sapere se è fattibile una cosa simile:
ho un nuovo DB per magazzino con 2 tabelle
1 - articoli
2 - categorie
la tabella categoria è composta da 3 campi
CODICE
CATEGORIA
SOTTOCATEGORIA
il quesito è il seguente:
vorrei creare una maschera (che ho came origine una query) che abbia le
seguente caratteristiche:
1 - una casella combinata che contiene le categorie
2 - una casella di riepilogo che contiene le sottocategorie e il codice di
queste.
la particolarità è questa:
devo scegliere dalla (1) una categoria, di conseguenza nella (2) mi devono
apparire solo le sottocategorie della categoria scelta. in seguito cliccando
su una sottocategoria devono apparirmi in maschera (1 alla volta) gli
articoli relativi alla sottocategoria scelta.
si può fare??
Grazie 1000
Nicola

 ha scritto nel messaggio
news:kw5H8.670$KG6....@twister2.libero.it...

Intanto dirrei che devi lavorare con tre e non con due tabella.
La tabella Categorie che deve avere una struttura simile a questa:
IDCategoria        Contatore e chiave primaria
DescrCat            Testo
La tabella Sottocategorie che deve avere una struttura simile a quasta:
IDSottCat            Contatore e chiave primaria
IDCategoria          Numerico
DescrSottCat        Testo
Queste due tabelle debbono essere in relazione uno_a_molti in base ai campi
IDCategoria.
La tabella Articoli che deve avere una struttura simile a questa:
IDArticolo            Chiave primaria
IDSottCat            Numerico
Descrizione           Testo
ecc. ecc.
La tabella Articoli deve essere in relazione uno_ a_molti con la tabella
Sottocategorie in base ai campi IDSottCat.
Creati una maschera chiamata Articoli, con visualizzazione a Maschera
singola e che abbia come origine record la tabella Articoli.
Creati una maschera chiamata Maschera1, con visualizzazione a Maschera
singola e che non abbia origine record.
In Maschera1 inserisci una casella combinata non associata chiamata
Categoria, che abbia due colonne (di cui la prima non visibile) e che abbia
come origine riga il seguente codice SQL:
SELECT DISTINCTROW [Categorie].[IDCategoria], [Categorie].[DescrCat] FROM
[Categorie];
Inserisci in Maschera1 inserisci anche una casella di riepilogo non
associata chiamata SottoCategorie, che abbia due colonne (di cui la prima
non visibile) e che abbia come origine riga i seguente codice SQL:
SELECT DISTINCTROW Sottocategorie.IDSottCat, Sottocategorie.DescrSottCat
FROM Sottocategorie WHERE
(((Sottocategorie.IDCategoria)=[Forms]![Maschera1]![Categoria]));
A fronte dell'evento "Dopo aggiornamento" della casella combinata Categoria
genera il seguente codice VBA:
Private Sub Categoria_AfterUpdate()
Me!SottoCategorie.Requery
End Sub
A fronte dell'evento "Su clic" della casella di riepilogo SottoCategorie
genera il seguente codice VBA:
Private Sub SottoCategorie_Click()
    Dim stDocName As String
    Dim stLinkCriteria As String
    stLinkCriteria = "IDSottCat=" & Me!SottoCategorie.Column(0)
    stDocName = "Articoli"
    DoCmd.OpenForm stDocName, , , stLinkCriteria
End Sub
A questo punto apri Maschera1, seleziona una categoria dalla casella
combinata e clicca su una sottocategoria della casella di riepilogo.
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------

non posso che dirti che sei un mago!!!
anche se vorrei una piccola modifica e un'osservazione:
inizio con la modifica:
vorrei che tutta la pappardella che mi hai spiegato si realizzasse su
un'unica maschera, ho cercato di farlo da solo ma senza buoni esiti (in
pratica ho creato la maschera ARTICOLI e in seguito ho tentato di sviluppare
il tutto sulla detta maschera apportando le modifiche che PENSAVO fossero
necessarie). cosa devo fare?
adesso passiamo all'osservazione:
mettiamo che un articolo, per vari motivi debba cambiare categoria, secondo
le relazioni imposte dal tuo suggerimento ora mi risulta impossibile
effettuare queste variazioni... (ti faccio un esempio: ho ad esempio un
cucchiaio di legno che costa L.500 ovvero 0,26? e si trova nella categoria
MILLE e sottocategoria CASALINGO. Se mi varia il prezzo e sale a L.1100 deve
diventare CASALINGO - UTENSILI).
come risolvere?
grazie mille x mille
Nicola

 Nicola
--
