26/10/2023 - @Alex ha scritto:
Faccio un commento tecnico in quanto in realtà non ho ben compreso l'esigenza reale…!
Scrivi nella tua spiegazione di aver creato una Funzione [SelezionaFornitore () As Integer], fai attenzione che se il campo associato alla BoundColumn, quella che tu chiami con Column(0) è un Counter, non va bene Integer, ma devi usare LONG.
Si mi riferivo a quello (linguaggio tecnico non è proprio il mio forte).
E grazie per la correzione, sempre bene accette.
Tornando al problema (che mi rendo conto aver spiegato in modo poco chiaro…)
@Mailman:
Il problema non è gestire un nuovo fornitore, quello funziona (come detto, devo farlo in una maschera apposita perchè devo inserire tutta una serie di dati relativi al fornitore); forse ha fatto confusione il fatto che abbia riportato la presenza di quel pulsante con quello scopo.
Il problema in sè è legato solo alla combo.
Attualmente, quando impianto un ordine, in quella maschera scelgo dalla combobox il fornitore (nella column(0), tramite SELECT, viene elencato l'ID univoco - contatore - della tabella tblFornitori).
Scelto il fornitore, su DopoAggiornamento della combo eseguo un codice (quello che ho chiamato biblicamente “genesi dell'ordine”) che mi fa un paio di domande standard (a cui rispondo Si/No), e crea nella tabella tblOrdini un nuovo record con tutte le informazioni appena richieste, e chiude la maschera dei fornitori. Successivamente in una forms apposita lavoro l'ordine etc etc.
Non era mai successo, ma oggi devo cambiare il solo fornitore (e non tutto l'ordine), quindi ho la necessità di fare l'UPDATE del record nella tblOrdini e sostituire all'ID del vecchio fornitore quello del nuovo.
Va da sè che se richiamo la form di selezione dei Fornitori e seleziono quello nuovo, eseguirà nuovamente il codice su DopoAggiornamento e impianterà un nuovo ordine (e non è quello che voglio ottenere).
Quindi ho pensato di prendere quella parte di codice e inserirla in un modulo in una Funzione dedicata (NuovoOrdine).
Data la nuova esigenza, vorrei creare uan Funzione dedicata CambiaFornitore, che no farà altro che sostituire l'ID delnuovo fornitore a quello vecchio nella tblOrdini.
In entrambe le funzioni, invece di ripetere il codice, richiamo quella funzione SelezionaFornitore() As Long (dopo la correzione di @Alex) faccio aprire la form di selezione dei fornitori.
Perciò, la form fornitori così modificata si limiterà a farmi scegliere il fornitore, e su DopoAggiornamento vorrei far passare il valore dell'ID alla funzione dalla quale è stato richiamato, che poi sarà utilizzata dalle 2 nuove funzioni create (o da qualunque altra semmai ce ne fosse necessità in futuro).
Il problema che si presenta è quello descritto nella ultime 3 righe del primo post.
Andrea