Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
SQL Server 2000/2005/2008, Express, Access, MySQL, Oracle
Relazione tra 2 caselle combinate di una maschera
giovedì 22 novembre 2007 - 18.18
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
salinis
Profilo
| Junior Member
142
messaggi | Data Invio:
gio 22 nov 2007 - 18:18
In una maschera ho creato una casella combinata associata ad una query di unione. La query di unione è composto da due campi: Matricole, Descrizione. Siccome il campo matricole contiene dati che differiscono in base alla descrizione: esempio A000 descrizione PC , B000 descrizione monitor ecc. ecc. All' interno della maschera esiste un 'altra casella combinata (B) che include la tipologia degli articoli cioè PC , Monitor ecc.... Il mio obiettivo è che quando seleziono all'interno della casella combinata (A)una tipologia di articolo ad esempio PC nella seconda casella combinata (B)si apre solo le matricole associate ai PC quindi A000, A001, A002 ecc.
In conclusione una relazione tra le due caselle combinate. Come posso fare?
Grazie.
SSUPERPIPPO
Profilo
| Guru
1.095
messaggi | Data Invio:
gio 22 nov 2007 - 18:40
Con cosa hai realizzato le tue maschere?
Che database usi?
http://blogs.dotnethell.it/alebadalin
salinis
Profilo
| Junior Member
142
messaggi | Data Invio:
gio 22 nov 2007 - 18:49
Giusto.
Access 2003
salinis
Profilo
| Junior Member
142
messaggi | Data Invio:
ven 23 nov 2007 - 12:42
Ho 2 caselle combinate.
1 casella combinata: campo2: descrizione articolo.
2 casella combinata: campo1: matricola.
Nota: Il numero di matricola varia a seconda della descrizione articolo.
Quando seleziono la 1 casella combinata cioè la descrizione articolo, nella seconda casella combinata mi si deve aprire il campo matricola ma filtrato solo con le matricole associate alla descrizione articolo selezionata dalla prima casella combinata.
Praticamente nella seconda casella combinata deve effettuare un filtro sulla base della selezione della prima casella combinata.
SSUPERPIPPO
Profilo
| Guru
1.095
messaggi | Data Invio:
ven 23 nov 2007 - 13:53
>Ho 2 caselle combinate.
>
>1 casella combinata: campo2: descrizione articolo.
>2 casella combinata: campo1: matricola.
>
>Nota: Il numero di matricola varia a seconda della descrizione
>articolo.
>
>Quando seleziono la 1 casella combinata cioè la descrizione articolo,
>nella seconda casella combinata mi si deve aprire il campo matricola
>ma filtrato solo con le matricole associate alla descrizione
>articolo selezionata dalla prima casella combinata.
>Praticamente nella seconda casella combinata deve effettuare
>un filtro sulla base della selezione della prima casella combinata.
Devi agire via codice VBA.
Dovresti intercettare l'evento 'Su modifica' (change) della prima caselle combinata e inserire il codice che modifichi la query di selezione (proprietà recordset) della seconda Combobox e poi esegua un refresh della stessa (metodo requery).
Non è difficile ma devi avere un minimo di conescenze di VBA.
Ciao
Alessandro
http://blogs.dotnethell.it/alebadalin
salinis
Profilo
| Junior Member
142
messaggi | Data Invio:
ven 23 nov 2007 - 14:10
Non essendo pratico di codice VBA non è che saresti così gentile nell' inviarmi un piccolo mdb come esempio?
GRAZIE 1000.
SSUPERPIPPO
Profilo
| Guru
1.095
messaggi | Data Invio:
ven 23 nov 2007 - 14:57
Lo preparo e te lo mando, abbi un pò di pazienza perchè sono un pò incasinato con il lavoro.
Ciao
Ale
http://blogs.dotnethell.it/alebadalin
salinis
Profilo
| Junior Member
142
messaggi | Data Invio:
ven 23 nov 2007 - 16:58
ok grazie in anticipo......
salinis
Profilo
| Junior Member
142
messaggi | Data Invio:
lun 26 nov 2007 - 08:25
Saresti così gentile nell'inviarmi il database come esempio?
Grazie 1000
salinis
Profilo
| Junior Member
142
messaggi | Data Invio:
lun 26 nov 2007 - 14:22
Ale nulla ancora?
Grazie
salinis
Profilo
| Junior Member
142
messaggi | Data Invio:
lun 26 nov 2007 - 21:30
Help Help
Sono riuscito ad associare ad ogni casella combinata una query però la seconda casella non mi consente di selezionare i valori. Mi filtra i valori sulla base della scelta effettuata della prima casella combinata ma non mi consente di selezionare il valore desiderato. Potrebbe esserci un problema di routine.
Esempio: Quando seleziono nella prima casella combinata il primo articolo mi aggiorna nella seconda casella combinata i valori associati all articolo però mi fa selezionare solo il primo dall'elenco.
Come posso fare???
SSUPERPIPPO
Profilo
| Guru
1.095
messaggi | Data Invio:
mar 27 nov 2007 - 04:58
Ciao, scusa se non ti ho risposto prima ma sono un pò di giorni che sono nella cac.. con il lavoro...
Potresti allegare la parte del tuo database che riguarda la problematica? Così vado meglio a capire la tua problematica avendo anche le tabelle del database di riferimento.
Attendo, ciao
Ale
http://blogs.dotnethell.it/alebadalin
salinis
Profilo
| Junior Member
142
messaggi | Data Invio:
mar 27 nov 2007 - 09:18
481_esempio.zip
Ti invio in allegato il database di esempio.
Nella seconda casella combinata non mi fa selezionare i valori o meglio solo B002 posso selezionare e gli altri invece ?
Grazie
salinis
Profilo
| Junior Member
142
messaggi | Data Invio:
mar 27 nov 2007 - 14:59
Novità?
SSUPERPIPPO
Profilo
| Guru
1.095
messaggi | Data Invio:
mar 27 nov 2007 - 20:46
Ora vedo...
http://blogs.dotnethell.it/alebadalin
SSUPERPIPPO
Profilo
| Guru
1.095
messaggi | Data Invio:
mar 27 nov 2007 - 21:21
Scusa se mi permetto ma così a buttata d'occhio mi sembra ci sia un pò di confusione...
ti chiedo un paio di chiarimenti prima di continuare con l'analisi del tuo problema:
Come mai utilizzi una tabella diversa per ogni famiglia di prodotto? Non ti sembra che sia decisamente poco flessibile?
Se tu creassi un'unica tabella, visto che i dati ho visto che sono omogenei, inserendo un campo che identifichi la tipologia di prodotto (campo collegato magari ad una tabella Tipologie), credo che la gestione risulterebbe alquanto semplificata: la prima combo andrebbe semplicemente collegata alla tabella Tipologie e nella seconda combo andrebbe collegata alla tabella Prodotti (complessiva) semplicemente filtrando per il codice Tipologia selezionato nella prima combo.
Cosa ne pensi? C'è magari un motivo particolare per cui hai così strutturato il database?
Attendo tue nuove
Alessandro
http://blogs.dotnethell.it/alebadalin
salinis
Profilo
| Junior Member
142
messaggi | Data Invio:
mer 28 nov 2007 - 09:28
Sarebbe perfetto. La mia esigenza è che in base alla tipologia dell' articolo ci sia un contatore diverso e soprattutto predefinito. Il contatore che viene generato corrisponde alla matricola dell' articolo.
La tua soluzione mi va benissimo e sarebbe una grandissimo risultato se si può applicare questo criterio. La matricola deve essere generata automaticamente ad ogni inserimento e deve mutare in base alla selezione della tipologia dell'articolo.
Mi aiuti?
SSUPERPIPPO
Profilo
| Guru
1.095
messaggi | Data Invio:
mer 28 nov 2007 - 09:52
La soluzione è gestire manualmente l'assegnazione del codice e non delegare al contatore automatico.
Io creerei un campo numerico contenente il codice ID progressivo (sempre generato manualmente) e un campo tipologia (testo di 1 carattere che conterrà la sigla A, B, ecc)
A questo punto quando inserisci un nuovo record non farai altro che eseguire una query di questo tipo: "SELECT MAX(Id) FROM TabellaArticoli WHERE TipoArticolo='A'" per ricavare il codice con valore più alto, aggiungi 1 e ottieni il valore da assegnare al campo ID del nuovo record.
Spero di essere stato sufficientemente chiaro
Se hai bisogno di help sono a disposizione
Ciao
Alessandro
http://blogs.dotnethell.it/alebadalin
salinis
Profilo
| Junior Member
142
messaggi | Data Invio:
mer 28 nov 2007 - 10:01
Mi potresti fare un esempio pratico sul database che ti ho inviato come esempio?
Gentilissimo
salinis
Profilo
| Junior Member
142
messaggi | Data Invio:
mer 28 nov 2007 - 11:40
Ale niente ancora?
Scusami ti ricordi anche del problema delle caselle combinate?
Grazie
salinis
Profilo
| Junior Member
142
messaggi | Data Invio:
mer 28 nov 2007 - 15:47
Ci sono novità per me?
Help Help Help
SSUPERPIPPO
Profilo
| Guru
1.095
messaggi | Data Invio:
mer 28 nov 2007 - 15:57
Sto rivedendo il database e anche la maschera con le combobox...
devi avere un pò di pazienza perchè ci vuole del tempo, sono un pò sommerso dal lavoro, e lo sto preparando nei ritagli di tempo.
A presto, ciao
Alessandro
http://blogs.dotnethell.it/alebadalin
salinis
Profilo
| Junior Member
142
messaggi | Data Invio:
mer 28 nov 2007 - 16:09
OK Grazie...
SSUPERPIPPO
Profilo
| Guru
1.095
messaggi | Data Invio:
ven 30 nov 2007 - 10:13
Caro amico, sto vedendo di sistemare il tuo progetto ma veramente sono in difficoltà...
ci sono talmente tante cose da rivedere che mi sà che sto prima a rifarlo di sana pianta...
Io ti posso preparare velocemente un nuovo database con una tabella Prodotti, una Tipologia prodotti e una maschera di inserimento/barra ricerca per tipologia/matricola con creazione automatica del codice progressivo matricola... ti può andar bene? poi vedi tu come adattare il tutto al tuo progetto.
http://blogs.dotnethell.it/alebadalin
salinis
Profilo
| Junior Member
142
messaggi | Data Invio:
ven 30 nov 2007 - 12:25
OK Perfetto.
Ti ringrazio per la tua disponibilità.
Lo posso adattare tranquillamente al mio progetto. Importante è per me risolvere il problema delle caselle combinate, la generazione delle matricole sulla base della selezione della tipologia articolo.
Ti sollevo un'altra mia esigenza non proritaria come i due punti precedenti. Ho il campo: flag garanzia. Vorrei che sulla base della durata di garanzia che inserisco, il flag o il baffetto si seleziona o si deseleziona in automatico. Magari un mese prima della scadenza mi evidenzia un messaggio che tra un mese il prodotto scade.
Grazie ancora per l'aiuto.
SSUPERPIPPO
Profilo
| Guru
1.095
messaggi | Data Invio:
ven 30 nov 2007 - 14:22
483_esempio.zip
Ciao,
ti allego l'MDB di esempio.
Ho creato un'unica tabella Hardware con i campi TipologiaProdotto e IDMatricola (campi chiave).
Ho Creato le due combo, la prima si collega direttamente alla tabella TipologieProdotti e la seconda è associata ad una query che prende i dati dalla tabella Hardware filtrandoli per la tipologia selezionata, visualizzando per concatenazione di stringhe il campo matricola (Tipologia+IDMatricola).
Selezionando una voce dalla combo Matricole, viene modificata la query della form filtrandola per la selezione effettuata.
Ho infine creato un pulsante Nuovo per aggiungere un nuovo record. Qui via codice determino l'ID massimo per la tipologia di prodotto selezionato e aggiungendo 1 ottengo il primo numero matricola disponibile e lo visualizzo nel relativo campo in modalità inserimento.
Spero ti sia tutto chiaro, in caso contrario sono a disposizione.
Ciao
Alessandro
P.S.: Ho buttato giù la cosa molto velocemete per cui potrei aver fatto qualche cazzata, comunque quello che ti serviva funziona.
http://blogs.dotnethell.it/alebadalin
salinis
Profilo
| Junior Member
142
messaggi | Data Invio:
lun 3 dic 2007 - 07:54
Ho provato sul mdb che mi hai inviato come esempio ma non mi funziona. Quando aggiungo un record nel combo delle matricole non mi evidenzia la matricola. Come mai?
Grazie
SSUPERPIPPO
Profilo
| Guru
1.095
messaggi | Data Invio:
lun 3 dic 2007 - 09:04
Nel mdb che ti ho mandato ho inserito anche un esempio.
Apri la maschera, seleziona la tipologia "Docking Station".
Ora nella casella 'matricole' troverai due numeri di matricola, se selezioni il primo ti verranno visualizzati nella maschera i dati relativi al primo, idem se selezioni il secondo.
Se tu ora inserisci un nuovo record con l'apposito pulsante, vedrai che automaticamente il record generato acquisirà un progressivo che è riferito alla tipologia selezionata.
Una volta inserito il nuovo record, se tu selezionerai di nuovo la casella matricola ti apparirà il nuovo numero di matricola composto dalla sigla identificatrice della tipologia concatenata con il relativo progressivo numerico.
Spero ti sia chiaro, ciao
Alessandro
http://blogs.dotnethell.it/alebadalin
salinis
Profilo
| Junior Member
142
messaggi | Data Invio:
mar 4 dic 2007 - 08:31
OK Perfetto.
Aggiungo i record attraverso una query di accodamento. E' possibile applicare la funzione della generazione delle matricole sulla query di accodamento e non sul comando nuovo?
Grazie per la tua disponibilità
SSUPERPIPPO
Profilo
| Guru
1.095
messaggi | Data Invio:
mar 4 dic 2007 - 08:46
>OK Perfetto.
>
>Aggiungo i record attraverso una query di accodamento. E' possibile
>applicare la funzione della generazione delle matricole sulla
>query di accodamento e non sul comando nuovo?
>
>
>Grazie per la tua disponibilità
Perchà no! Usi l'istruzione che ho scritto io per determinare il primo numero disponibile e lo passi alla query di accodamento come parametro.
Ciao
Alessandro
http://blogs.dotnethell.it/alebadalin
salinis
Profilo
| Junior Member
142
messaggi | Data Invio:
gio 6 dic 2007 - 09:46
Ho difficoltà a riportare la funzione nel cmd inserisci. Praticamente nella maschera ho integrato un comando "inserisci" che mi lancia una query di accodamento.
Potresti applicare questa funzione in sostituzione del comando nuovo per la generazione delle matricole nell' esempio che gentilmente mi hai inviato precedentemente?
grazie
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !