2 caselle combinate

di il
2 risposte

2 caselle combinate

Ciao ragazzi mi trovo davanti ad un problema che anche cercando quà e la non ho trovato risposta,

partiamo da una tabella la quale contiene tre campi la chiave primaria ID , città e cap (entrambe testo)
quest'ultima popolata con città e cap
poi ho una seconda tabella clenti con IDclienti(chiave primaria) nome(testo) cognome (testo) data di nascita (Data/ora) IDcittà (numerico)
queste due tbelle relazionate da uno a molti : ID con IDcittà.
Creando una maschera guidata di quest'ultima tabella(Clienti) inserisco nome cognome data di nascita,
poi di seguito nella maschea in visualizzazione struttua creo 2 caselle combinate nella quale posso scegliere la città ed il cap (chiaramente registrando il tutto su IDcittà)
fin qui tutto ok e nessun problema
adesso se io creo una tabella fatture
dove inserisco IDfatture (chiave primaria) numero fattura(numerico) data (Data/ora) e idclienti(numerico)
relazionata uno a molti tra id cliente(tabella cliente) e id cliente (tabella fatture)
procedendo con lo stesso metodo della crezione guidata della maschera
ed immettendo numero fattura data
ed in seguito aggiungendo 4 caselle combinate id cliente (presa dalla tabella fattura)
le quali mi restituiscono nome cognome
ma nelle altre 2 dove ci dovrebbero stare città e cap mi restituisce un numero (numero registrato nella tabella)

come risolvo? spero di essere stato abbsatanza chiaro

2 Risposte

  • Re: 2 caselle combinate

    Concettualmente quello che fai è errato.

    Ora per il primo caso, è concepibile la doppia combo, soprattutto se sei in una Maschera continua, se fossi in una Singola non avrebbe senso, basterebbe un'Option Button ed a seconda della selezione abiliti la scelta del Nome(città) o del Cap semplicemente scambiando l'ordine della 2°colonna visibile nel predicato SQL del RowSource(Origine Riga).

    Per l'emissione della Fattura invece NON ha senso, se selezioni il CLIENTE i dati di Città e/o CAP devono risiedere già nella compilazione al momento dell'immissione del Cliente, quindi perchè devi reinserirli...?
    O meglio se devi inserirli, devi usare la Maschera preposta a farlo, quindi aprirai la maschera di dettaglio Cliente in modalità Dialogo, compili il tutto e poi rientri.
    Se vuoi ereditare tutti i dati in Visualizzazione, costruisci una Combo basata su una Query che veda il JOIN tra Clienti e Città con i campi recuperati sfruttando l'autolookup.
    Quindi se vuoi compilare delle TextBox(che però dovrannon essere in sola lettura) inserirai nella loro origine riga =NomeCombo.Column(indice) e tutto si aggiorna in automatico...

    In tutti i casi se questa è la funzionalità che ricerchi, è ovvio che la tua azione non può agire sulla sola Tabella Fatture, ma devi creare una Query che tenga in JOIN le 2 Tabelle o 3 addirittura...

    Secondo me in tutti i casi con questa Logica, poi andrai a saturare la modalità di lavoro.
  • Re: 2 caselle combinate

    Ti ringrazio per la tempestiva risposta domani ci provo e ti faccio sapere,comunque la mia idea era quella di popolare in automatico delle caselle richiamando solo il nome del cliente o p.iva , con dei dati precedentemente registrati
Devi accedere o registrarti per scrivere nel forum
2 risposte