DB menu eventi ristorante

di il
16 risposte

DB menu eventi ristorante

Salve, sto creando un DB per gestire le prenotazioni degli eventi per il mio ristorante  ho in pochino di dimestichezza con access, ma non sono un esperto.

ho creato un Db per le prenotazioni delgi eventi con una maschera d'inserimento dei dati cliente nome, data, telefono ecc

e una sottomaschera che attinge i dati dalla tabella menu  tabella con piu campi: id piatto. nome piatto descrizione e prezzo

nella sottomaschera seleziono con combo box  che mi prende i dati da una query  la portata prescelta e nella routine dopo aggiornamento ho inserito questa routine

Private Sub portate_AfterUpdate()
prezzo = portate.Column(1)

descrizione = portate.Column(2)

End Sub

ma mi aggiorna solo il campo prezzo e non la deschrizione del piatto

potrei sapere se la routine è giusta, o se ho commesso qualche errore o omissione di codice

grazie per la collaborazione

Roberto

16 Risposte

  • Re: DB menu eventi ristorante

    Prezzo e descrizione cosa sono? Due textbox? Cosa hai associato a portate.Column(1) e portate.Column(2)?

  • Re: DB menu eventi ristorante

    La tabella menu ha 4 campi 

    id portata

    portata (nome del piatto) combobox 

    prezzo (costo del piatto)

    descrizione (descrizione del piatto)

    vorrei quando seleziono una voce nella CBox portate che si aggiornassero anche prezzo e descrizione, invece mi aggiorna solo il prezzo e il campo descrizione rimane vuoto

  • Re: DB menu eventi ristorante

    1. Descrivi tutti i campi della query
    2. Descrivi le proprietà della casella combinata:
    Origine riga
    Numero colonne
    Larghezza colonne
    Larghezza elenco
    3. Dichiara i nomi propri di maschera e sottomaschera
    4. A me non sono chiare le tabelle/relazioni che hai: sono 2 o 3? Quali?

  • Re: DB menu eventi ristorante

    16/06/2023 - Lone Wolf ha scritto:


    nella sottomaschera seleziono con combo box  che mi prende i dati da una query  la portata prescelta e nella routine dopo aggiornamento ho inserito questa routine

    Private Sub portate_AfterUpdate()
    prezzo = portate.Column(1)

    descrizione = portate.Column(2)

    End Sub

    ma mi aggiorna solo il campo prezzo e non la deschrizione del piatto

    potrei sapere se la routine è giusta, o se ho commesso qualche errore o omissione di codice

    Ciao,

    messa così occorre avere una sfera di cristallo, ma di quelle che funzionano bene bene bene ;)
    Se non esponi l'origine dei dati della combobox sarà veramente impossibile ricevere un qualsiasi aiuto e/o risposta. Diciamo che manca la parte fondamentale.


    Invece se l'intento è quello di analizzare come hai scritto il codice, beh qui ci sarebbe molto da dire.

    Per esempio le variabili prezzo, descrizione e portate cosa sono ? 
    hanno un origine dati ? 
    sono delle textbox o altro?
    Solo nel denominare le variabili bisogna adottare delle tecniche che permettono di rendere leggibile il codice Vba, sia quando lo si scrive che quando a distanza di tempo si torna a rileggerlo.
    Poi per carità, per funzionare funzionerà lo stesso, ma non è il modo corretto di scrivere un codice in un qualsiasi linguaggio.
    Esempio:

    Private Sub cmbPortate_AfterUpdate()
    
    Me.txtPrezzo = Me.cmbPortate.Column(1)
    Me.txtDescrizione = Me.cmbPortate.Column(2)
    
    End Sub

    Già in questo modo chiunque riuscirà a capire cosa c'è scritto in questa piccola routine.

    • Me. 
      • indica che i controlli appartengono ad un oggetto e in questo caso ad una Form
    • txt + NomeControllo
      • un suffisso come txt già ci indica che tale variabile è una TextBox che si trova in oggetto e in questo caso nella Form 
    • cmb + NomeControllo
      • un suffisso come cmb già ci indica che abbiamo a che fare con un controllo ComboBox che si trova, in questo caso, in un oggetto Form 

    Concludendo, se la domanda è “ho scritto bene la routine?”, la risposta è ovviamente no per i motivi appena adesso sopra riportati.

    Poi ognuno è libero di fare quello che meglio crede, per carità… questo vuol essere solo un piccolo esempio e consiglio. ;))

  • Re: DB menu eventi ristorante

    17/06/2023 - Lone Wolf ha scritto:


    La tabella menu ha 4 campi 

    id portata

    portata (nome del piatto) combobox 

    prezzo (costo del piatto)

    descrizione (descrizione del piatto)

    vorrei quando seleziono una voce nella CBox portate che si aggiornassero anche prezzo e descrizione, invece mi aggiorna solo il prezzo e il campo descrizione rimane vuoto

    Ma manca sempre un pezzo…  ;))
    sapere cosa c'è nella tabella e non sapere cosa c'è nella query della combox a cosa serve ?  
    Possibile che è così difficile essere precisi ed esaustivi ?

    Questo è un forum, non è un gioco a quiz ;)) 

    Hai dichiarato nel tuo quesito di avere :

    16/06/2023 - Lone Wolf ha scritto:


    nella sottomaschera seleziono con combo box  che mi prende i dati da una query

    'ndo stà la Query ?  ;)) 

    certe volte siete veramente fenomenali. :))


    Quindi secondo te uno dovrebbe risponderti, usando la solita sfera di cristallo, con una serie infinita di ipotesi e congetture e forse pescando nel mazzo una di queste, ma sottolineo forse, ci sarà la risposta giusta. Bah… 

    ;))

  • Re: DB menu eventi ristorante

    Lone Wolf: mostra una immagine della Finestra Relazioni.

  • Re: DB menu eventi ristorante

    16/06/2023 - Lone Wolf ha scritto:


    Private Sub portate_AfterUpdate()
    prezzo = portate.Column(1)

    descrizione = portate.Column(2)

    End Sub

    Io sinceramente mi sono domandato, come fanno a funzionare codici di questo genere.

    Molto probabilmente ho una versione di access permalosa, perchè se scrivo una cosa del genere mi prende a schiaffi.

    per come è scritto il codice, i valori della colonna 1 e della colonna 2 vengono registrate in due variabili (tra parentesi non dichiarate), e non vengono visualizzate nei controlli che credi di riempire con i relativi dati (prezzo e descrizione).

    Se le variabili, non vengono poi fatte visualizzare in un controllo, otterrai sempre i controlli vuoti.

    Quindi la vera domanda, non è perchè non visualizzi la descrizione, ma come fai ad avere il prezzo visualizzato.

    Praticamente ci sono 2 errori esattamente opposti tra di loro.

  • Re: DB menu eventi ristorante

    Apparte il codice giustamente revisionato da Franco, pare chiaro che il nocciolo del problema non risiede nella tabella, ma in questa misteriosa query associata alla combobox. Se non la mostri credo che nessuno in questo universo ti possa consigliate qualcosa.

  • Re: DB menu eventi ristorante

    17/06/2023 - fratac ha scritto:


    16/06/2023 - Lone Wolf ha scritto:


    Private Sub portate_AfterUpdate()
    prezzo = portate.Column(1)

    descrizione = portate.Column(2)

    End Sub

    Io sinceramente mi sono domandato, come fanno a funzionare codici di questo genere.

    Molto probabilmente ho una versione di access permalosa, perchè se scrivo una cosa del genere mi prende a schiaffi.

    per come è scritto il codice, i valori della colonna 1 e della colonna 2 vengono registrate in due variabili (tra parentesi non dichiarate), e non vengono visualizzate nei controlli che credi di riempire con i relativi dati (prezzo e descrizione).

    Se le variabili, non vengono poi fatte visualizzare in un controllo, otterrai sempre i controlli vuoti.

    Quindi la vera domanda, non è perchè non visualizzi la descrizione, ma come fai ad avere il prezzo visualizzato.

    Praticamente ci sono 2 errori esattamente opposti tra di loro.

    vabbè daiiiii…. è solo a metà dell'opera… (almeno il prezzo compare)… mo' gli manca l'altra metà ;)

    Scherzo ovviamente. 
    Bisogna buttarla sul ridere altrimenti diventa angosciante sia per lui che per noi. ;)

  • Re: DB menu eventi ristorante

    17/06/2023 - Antony73 ha scritto:


    Apparte il codice giustamente revisionato da Franco, pare chiaro che il nocciolo del problema non risiede nella tabella, ma in questa misteriosa query associata alla combobox. Se non la mostri credo che nessuno in questo universo ti possa consigliate qualcosa.

    Premetto che è da poco che sono in questo Forum … ma ultimamente vedo che i più si rifiutano di fare vedere delle parti del progetto atte a trovare il problema e quindi la soluzione.

    Ma capita sempre così ? … come mai ?


    A proposito di problemi, ne approfitto se mi potete dare una mano.
    Avrei un grossissimo problema con una Sub nella quale eseguo un codice per ricavare dei valori che provengono da una tabella che con una query mi filtra secondo delle condizioni scelte da una casella di riepilogo le informazioni che devo fa apparire su una SubForm presente in una Form che si chiama StartOperation

    Per semplicità vi riporto il codice che ho scritto nella routine 

    Private Sub Start()
    start = Now()
    operation = tipooperazioni
    End Sub

    Problema: non riesco a capire come mai mi fa vedere correttamente il valore di start … mentre operation è sempre vuoto... Premetto che nella query che prende i dati dalla tabella e che con la listbox vado a filtrare, le informazioni ci sono !  come posso risolvere , Grazie in anticipo per la vostra attenzione.
    Mi aiutate per favore ?

  • Re: DB menu eventi ristorante

    17/06/2023 - By65Franco ha scritto:


    Mi aiutate per favore ?

    certo, la soluzione è semplice.
    Ti riporto una ricerca su google che spiega esattamente la risoluzione del problema.

    Link ricerca di google.

  • Re: DB menu eventi ristorante

    17/06/2023 - fratac ha scritto:


    17/06/2023 - By65Franco ha scritto:


    Mi aiutate per favore ?

    certo, la soluzione è semplice.
    Ti riporto una ricerca su google che spiega esattamente la risoluzione del problema.

    Link ricerca di google.

    ohi ohi… non so proprio come ringraziarti … favoloso !!!! sei un grande, sapevo che potevo contare su di voi.
    Grazie mille di cuore.


    Vabbè dai… un esempio di come non porre dei quesiti… 
    ma sicuramente ne vedremo tante altre e sprecheremo tempo e post a chiedere informazioni per poter dare una risposta sensata.
    E' un vero peccato!  (pensare che basterebbe veramente poco)

  • Re: DB menu eventi ristorante

    17/06/2023 - By65Franco ha scritto:


    Vabbè dai… un esempio di come non porre dei quesiti… 

    invece il mio è l'esempio di come bisognerebbe rispondere da subito, sapendo che dopo 4 giorni, 50 risposte, la colpa è di chi cerca di aiutare, oppure si riceve la risposta. Grazie ho risolto cambiando Nome= testo con Nome= (testo).

    E' una cosa che ho notato in questo forum.

    E di forum ne ho visitati tanti e soprattutto ne ho amministrati tanti, ai tempi d'oro. Forum anche con centinaia di migliaia di utenti, quando esplosero i giochi web browser.

    Se dovessi ragionare con la logica di 15 anni fa, post del genere, ma sopratutto per le dinamiche dello svolgimento, li considererei post di troll.

  • Re: DB menu eventi ristorante

    17/06/2023 - fratac ha scritto:


    Se dovessi ragionare con la logica di 15 anni fa, post del genere, ma sopratutto per le dinamiche dello svolgimento, li considererei post di troll.

    ;))

Devi accedere o registrarti per scrivere nel forum
16 risposte