Newsgroup: it.comp.appl.access
Titolo: maschera con campi dinamici

Salve, che voi sappiate, e' possibile generare i campi di una maschera in
modo dinamico, in funzione dei valori contenuti in una tabella?
Mi spiego meglio: ho una tabella (tab1) che contiente i seguenti campi: ID,
CAR1,CAR2,CAR3.
Se per esempio il primo record della tabella fosse: Id=1, car1=a, car2=b e
car3=c, vorrei che la maschera prova1, avesse i campi: a, b, c. e che fosse
possibile salvare il contenuto che andremo ad imputare sulla maschera prova1
(sui campi a, b,c) in tabella (tab2).
Spero di essere riuscito a rendere l'idea e ringrazio tutti quelli che
vorranno aiutarmi.
Grazie.
Silvy.

 (sui campi a, b,c) in tabella (tab2).
Per quale motivo quello che viene inserito deve essere salvato in tab2
invece che in tab1 direttamente?
Tu prepari una maschera con origine record la tab1.
Metti 3 controlli associati ai tre campi, quando l'utente scrive lì dentro
scrive un nuovo record che sarà salvato nella tabella tab1 direttamente...
Antonio


Non mi sono spiegato bene.
Io ho la necessita' che il nome dei campi della maschera, cambi in funzione
di cio' che c'e' scritto nella tabella tab1. Tab1, conterra' praticamente il
nome dei campi della maschera e non potra' quindi contenere i dati dei campi
stessi. Ogni record della tabella tab1, comporra' la maschera in modo
diverso.
Con altre applicazioni si puo' fare, sicuramente si puo' anche con access.
Silvy.

 Con altre applicazioni si puo' fare, sicuramente si puo' anche con access.
Perchč, ma soprattutto peeeerchč, vuoi fare tutto ciň???
Sigh...
Antonio


Molto semplice, devo creare un db per un lab. di misure elettriche. I
tecnici del lab devono essere guidati sulle caratteristiche da rilevare in
funzione di un piano di controllo prodotto.
Tale piano varia in funzione del prodotto da controllare e sarebbe quindi
corrispondente ai vari record della tabella tabella1.
Il bello di tutto cio' e' che i piani di controllo aumentano in funzione
della "nascita" di nuovi prodotti e quindi deve essere l'utente stesso a
inserire sulla tabella tabella1 le caratteristiche che deve verificare.
Conosci qualcosa del genere?
Ciao.
Silvy.

 > Perchè, ma soprattutto peeeerchè, vuoi fare tutto ciò???


 Conosci qualcosa del genere?
Puoi farmi un esempio pratico?
Antonio

 ha scritto nel messaggio
news:ykM66.11958$eB2.1...@news.infostrada.it...

Io ho una tabella cosi strutturata:
(prima riga: nome dei campi)
(righe successive: record)
|__ ID__|__CAR1__ |__CAR2__|__CAR3__|
|__01__|___diam___|___peso___|___spes___|
|__02__|___col____|____alt____|___lung___|
Io voglio poter comporre una maschera che abbia se ho selezionato il record
01 come etichette dei campi diam, peso, spes oppure se avessi selezionato il
record 02, col, alt, lung.
Ecco perche' dicevo maschera con campi dinamici perche' in funzione del
record, compaiono certi campi, definiti sulla tabella, dall'utente stesso.
Ovviamente, una volta generata la maschera, l'utente deve poter compilare i
campi con i valori delle misurazioni che vanno salvati su un'altra tabella.
Silvy.

 ha scritto nel messaggio
news:RpI66.181675$IP1.6...@news1.giganews.com...


 campi con i valori delle misurazioni che vanno salvati su un'altra
tabella.
Ok, capito.
Questa è la funzione che ti crea la tabella come la vuoi tu.
Public Function crea_tab(id_scelto As Long)
    Dim car1 As String, car2 As String, car3 As String
    Dim criterio As String
    Dim mioset As Recordset
    Dim tdf As TableDef
    Dim fld As Field
    criterio = "[ID] = " & id_scelto
    Set mioset = CurrentDb.OpenRecordset("tabella1", dbOpenDynaset)
    mioset.FindFirst criterio
    car1 = mioset.Fields(1)
    car2 = mioset.Fields(2)
    car3 = mioset.Fields(3)
    Set tdf = CurrentDb.CreateTableDef("Tabella " & id_scelto)
    Set fld = tdf.CreateField(car1, dbText, 60)
    tdf.Fields.Append fld
    Set fld = tdf.CreateField(car2, dbText, 60)
    tdf.Fields.Append fld
    Set fld = tdf.CreateField(car3, dbText, 60)
    tdf.Fields.Append fld
    tdf.Fields.Refresh
    CurrentDb.TableDefs.Append tdf
    CurrentDb.TableDefs.Refresh
end function
A questo punto tu avrai preparato una maschera standard con tre controlli.
Apri la maschera, assegni da codice come origine dati dei controlli i valori
car1 car2 e car3, dai come origine record della maschera la tabella "tabella
" & id_scelto e sei a cavallo...
Antonio

 ha scritto nel messaggio
news:Ns376.18709$eB2.2...@news.infostrada.it...

Scusa ma mi sono perso! Cosa devo fare sulla maschera.
Io ho incollato su un modulo la funzione che mi hai passato. E adesso?
Grazie ancora.
Silvy.