Newsgroup: it.comp.appl.access
Titolo: Elenco caratteristiche diverse

Salve a tutti
Ho tre tabelle contenenti anagrafiche differenti. 
Ad esempio:
monitor;
ws;
stampanti.
Voglio creare una tabella PostiDiLavoro, che, oltre ad avere
l'identificativo del posto di lavoro(PDLnn), mi dia la possibilità di
inserire gli elemeti delle prime tre tabelle.
Naturalmente questo dovvrebbe essere fatto in modo dinamico (Non tutte
le postazioni di lavoro hanno una stampante, e potredi decidere nel
futuro di inserire una tabella modem, senza sconvolgere la struttura del
DB).
Sicuramente posso in qualche modo utilizzare l'union delle tre tabelle
per elencare in modo univoco tutti i materiali da inserire nella tabella
PostiDiLavoro, ma come faccio a vedere in modo dinamico le
caratteristiche dei vari elementi. Ad esempio: di quanti pollici è largo
il monitor della pdl23 ??
Grazie in anticipo per la collaboazione
Alfredo
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG



capito nulla della tua domanda
Saluti.
Emanuele.

 ...
  O non ho capito la domanda o non ho capito dove stia il 
problema.
  Cmq provo a dirti come farei io.
  Tu hai 3 queste tabelle:
monitor: {IDmonitor, marca, modello, ...} 
ws: {IDws, ...}
stampanti: {IDstampante, marca, modello, ...}
(con IDxxx chiave primaria).
  Creando la tabella Postazioni nel seguente modo:
POSTAZIONI
----------
IDpostazione (chiave primaria, contatore)
IDmonitor    (chiave esterna)
IDws         (chiave esterna)
IDstampante  (chiave esterna)
DatiPostazione (...)
...
e stabilendo delle relazioni (uno a molti) tra le tre tabelle e 
la tabella postazioni, ecco che potrai associare, ad ogni 
postazione, un elemento contenuto nelle tabelle monitor, ws e 
stampanti.
  Volendo conoscere il modello di modem appartenente alla 
postazione 7 dovrai solo andarti a leggere il valore del campo 
IDmonitor del record della tabella POSTAZIONI avente 
IDpostazione=7. Quel valore di IDmonitor, che altri non è se non 
la chiave primaria della tabella MONITOR, ti permetterà di 
risalire al modello cercato.
  Per presentare all'utente una scelta delle periferiche 
disponibili ti basterà inserire nella mascherà di input una 
combobox utilizzando lo strumento di creazione guidata.
  Se in futuro deciderai di aggiungere la tabella Modem (con 
chiave primaria IDmodem) ti basterà inserire nella tabella 
Postazioni la chiave esterna IDmodem e stabilire l'opportuno 
Join.
OSS: potrebbe darsi il caso di postazioni aventi, ad ex,  più di 
una stampante. Per gestire questo tipo di casi dovrai realizzare   
un collegamento molti a molti tra la tabella Postazioni e la 
tabella Stampanti. Per far questo dovrai realizzare una 
struttura del genere:
 ____________         ____________      ___________
|POSTAZIONI  |       |uamStampanti|    |Stampanti  |
|============|       |============|    |===========|
|IDpostazione|1 -- oo|IDpostazione|  _1|IDstampante|
|IDstampante |       |IDstampante |oo  |...        |
|...         |
  Ciao.
-- 
--------------------------------
http://digilander.iol.it/winses/
--------------------------------

 wrote in message
news:9c35589e18dfb6fbc48...@mygate.mailgate.org


 
  Ciao,
ho capito il tuo prbl. Per ora le uniche soluzioni che mi 
vengono in mente prevedono un lavoro grandemente maggiore 
rispetto a quello richiesto dalla soluzione che t'avevo 
suggerita.
  Ad ex, con una UNION query di questo tipo:
SELECT "Monitor" As NomeTabella, Monitor.ID, Monitor.Marca, 
Monitor.Modello FROM Monitor
UNION
SELECT "Stampanti" As NomeTabella, Stampanti.ID, 
Stampanti.Marca, Stampanti.Modello FROM Stampanti
UNION
SELECT "Ws" As NomeTabella, Ws.ID, Ws.Marca, Ws.Modello FROM Ws;
potresti selezionare le voci da inserire nella tabella
  Elementi {[IDelementi], IDpdl, NomeTabella, ID}
(colleg. 1--OO con tab PDL tramite IDpdl, NomeTabella = 
Stampanti, Monitor, ..., ID=ID della periferica all'interno 
_della_rispettiva_tabella)
  Questa tabella sarà l'origine della sottomaschera Elementi 
della maschera PDL (basata sulla tabella PDL). In questa submask 
visualizzerai l'elenco delle periferiche come esce fuori dalla 
UNION query (i.e. Tipo periferica, marca, modello).
  Volendo avere i dettagli di ogni periferica dovrai poi fare in 
modo che, ad ex, premendo un tasto venga richiamata una maschera 
contenente tutti i campi relativi all'elemento 'ID'-simo della 
tabella 'NomeTabella'. A questo proposito dovrai esserti creato 
o una maschera per ogni tipo di periferica (cioè per ogni 
possibile 'NomeTabella'), o una maschera che si autocomponga a 
seconda della sorgente dati passata (passi 'NomeTabella' come 
OpenArgs, apri [NomeTabella], leggi campi, elabori la matrice di 
controlli, ...)
  Tieni presente, cmq, che sarai costretto a modificare la 
struttura del DB (nuova tabella) e della query ad ogni aggiunta 
di un tipo di periferica non previsto.
  La soluzione che ti avevo proposta mi pare meno problematica 
(l'aggiunta di un nuovo tipo di periferica comporta solo 
l'inserimento di una nuova tabella, di un indice nella tabella 
PDL, di una combo nella maschera PDL). Continuero' a pensarci 
(il prbl interessa anche a me); fammi sapere se riuscirai a 
trovare 
q.sa
 di + 'snello'.
-- 
-------------------------------------
I migliori programmi freeware e shareware
http://digilander.iol.it/winses/
-------------------------------------

 ho capito il tuo prbl. ....
