Sottomaschera relazione

di il
17 risposte

Sottomaschera relazione

Ciao a tutti.
Sto lavorando sul mio primo database relazionato e sono piantato su un punto.
Ho una maschera con sottomaschera. Quest' ultima è stata costruita con una combobox.
Ad ogni record che cerco (tramite una query) mi si apre la maschera con la relativa sottomaschera con i valori esatti (e fin qui ci siamo), però quest' ultima è sempre una combo (anche se bloccata) e cliccando sulla freccina laterale ad ogni valore mi fa vedere tutte le opzioni che ho inserito nella combo stessa (in fase di inserimento valori).
Come faccio a togliere il menù a tendina della combo e vedere il/i valori singoli? Probabilmente devo rifare la sottomaschera ma non so come fare.
Spero di essermi spiegato bene e nell' aiuto di qualcuno di voi.

17 Risposte

  • Re: Sottomaschera relazione

    Da quanto ho letto mi è parso di capire che hai una maschera con una combobox, dove, quando scegli un valore, fai aprire un'altra maschera che ha, al suo interno, una sottomaschera nella quale i dati sono correttamente filtrati sulla base di quanto hai scelto nella combobox della prima maschera... (scusa il gioco di parole.. ma questo è quello che ho capito...)

    quello che non ho capito è...
    però quest' ultima è sempre una combo (anche se bloccata)
    che cosa è sempre una combo? la maschera?

    posta un'immagine magari...
  • Re: Sottomaschera relazione

    Io ho capito che il campo di relazione (solitamente ID) nella sottomaschera è una casella combinata. Basta andare in visualizzazione struttura maschera, cliccare sulla casella combinata con il mouse destro e scegliere Cambia in | Casella di testo
  • Re: Sottomaschera relazione

    Ecco il file
    Ho provato Osvaldo a fare come dici tu, ma anziché i nomi mi escono i numeri .......
    Allegati:
    9927_647bd848d1aaf4a12947a28715a91f5d.jpg
    9927_647bd848d1aaf4a12947a28715a91f5d.jpg
  • Re: Sottomaschera relazione

    Allora tu vorresti vedere quei controlli come fossero caselle di testo, ma anzichè vedere il numero ID che c'è sotto, vuoi vedere il valore testuale che la combo di partenza mostrava: giusto?
  • Re: Sottomaschera relazione

    Esatto! Ma se c' è una soluzione migliore per ottenere lo stesso risultato, accetto consigli.
    Io quello sono riuscito a fare (anche con il vostro aiuto).......
  • Re: Sottomaschera relazione

    A me sembra un controsenso quello che vuoi fare. Quelle sono caselle combinate per scegliere valori da una tabella. Vuoi forse dirci che non vuoi più selezionare e digitare sempre a mano?
  • Re: Sottomaschera relazione

    No, no, solo in quella maschera voglio che ciò accada, nel senso che quel preciso fumetto ha SOLO quei valori (disegnatori e parti fumetto) e non c' è bisogno di ulteriori scelte. Le scelte sono già state fatte precedentemente relazionando le tabelle.
    es. Se cerco un altro fumetto con una query, mi si aprirà una nuova maschera e nella relativa sottomaschera ci saranno altri disegnatori e altre parti fumetto, ma anche in quel caso saranno SOLO quelle. Naturalmente sto parlando di fumetti già inseriti.
    Forse semplicemente non sto prendendo i valori dal posto/modo giusto? Ma qual' è il posto/modo giusto?
  • Re: Sottomaschera relazione

    OK, adesso tutto mi è più chiaro. Se fosse stata una maschera/sottomaschera di lavoro (inserimento/modifica per intenderci) il tuo discorso mi sembrava fuori luogo. Adesso che parli di query ci troviamo d'accordo. La soluzione sta a monte della tua query. I campi che ora sono caselle combinate non devono provenire dalla tabella figlia della query, ma direttamente dal campo testo della tabella madre. Se non hai incluso nella query la tabella madre, la devi includere e dire alla query di visualizzare il campo testo corrispondente.
  • Re: Sottomaschera relazione

    Quella c' è già nella query, se no non mi farebbe vedere i dettagli del fumetto(titolo, anno, data, numero, ecc.).

    ********************************** |-----------------disegnatori
    Fumetti---------------dettaglioFumetti
    ********************************** |-----------------partifumetto

    La tabella madre per me è la tabella "fumetti" (forse è proprio qui che sbaglio), mentre le tabelle relazionate (molti a molti) sono: "Disegnatori" e "Parti fumetto".
    Sono i componenti della sottomaschera (presi dalle tabelle relazionate) che mi "sfuggono".....
  • Re: Sottomaschera relazione

    Secondo me tu hai messo in sottomaschera il valore IDDisegnatore prelevato dalla tabella DettaglioFumetti. Magari hai messo pure la casella combinata con IDDisegnatore a 0 cm e NomeDisegnatore a 3 cm per poterlo mostrare, ma si tratta pure sempre di casella combinata. Togli dalla query il campo DettaglioFumetti.IDDisegnatore e mettici direttamente Disegnatori.NomeDisegnatore. Relativamente al discorso che voglio farti io, Disegnatori è madre e DettagliFumetti è figlia.
  • Re: Sottomaschera relazione

    Ho fatto esattamente come hai "pensato" tu!!!.
    Quindi se non ho capito male dovrei ricreare la query prendendo i valori dalla tabella [fumetti] per quanto riguarda la maschera principare; per quanto riguarda la sottomaschera prendo i valori direttamente dalle due tabelle relazionate [disegnatori] e [PartiFumetto] anzichè dalla tabella di collegamento[dettaglioFumetti].
    Mah, a dire il vero, questa soluzione mi sembra di averla già provata (ed è anche la più logica a pensarci bene) e se non ricordo male mi dava lo stesso problema dei numeri al posto dei nomi...... ma forse me la sono soltanto sognata, comunque stasera ritorno "all' attacco".
    Intanto grazie per le dritte .........
  • Re: Sottomaschera relazione

    Ecco il risultato. Adesso mi ricordo perché non avevo adottato questa soluzione. Perché mi veniva fuori solo il cognome e non il nome se non utilizzando le due caselle di testo separate.
    Adesso, dopo vari smacchinamenti, ho adottato questo "metodo". Anche se non piace troppo nemmeno a me... Perdonatemelo. C' è un modo un po' più professionale per richiamare unite due caselle di testo, tipo come per la casella combinata?
    Allegati:
    9927_4eb3d1098ac3398638767cbbe42e1f7b.jpg
    9927_4eb3d1098ac3398638767cbbe42e1f7b.jpg
  • Re: Sottomaschera relazione

    Buongiorno,
    Potrei partire modificando questo codice per raggiungere il mio scopo, o sono fuori strada?
    
    Private Sub Form_Load()
        Dim Nome As String
        Dim Cognome As String
        Dim NomeCognome As String
        
        Nome = "Pippo"
        Cognome = "Pluto"
        NomeCognome = Nome & " " & Cognome
        CaselladiTesto = NomeCognome
    End Sub
    
  • Re: Sottomaschera relazione

    Io temo che il giochetto di unire Nome & Cognome con casella combinata sia stato trattato numerosissime volte. Non posso ricordare tutti i thread che ne parlano, ma dai un'occhiata a questo mio documento
    http://www.divshare.com/download/24930879-58
    clicca sul tasto Download verde per scaricarlo.
    Ora, la differenza fra il tuo caso e i casi standard è che in questi ultimi l'uso della casella combinata con Nome & Cognome (oppure Cognome & Nome) ha una funzione ben precisa, quella di SELEZIONARE comodamente. Tu invece parli di query che devono soltanto visualizzare un prodotto già digitato in precedenza, quindi non vuoi più la casella combinata. Sinceramente qualcosa mi sfugge ma penso che sostanzialmente siamo lì.
    Secondo me non occorre mettere mano al VBA, ma organizzare correttamente una delle tante query che propongo nel mio documento e visualizzare esattamente il campo concatenato.
Devi accedere o registrarti per scrivere nel forum
17 risposte